0

我试图让 100 台 Android 设备根据服务器参数显示文本字符串。当服务器将文本从“Hello World”更改为“Everything Changed”时,我希望所有 100 个 android 设备同时更新,最好是在更改发生后立即更新。

它在隔离的 LAN 上运行,因此 C2DM 不可行,并且每秒轮询似乎相当大的流量(特别是如果以后有 1000 台设备)。关于如何从轮询转向推送或至少使其可扩展,是否有任何建议?

我一直在考虑只保持连接打开,服务器仅在内容发生变化时才返回内容,但担心超时问题和 PHP 处理 100 个并发连接的能力......有什么要尝试的指针或建议吗?

4

1 回答 1

1

你不应该拉。如果您在私有网络中,并且设备数量有限,则最好保持 tcp 套接字打开,并通过打开的套接字将数据从服务器发送到客户端。

但是你必须明白你在做什么。

所以阅读以下内容:

1)了解可以打开多少个连接以及是否足以满足您的需求 可能有多少个套接字连接?

2)如果你有很多设备,我的意思是超过一千台,你可能会在服务器端失败。为了不失败,您必须阅读有关 async io http://en.wikipedia.org/wiki/Asynchronous_I/O和其他一些在网络中找到的内容。和 php 中的 async io PHP可以异步使用套接字吗?

于 2012-07-19T11:52:34.463 回答