多租户物联网平台服务器框架是根据多年经验以及实际客户需求而研发。 主要技术基于高性能、高并发的IOCP Sokect基础上研发而成。 目前使用的C#语言开发,运行于Windows平台,后期会推出跨平台支持版本,Java版本等等。 集成于Web API、Web服务器、MQTT服务器、Socket TCP服务器、OPC UA服务器、Modbus DTU服务器、Modbus TCP服务器于一体的服务器框架。 无需IIS支持,仅需简单几个步骤即可完成部署。 利用WEB API功能灵活创建租户子平台。 每个租户平台拥有独立的WEB API端口权限功能,独立的MQTT服务器,独立的Web服务器、独立的MQTT服务器、独立的Socket TCP服务器、独立的OPC UA服务器、独立的Modbus DTU服务器、独立的Modbus TCP服务器。 租户可通过独立的FTP通道私有化自己的前端应用。 系统总管理平台可灵活控制租户到期时间,一键激活功能。 同时还可以灵活扩展设备协议以实现增值服务。 配合自主研发的工业数据采集模块,并发量能达到1万设备,硬件接入量能达到20万个点。

在物联网领域摸爬滚打多年,见过无数项目落地,也收集了大量实际客户需求,终于打磨出了这款多租户物联网平台服务器框架。它就像一个精心雕琢的瑞士军刀,功能强大且全面。

底层技术:高性能的基石

这个框架主要构建在高性能、高并发的IOCP Socket基础之上。IOCP,也就是I/O完成端口,是Windows下实现高性能异步I/O的关键技术。以C#代码为例,简单示意下它的使用思路:

// 创建一个Socket
Socket listenSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
// 绑定IP和端口
IPEndPoint localEndPoint = new IPEndPoint(IPAddress.Any, 12345);
listenSocket.Bind(localEndPoint);
listenSocket.Listen(100);

// 创建一个IOCP完成端口
SafeHandle iocpHandle = CreateIoCompletionPort(listenSocket.Handle, IntPtr.Zero, 0, 0);

在这段代码里,首先创建了一个Socket并绑定到指定端口进行监听。然后通过CreateIoCompletionPort函数将Socket关联到一个IOCP完成端口。这样,当有I/O操作完成时,系统就能高效地通知应用程序,极大提升了处理并发连接的能力。

开发语言与平台

目前框架采用C#语言开发,运行在Windows平台。C#语言简洁明了,开发效率高,并且有丰富的类库支持,对于构建这样复杂的服务器框架非常合适。不过,考虑到不同用户的需求,后续还会推出跨平台支持版本,像Java版本。Java的跨平台性和生态系统能进一步扩大框架的适用范围。

一体化集成架构

这是一个集成度超高的框架,将Web API、Web服务器、MQTT服务器、Socket TCP服务器、OPC UA服务器、Modbus DTU服务器、Modbus TCP服务器融为一体。比如Web API部分,借助ASP.NET Core可以轻松创建接口。

[ApiController]
[Route("[controller]")]
public class TenantController : ControllerBase
{
    [HttpGet]
    public IActionResult Get()
    {
        return Ok("This is a sample response for tenant API");
    }
}

上述代码定义了一个简单的Web API控制器,用于返回租户相关信息。这种设计使得整个平台功能紧密结合,方便管理和维护。

部署:简单几步轻松搞定

无需依赖IIS,只要简单几步就能完成部署。这对于一些不想被复杂环境配置束缚的开发者和企业来说,简直是福音。你不用再花费大量时间去配置IIS的各种参数,大大缩短了项目上线周期。

多租户特性:独立与灵活

利用WEB API功能,可以灵活创建租户子平台。每个租户平台都像是一个独立王国,拥有自己独立的WEB API端口权限功能,独立的MQTT服务器,独立的Web服务器等等。例如,在配置MQTT服务器时,每个租户都可以有自己的配置。

// 示例代码展示MQTT服务器配置
var mqttServerOptions = new MqttServerOptionsBuilder()
  .WithConnectionBacklog(100)
  .WithDefaultEndpoint()
  .WithDefaultEndpointPort(1883)
  .Build();

租户还能通过独立的FTP通道私有化自己的前端应用,实现数据和应用的自主掌控。系统总管理平台更是厉害,能灵活控制租户到期时间,一键激活功能。这就像给管理员一把万能钥匙,能高效管理众多租户。

功能扩展与数据处理能力

框架还支持灵活扩展设备协议以实现增值服务。配合自主研发的工业数据采集模块,它的并发量能达到1万设备,硬件接入量能达到20万个点。这强大的数据处理能力,能满足绝大多数工业场景下的物联网数据采集和处理需求。

多租户物联网平台服务器框架是根据多年经验以及实际客户需求而研发。 主要技术基于高性能、高并发的IOCP Sokect基础上研发而成。 目前使用的C#语言开发,运行于Windows平台,后期会推出跨平台支持版本,Java版本等等。 集成于Web API、Web服务器、MQTT服务器、Socket TCP服务器、OPC UA服务器、Modbus DTU服务器、Modbus TCP服务器于一体的服务器框架。 无需IIS支持,仅需简单几个步骤即可完成部署。 利用WEB API功能灵活创建租户子平台。 每个租户平台拥有独立的WEB API端口权限功能,独立的MQTT服务器,独立的Web服务器、独立的MQTT服务器、独立的Socket TCP服务器、独立的OPC UA服务器、独立的Modbus DTU服务器、独立的Modbus TCP服务器。 租户可通过独立的FTP通道私有化自己的前端应用。 系统总管理平台可灵活控制租户到期时间,一键激活功能。 同时还可以灵活扩展设备协议以实现增值服务。 配合自主研发的工业数据采集模块,并发量能达到1万设备,硬件接入量能达到20万个点。

多租户物联网平台服务器框架凭借其高性能的底层技术、一体化架构、便捷部署、灵活多租户特性以及强大扩展能力,在物联网领域具有广阔的应用前景,期待它能在更多项目中大放异彩。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐