我正在尝试构建一个IoT +数据分析系统,我无法决定使用哪种技术或服务进行摄取。
最终目标的高级描述是:
我的问题是,如果我们只需要~10秒的响应时间,我们应该使用什么样的pubsub系统? (例如,以下是可接受的:物联网设备检测到事件,然后大约10秒后它会显示在用户的仪表板上或发出警报)
以下是我的一些问题:
此外,不确定是否值得一提,但目前,该团队只是我和其他2个完整堆栈开发人员。我们已经阅读了Kafka和Zookeeper,但我们都没有过去推出它的教程示例。
我推荐选项3.1,因为我个人知道它已经在许多物联网用例的生产中得到证实,其中包括一个涉及超过2000万设备的用例。 Confluent Kafka REST代理是开源的,它是通过互联网(使用防火墙和负载均衡器友好的HTTPS协议)将REST / HTTP从网关转换为云/数据中心的Kafka REST代理,然后转换为Kafka的好方法。以及所有支持Kafka的后端仪表板工具。甚至IBM也将此架构用于Bluemix MessageHub上的物联网基础架构。如果您不喜欢REST,那么可以选择MQTT,CoAP,websockset,AMQP,XMPP和许多其他Kafka连接器。
所有重大问题。 (完全披露我为PubNub工作)
PubNub更像是pub / sub(稍后我会介绍)。首先,PubNub是作为全球分布式网络构建的,因此我们可以通过本地存在点为全球所有设备提供低延迟连接。由于这种分布式架构,您的设备将始终连接到最接近它们的POP,因为我们全局复制消息,如果服务器或节点出现故障,您将自动重新连接到下一个最近的节点而不会丢失消息。因此,PubNub为所有客户提供99.999%的正常运行时间SLA。
在构建与购买决策时,我可以告诉你,我们的许多客户都认为他们可以自己构建它,但很快意识到这项工作比他们预期的要多 - read more here。构建和维护客户端库,扩展后端,24-7监控和安全性都是您需要拥有内部专业知识的所有内容。如果考虑到前期开发成本,持续维护 - 而不是今天下载SDK,请立即开始编码,以便通过已知的可扩展解决方案更快地进入市场。
PubNub是根据交易定价的,因此根据设备数量和流量水平,我敢打赌总成本仍然低于一名全职员工。为此您可以从70多个客户端SDK中进行选择,利用经过验证的可扩展架构,利用已内置的安全功能,准备好整个团队并等待全天候提供帮助,这样您就可以专注于创新而不是基础设施。
PubNub比Pub / Sub更多。 PubNub不仅提供实时消息传递,还通过其programmable network提供状态管理和无服务器计算。 PubNub允许您在网络中编写和部署功能,事实上,PubNub BLOCKS Catalog中已有30多种预建功能可供您在数据发生变化时发送短信,电子邮件等。
PubNub还创建了一个用于构建名为Project EON的实时仪表板的开源项目。这使得为您的所有设备数据提供实时可视化变得非常容易。
你说PubNub可以用于remote device control也是正确的。今天正在使用Insteon,Logitech,三星,Wink等等。
如果您有任何其他问题,PubNub有一个非常好的支持人员24/7 - [email protected]或点击网站上的聊天。