IoTSharp 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
IoTSharp 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
IoTSharp 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
开发语言 C#
操作系统 跨平台
软件类型 开源软件
所属分类 其他开源物联网
开源组织
地区 国产
投 递 者 麦壳饼
适用人群 未知
收录时间 2019-05-20

软件简介

IOTSharp LOGO

IoTSharp是一个用于数据收集通过规则引擎流转数据最后通过数据可视化管理数据结果,以及租户结构的资产管理。可用于实现自主可控的、自有机房、无需支付高额租赁费用的自有物联网平台, 支持分布式, 这意味着你可以通过多台服务器共同处理数据,遥测数据进行分开存储,单表方式、 分表、时序数据库等。 主要功能如下:

  1. 支持基于MQTT、CoAP、HTTP协议的数据采集协议
  2. 支持X509加密验证和用户名密码 以及批量token认证
  3. 提供STM32 基于 rt-thread 的采集sdk
  4. 提供树莓派中基于C#的采集sdk 
  5. 提供常规其他linux中采集sdk
  6. 支持数字孪生概念, 因此数据区分为属性和遥测数据, 遥测数据存储在时序数据中
  7. 通过EFCore.Sharding支持了分表存储, 默认是按月存储,根据数据量, 你可以修改为按日, 按时 。
  8. 通过Maikebing.Data.Taos 我们支持了涛思数据的时序数据库 TDengine , Maikebing.Data.Taos 是目前.Net 生态中唯一最完整的TDengine 支持组件。
  9. 内置了 ZeroMQ 服务, 用于支持基于ZeroMQ的分布式消息处理。
  10. 通过CAP实现了EventBus 消息总线, 通过CAP.Extensions 支持了ZeroMQ的消息总线支持, 可以做到纯粹.Net 生态。
  11. 通过CAP实现了 消息数据 能在 MongoDB LiteDB PostgreSql中存储。
  12. 通过CAP实现了消息可以通过RabbitMQ Kafka ZeroMQ 进行生产和消费。 当多台服务器时, 一台可以作为主服务器, 其他可以作为辅助服务器用以处理所有采集数据。

在此新版本发布之时 , 我们在生产环境已经使用,本月数据已经达到三千多万,两千台设备, 五万多个检测项。

如何安装 ?

 mkdir iotsharp
cd iotsharp 
wget https://raw.githubusercontent.com/IoTSharp/IoTSharp/master/docker-compose.yml
docker-compose up -d  

演示版本:

http://139.9.232.10:2927

我们的docker镜像

  • docker pull iotsharp/iotsharp

如何安装为Linux服务 ?

  • mkdir /var/lib/iotsharp/
  • cp ./* /var/lib/iotsharp/
  • chmod 777 /var/lib/iotsharp/IoTSharp
  • cp iotsharp.service /etc/systemd/system/iotsharp.service
  • sudo systemctl enable /etc/systemd/system/iotsharp.service
  • sudo systemctl start iotsharp.service
  • sudo journalctl -fu iotsharp.service

关联项目

IoTSharp.SDKs

IoTSharp.SDKs 包含了 IoTSharp.Sdk.MQTT IoTSharp.Sdk.Http 用于采集端或者边缘部分进行数据采集通过sdk发送给IoTSharp。 https://github.com/IoTSharp/IoTSharp.SDKs

IoTSharp-C-Client-Sdk

IoTSharp-C-client-Sdk  是一个mqtt客户端, 针对iotsharp封装了协议 

https://github.com/IoTSharp/IoTSharp-C-Client-Sdk

paho.mqtt.c's demo

 也是一个mqtt的协议实现,演示了如何使用 paho.mqtt.c  对接IoTSharp https://github.com/IoTSharp/IoTSharp.Edge.paho.mqtt.c

IoTSharp.Edge.nanoFramework

IoTSharp.Edge.nanoFramework  是一个nanoFramework 下实现的mqtt客户端, 意味着你可以用C#在STM32上对接IoTSharp 

https://github.com/IoTSharp/IoTSharp.Edge.nanoFramework

 更多信息请阅读 

https://www.cnblogs.com/MysticBoy/p/13159648.html 

https://www.nanoframework.net/

IoTSharp.Edge.RT-Thread

IoTSharp.Edge.RT-Thread (STM32L4 + Wi-Fi, sensor, lcd, audio etc) 是一个在RT-Thread 上进行对接的演示, 如果您项目中采集设备使用了RTT, 这个演示将是个好的开头。 

https://github.com/IoTSharp/IoTSharp.Edge.RT-Thread

   
20190615010003.jpg 20190615010115.jpg

IoTSharp依赖生态

IoTSharp的依赖生态是为了实现IoTSharp而改进或者创建的项目。 这些项目是组成IoTSharp的关键部分。 与此同时, 针对其他项目也有一定需求。

  • MaiKeBing.CAP.ZeroMQ MaiKeBing.CAP.ZeroMQ

    ZeroMQ(也称为 ØMQ,0MQ 或 zmq)是一个可嵌入的网络通讯库(对 Socket 进行了封装)。 它提供了携带跨越多种传输协议(如:进程内,进程间,TCP 和多播)的原子消息的 sockets 。 有了ZeroMQ,我们可以通过发布-订阅、任务分发、和请求-回复等模式来建立 N-N 的 socket 连接。 ZeroMQ 的异步 I / O 模型为我们提供可扩展的基于异步消息处理任务的多核应用程序。当前组件使用了NetMQ 为CAP提供了 发布-订阅, 推送-拉取两种消息模式。 示例请参见Sample.ZeroMQ.InMemory, 当测试 推送-拉取 消息模式时 , 可以启动 Sample.ConsoleApp 可以测试负载均衡。

  • MaiKeBing.CAP.LiteDB MaiKeBing.CAP.LiteDB

    LiteDB是一个小型的.NET平台开源的NoSQL类型的轻量级文件数据库。特点是小和快,dll文件只有200K大小,而且支持LINQ和命令行操作,数据库是一个单一文件,类似Sqlite。为CAP存储了本地文件的NoSQL存储方式, 示例请参见 Sample.LiteDB.InMemory

  • MaiKeBing.HostedService.ZeroMQ MaiKeBing.HostedService.ZeroMQ

    将ZeroMQ作为HostedService 运行, 通过配置可以实现Pub-Sub、Push-Pull 两种分发模式

  • IoTSharp.X509Extensions IoTSharp.X509Extensions

    是一个自签名证书组件, 用于支持IoTSharp的X509加密部分

    https://github.com/IoTSharp/IoTSharp.X509Extensions

  • MQTTnet.AspNetCoreEx MQTTnet.AspNetCoreEx

 是一个用于支持mqttnet 认证的独立组件! https://github.com/maikebing/MQTTnet.AspNetCoreEx

  • Silkier Silkier

    Silkier 是一个常用函数集合的组件

  • Silkier.EFCore Silkier.EFCore

    Silkier.EFCore用来支持一些sql语句的执行, 以及一些转换等等。  
    https://github.com/maikebing/Silkier

  • SilkierQuartz SilkierQuartz

    SilkierQuartz 是一个改造了的Quartz的中间件 

https://github.com/maikebing/SilkierQuartz

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(8)
发表了资讯
01/12 21:29

基于.Net 6 编写的物联网平台 IoTSharp v2.1 已发布

IoTSharp 经过2021年的发展, 我们终于有了前端部分, 已经初具生产使用能力, 从规则链、数据清洗脚本支持等等, 设备控制、事件等皆有了完善和支持。 2021年11月是个不平凡的月份。 使得项目有了快速的成长。 于此同时我们也收到了首次捐赠. 同时我们也终于升级到了.Net 6.0 , 由于我们依赖的库实在太多, 推动依赖库更新升级是一个艰巨的任务。 更新内容如下 升级到了 .Net 6.0 调整 rpc 接口和通过网关控制子设备 增加挂载点...

0
5
发表了资讯
2021/11/12 00:09

IoTSharp 2.0 发布,基于 .NET Core 的 IoT 平台

你站在桥上看风景,看风景人在楼上看你。明月装饰了你的窗子,你装饰了别人的梦。喜欢这首诗是因为觉得开源造福了我,我也在尝试贡献自己的力量, 成就他人的同时, 也成就了自己, 贡献开源事业的同时, 也滋养了自己的职业生涯。 在这里首先感谢那些所有支持IoTSharp 的人们, 时隔近十月之久, IoTSharp 终于迎来了新版本, 新版本要特别感激王强先生,他使用Angular开发了强大的规则链设计器和测试器, 并且我们计划在未来,...

6
9
发表了资讯
2021/02/16 12:19

IoTSharp v1.6.0 发布,增加多种数据库支持

首先恭祝所有关注IoTSharp的朋友新春快乐。 在此新年之际 , 我们发布了v1.6.0 , 这次版本发布的最大变化是 我们开始支持多种数据库了, 而不再局限于PostgreSQL . 下面是我们支持的数据库: PostgreSql 测试环境是 PostgreSQL 11.3这是一直以来都支持的数据库。 MySql 测试环境是MySQL 8.0.17 Oracle 测试环境是 Oracle Standard Edition 12c Release 2, 如果你手头没有测试环境, 可以参考 https://github.com/MaksymBilenko...

0
9
发表于硬件 & IoT专区
2020/10/23 11:43

IoTSharp V1.5 发布

很高兴的宣布新版本的发布, 这次更新我们带来了大量新特性, 最值得关注的是, 我们逐步开始支持分布式, 这意味着你可以通过多台服务器共同处理数据, 而不是原来的单机处理, 我们也将遥测数据进行分开存储, 原来的单表方式也支持的同时, 增加了分表、时序数据库等。更新主要功能如下: 通过EFCore.Sharding支持了分表存储, 默认是按月存储,根据数据量, 你可以修改为按日, 按时 。 通过Maikebing.Data.Taos 我们支持了...

4
13
发表了资讯
2020/07/10 17:51

IoTSharp 0.2 发布,已成功对接 STM32、树莓派等多种设备

IoTSharp 是一个基于.Net Core 3.1 的跨平台物联网平台, 目前最新版本实现如下功能! 服务端支持方面: 一、支持HTTP的遥测数据、属性数据上传和获取。 二、支持完整的HTTP Api进行设备以及多租户设备管理 三、支持MQTT协议遥测数据的上传和订阅 四、RPC支持mqtt和http, coap晚些时候支持。 五、支持coap的属性上传和遥测上传 六、通过kimbus 内置ModBus 服务端。 七、通过MQTTnet 内置MQTT Broker 并能通过IoTSharp.X509Exte...

2
31
发表了资讯
2019/07/01 10:06

物联网平台 IoTSharpV0.1.107 新增支持 ModBus 以及大波改进

很高兴的宣布又一个新版本发布, 此次版本有了大量多改进和变化, 虽然依然无法在生产环境中使用, 但大量更新是无可置疑的。 1、加入了MQTT 相关的WebApi by 阿峰(masterchen) 2、初步增加了MQTT 的Topic管理和消息数量、订阅的管理 by 阿峰(masterchen) 3、前端初步增加了设备管理、遥测和对应属性的显示 by 阿峰(masterchen) 4、用户根据租户注册用户现在已经可用。 by 阿峰(masterchen) 5、前端中初步增加了遥测数据和属性数...

4
40
发表了资讯
2019/06/12 14:36

IoTSharp v0.1.19 发布,物联网基础平台

IoTSharp 是一个 基于.Net Core 开源的物联网基础平台, 支持 HTTP、MQTT 、CoAP 协议, 属性数据和遥测数据协议简单类型丰富,是一个用于数据收集、处理、可视化与设备管理的 IoT 平台。 加入CoAP协议 , 现在开始支持CoAp协议的遥测数据和属性数据上传 加入CoAP客户端示例、MQTT 的C#客户端示例、加入纯C语言客户端示例 合并基于vue-element-admin 的前端跟主版本库到一起。 前端客户端实现了注册、登录、设备管理等基本界面,...

2
38
发表了资讯
2019/05/20 12:46

IoTSharp v0.1-alpha 发布,基于.Net Core 的物联网平台

IoTSharp 是一个 基于.Net Core 开源的物联网基础平台, 支持 HTTP、MQTT 协议, 属性数据和遥测数据协议简单类型丰富,是一个用于数据收集、处理、可视化与设备管理的 IoT 平台。 这是第一个alpha 版本发布, 目前已经具备基本的数据收集和功能和处理功能,发布内容大致如下: 支持 HTTP 和 MQTT 协议的遥测数据上传和属性数据上传,数据类型除了Json能表示的类型外, 我们还有XML和 二进制数据类型的支持。 基于HTTP的RPC调用,...

4
31
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
8 评论
351 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部
返回顶部
顶部