《连载 | 物联网框架ServerSuperIO教程》- 8.单例通讯模式开发及注意事项

简介: 1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 《连载 | 物联网框架ServerSuperIO教程》1.4种通讯模式机制。 《连载 | 物联网框架ServerSuperIO教程》2.服务实例的配置参数说明 《连载 | 物联网框架ServerSuperIO教程》- 3.设备驱动介绍 《连载 | 物联网框架ServerSuperIO教程》-4.如开发一套设备驱动,同时支持串口和网络通讯。

1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍

《连载 | 物联网框架ServerSuperIO教程》1.4种通讯模式机制。

《连载 | 物联网框架ServerSuperIO教程》2.服务实例的配置参数说明

《连载 | 物联网框架ServerSuperIO教程》- 3.设备驱动介绍

《连载 | 物联网框架ServerSuperIO教程》-4.如开发一套设备驱动,同时支持串口和网络通讯。

《连载 | 物联网框架ServerSuperIO教程》- 5.轮询通讯模式开发及注意事项。

《连载 | 物联网框架ServerSuperIO教程》- 6.并发通讯模式开发及注意事项

《连载 | 物联网框架ServerSuperIO教程》- 7.自控通讯模式开发及注意事项

 


 

目       录

8.单例通讯模式开发及注意事项... 2

8.1           概述... 2

8.2           通讯机制说明... 2

8.3           设备驱动开发注意事项... 2

8.4           宿主程序服务实例配置注意事项... 3

8.5           单例模式运行效果... 4

8.单例通讯模式开发及注意事项

8.1    概述

    单例通讯模式只适用于网络通讯,并且只能增加一个“设备驱动”,这里“设备驱动”是逻辑概念,代表了所有设备或传感器,也就是说所有接到的数据全部分发给这个“设备驱动”。

8.2    通讯机制说明

    只有网络通讯时可以使用这种控制模式。在一个服务实例内只能有一个设备驱动,相当于一个设备驱动对应着N多个硬件设备终端。更适合通讯的数据协议有固定的标准,以命令关键字处理不同的数据。适用于高并发的硬件终端设备主动上传数据,服务器端根据数据信息进行处理和返回相应的数据。

   通讯结构如下图:

 

 

8.3    设备驱动开发注意事项

     单例模式的设备驱动开发更简单,如果业务不复杂,那么只涉及到初始化参数、实时数据、协议,以及数据的处理逻辑,更高级的应用会涉及到协议数据过滤(IReceiveFilter接口)、数据转发(IService接口)、数据视图展示(IGraphicsShow接口)等,将在后续的文章中逐一进行介绍。

8.4    宿主程序服务实例配置注意事项

  sta

static void Main(string[] args)
{
            //55 AA 00 61 43 7A 00 00 43 B4 15 0D
            DeviceSingletonDriver dev1 = new DeviceSingletonDriver();
            dev1.DeviceParameter.DeviceName = "网络设备";
            dev1.DeviceParameter.DeviceAddr = 0;
            dev1.DeviceParameter.DeviceID = "0";
            dev1.DeviceDynamic.DeviceID = "0";
            dev1.DeviceParameter.DeviceCode = "0";
            dev1.DeviceParameter.NET.RemoteIP = "127.0.0.1";
            dev1.DeviceParameter.NET.RemotePort = 9600;
            dev1.CommunicateType = CommunicateType.NET;
            dev1.Initialize("0");

            IServer server = new ServerManager().CreateServer(new ServerConfig()
            {
                ServerName = "单例服务",
                NetReceiveBufferSize = 1024,
                ControlMode = ControlMode.Singleton,
                MaxConnects = 4000
            });

            server.AddDeviceCompleted += server_AddDeviceCompleted;
            server.DeleteDeviceCompleted += server_DeleteDeviceCompleted;
            server.SocketConnected+=server_SocketConnected;
            server.SocketClosed+=server_SocketClosed;
            server.Start();

            server.AddDevice(dev1);

            while ("exit" == Console.ReadLine())
            {
                server.Stop();
            }
}

     ControlMode = ControlMode.Singleton设置成单位模式就可以了。

8.5    单例模式运行效果

     在本机跑过10000万个并发连接,用的jmeter,jmeter占用了1.4G左右的内存、90%多的CPU,我也不知道为什么这么耗资源,笔记本勉强还能工作。

    现在模拟的是15个客户端,100毫秒发送一次数据,效果如下:

  1. 图片

  1. 视频


1.[连载]《C#通讯(串口和网络)框架的设计与实现》

2.[开源]C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍

2.应用SuperIO(SIO)和开源跨平台物联网框架ServerSuperIO(SSIO)构建系统的整体方案

3.C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)

5.ServerSuperIO开源地址:https://github.com/wxzz/ServerSuperIO

物联网&集成技术(.NET) QQ群54256083 

 

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
4月前
|
物联网
STC51单片机-实验开发装置仿真-物联网应用系统设计
STC51单片机-实验开发装置仿真-物联网应用系统设计
53 0
|
4月前
|
存储 物联网 大数据
助力工业物联网,工业大数据之脚本开发【五】
助力工业物联网,工业大数据之脚本开发【五】
40 0
|
7月前
|
消息中间件 传感器 监控
IoT企业物联网平台,数据服务开发实战
IoT企业物联网平台开发实战
317 0
|
23天前
|
JSON 缓存 物联网
推荐一款go语言的开源物联网框架-opengw
推荐一款go语言的开源物联网框架-opengw
33 4
|
3月前
|
物联网 定位技术
【技术探讨】一种多节点5Km(1.2M bps速率)实时Sub-G无线通信的物联网通讯解决方案
针对在高速公路上货车行驶过程中收集5公里范围内的GPS定位数据,上报云服务器端,最终实时显示每一辆货车的运行轨迹,用户的项目需求如下:200辆货车(无线从站节点),要求很高的实时性,每秒发5包,每个GPS定位数据报文30个字节,这样200辆车同时上报每秒需要发送30K的字节(200 x 5 x 3 0 =30K字节),30K字节 x 8bit=240 k bps速率。
|
3月前
|
存储 安全 数据管理
构建智慧家庭的未来:物联网平台与智能家居系统的开发
在数字化时代,物联网平台和智能家居系统的开发日益受到关注。本文将探讨物联网平台和智能家居系统的定义、优势以及开发过程中的挑战与解决方案。通过对智能家居系统的构建和物联网平台的应用,我们可以实现更加智能、高效和安全的生活环境。
|
3月前
|
传感器 人工智能 监控
物联网+AI智慧工地云平台源码(SaaS模式)
在工地上安装扬尘噪声监测仪、车辆冲洗监测等设备,通过多系统信息融合应用,积极响应国家节能减排号召,实时、远程、自动监控工地现场的温度、湿度、pm2.5、pm10、噪音等情况,一旦数据超标,平台会马上发出预警,实现绿色施工。
56 1
|
5月前
|
存储 监控 物联网
物联网加车联网平台云服务通讯模式
物联网加车联网平台云服务通讯模式
157 0
|
5月前
|
边缘计算 供应链 安全
|
7月前
|
传感器 安全 物联网
一个非常优秀的跨平台物联网开发常用的网络请求库libcurl
一个非常优秀的跨平台物联网开发常用的网络请求库libcurl
178 1

相关产品

  • 物联网平台