我正在编写可与其他人聊天的应用。我看到了一些项目:Parse,GCM,......这非常好。但我需要知道它是如何工作的。因为想要使用我自己的。
在我的情况下,我看到当其他人发送他的聊天时,它几乎在1-2秒后显示在我的屏幕上。然后我想发生了什么:
我的朋友将他的聊天发布到服务器,服务器向具有ID(唯一)的应用发送请求。
在我的应用中,有一项服务,每1秒向此服务器发送一次请求以获得新的聊天或通知。如果找到,请显示在我的设备中。
我的理想是真的吗?我打算写一下与客户端服务器的聊天。
告诉我为什么要投票。 谢谢:))
答案 0 :(得分:1)
在我的应用中,有一项服务,每1秒向此服务器发送一次请求以获得新的聊天或通知。如果找到,请在我的设备中显示。
实施正如您所说的导致能源(自己的应用服务使用)/ IO(每1秒的每个网络请求)/服务器(来自客户的大量请求,并且大多数请求因为没有人在24小时聊天而无用)浪费,并且如果服务被系统杀死(或者不要启动),邮件可能会丢失或无法及时获得通知。
但是,如果您找到一种方法可以保持服务始终处于活动状态,并且为服务器做好设计以支持来自大型多客户端的大量请求,那么您的方法将会有效。
为了更好,您可以使用动态查找算法,如果最近没有通知,则保持较长的间隔。