Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Push notification “有什么选择?”;推;连接到internet的设备?_Push Notification - Fatal编程技术网

Push notification “有什么选择?”;推;连接到internet的设备?

Push notification “有什么选择?”;推;连接到internet的设备?,push-notification,Push Notification,我正在从事一个项目,该项目涉及在各种互联网连接设备(如电话、计算机、家庭自动化设备等)上触发操作。有哪些技术/常规操作可用于连接此类设备?从我有限的知识中,我可以想到所有设备都会不断地进行轮询,或者使用长时间的HTTP连接(我相信这与Facebook的通知方式大致相同) 我还有其他选择吗?有哪些框架?从服务器想要联系设备到实际联系设备的时间,哪个选项是最好的?哪个选项最容易延长设备的电池寿命?对于电池寿命,没有什么比普通TCP套接字连接更好的了。如果你可以在一个连接上完成所有设备的轮询,那么除了

我正在从事一个项目,该项目涉及在各种互联网连接设备(如电话、计算机、家庭自动化设备等)上触发操作。有哪些技术/常规操作可用于连接此类设备?从我有限的知识中,我可以想到所有设备都会不断地进行轮询,或者使用长时间的HTTP连接(我相信这与Facebook的通知方式大致相同)


我还有其他选择吗?有哪些框架?从服务器想要联系设备到实际联系设备的时间,哪个选项是最好的?哪个选项最容易延长设备的电池寿命?

对于电池寿命,没有什么比普通TCP套接字连接更好的了。如果你可以在一个连接上完成所有设备的轮询,那么除了每x秒为keepalive数据包(你可能应该在TCP堆栈中启用该数据包,或者作为协议的一部分生成该数据包)添加几个字节外,开销非常小。这与苹果用于iOS通知的方式类似


如果您所处的环境中套接字通信可能会被防火墙阻止,那么我会选择具有长轮询回退功能的WebSocket(您在问题中提到过)。再加上代理支持,它应该能够穿越几乎任何防火墙,而不会有太多的复杂性。

对于电池寿命,没有什么比普通的TCP套接字连接更好的了。如果你可以在一个连接上完成所有设备的轮询,那么除了每x秒为keepalive数据包(你可能应该在TCP堆栈中启用该数据包,或者作为协议的一部分生成该数据包)添加几个字节外,开销非常小。这与苹果用于iOS通知的方式类似

如果您所处的环境中套接字通信可能会被防火墙阻止,那么我会选择具有长轮询回退功能的WebSocket(您在问题中提到过)。结合代理支持,这应该能够穿越几乎任何防火墙,而不会有太多的复杂性