我一直在考虑使用gRPC来连接物联网设备,这些设备不太受限制,比如传感器;更像是内置单板计算机的设备,比如机器人、无人机等。需要一个接口来连接设备和集中控制器,因为这些设备是由不同公司分别开发的。所以必须有一个版本化的接口语言,并且它不应该只是一个 Word 文档,而是像头文件、WSDL、IDL 或 ProtocolBuffer 这样可编程的东西。同时,在设备和控制器之间,应该指定常见用例的行为,比如注册、重新注册等。这可以在 Word 文件或某些非技术文件中进行。
使用 Protocol Buffer(版本 3)中的(rpc)接口规范以及通过 gRPC 的高效实现,使我选择它而不是 CoAP / LWM2M(Leshan Java 和 C++ 实现)。
使用过 LWM2M 和 gRPC 后,我可以说 gRPC 更适合开发者;与 OMA LWM2M 流程相比,接口定义和实现更快。当然,gRPC 没有 Observer-Notify,但对于此问题,MQTT 应该足够了。
严格来说,LWM2M 不能与 gRPC 相比较。LWM2M 不仅定义了接口,还在许多物联网案例中定义了行为,例如 BootStrap、Registration、KeepAlive、SW Upgrade 等,并且它的通用 HTTP 类 GET、PUT 在 URL 可寻址资源上使其非常完整。然而,这些行为中的大多数都可以通过一些努力进行自定义定义。
我们计划编排的一些物联网设备远非像灯泡那样简单,更像机器人。有人使用 gRPC 进行类似的目的吗?有没有成功或失败的故事分享?
使用 Protocol Buffer(版本 3)中的(rpc)接口规范以及通过 gRPC 的高效实现,使我选择它而不是 CoAP / LWM2M(Leshan Java 和 C++ 实现)。
使用过 LWM2M 和 gRPC 后,我可以说 gRPC 更适合开发者;与 OMA LWM2M 流程相比,接口定义和实现更快。当然,gRPC 没有 Observer-Notify,但对于此问题,MQTT 应该足够了。
严格来说,LWM2M 不能与 gRPC 相比较。LWM2M 不仅定义了接口,还在许多物联网案例中定义了行为,例如 BootStrap、Registration、KeepAlive、SW Upgrade 等,并且它的通用 HTTP 类 GET、PUT 在 URL 可寻址资源上使其非常完整。然而,这些行为中的大多数都可以通过一些努力进行自定义定义。
我们计划编排的一些物联网设备远非像灯泡那样简单,更像机器人。有人使用 gRPC 进行类似的目的吗?有没有成功或失败的故事分享?