netCore物联网项目,分布式项目所需组件

十年河东,十年河西,莫欺少年穷

学无止境,精益求精

部署环境:2台windowsServe服务器,2台linux服务器,阿里云CLB负载均衡服务器(2个),阿里云RabbitMQ,阿里云Ots表格存储(用于存物联网设备上报数据),Sqlserver服务器(存放业务主数据),Postgresql服务器(短期存放非业务主数据),阿里云Redis实例,对象存储OSS(文件存储),OCR图片文字识别

涉及到的项目:PC端后台管理系统,客户端/商家端小程序,若干windows服务

开发语言:C#

开发框架:NetCore3.1 或 Net5以上

1、CLB负载均衡

 用于负载Https的443端口请求及Mqtt的1883端口请求

 和

 配置负载均衡的过程再此不做说明,总之有了负载均衡的加持,就拥有了横向扩展的能力

2、windowServer服务器的作用

用于部署NetCore项目,部署微信小程序接口项目,部署windows服务,部署...

两台服务器,我们姑且称之为A 和 B,其中A为主服务器,B为从服务器,AB两台服务器均安装sqlserver2014,并通过配置实现主从复制。关于主从复制,可参考:WindowsServer--SQL Server搭建主从同步实现读写分离 - 事务性分发

B服务器安装单机版PGsql数据库,用于存储一些非核心业务数据,因为这些业务数据量相对而言增长比较快,但即使丢失了,对主业务也没太大影响,因此...

3、两台linux服务器

linux服务器主要用于安装eqmx,实现MQTT消息发布订阅,之所以用两台,也是配合负载均衡1883端口用的

4、RabbitMQ

用于接收MQTT订阅者的消息,我们接收的MQTT消息,不做处理,直接扔给RabbitMQ,由RabbitMQ进行发布,RabbitMQ的订阅者订阅消息,并处理业务逻辑。

 

5、阿里云OTS表格存储

由于设备上报数据量大,且并发上传性高,因此用OTS用于存储设备上报数据,OTS具有按存储量收费,高性能查询等特点

 

 

6、Redis

REdis作为缓存中间件,自作用不言自明

 7、OSS文件存储,分布式必备的文件服务器

 
最后还有图片文字识别 OCR 

 

 

 以上为鄙人的分布式架构所需组件,本篇并非为阿里云打广告,而且选择了阿里的产品

 

posted @ 2024-11-14 18:01  天才卧龙  阅读(2)  评论(0编辑  收藏  举报