【发布时间】:2012-07-30 17:30:52
【问题描述】:
我的服务器是一个 REST 平台(使用 asp.net MVC 4 web api 构建),我的客户端是 ios 应用程序(当然是在 Objective-C 中)。 目前,对于所有操作,客户端使用 http POST、GET、PUT、DELETE 查询服务器。 但是有一种情况,服务器需要通知客户端发生了什么事。
Apple 方式是推送通知,当用户为应用授权推送通知时可以,但即使用户关闭推送通知,我也需要通知应用(当它在前台时)。
现在有两种方法可以做到:
- 客户端每隔几秒查询一次服务器(在 http GET 中)是否发生了什么事(我们到了吗?我们到了吗?:)
- 客户端以某种方式打开到服务器的套接字并使其保持打开状态,等待服务器通过打开的会话通知它发生了什么事。
那你建议怎么做? 1 还是 2?还是有第三种方法? 如果选项 2 有人可以引导我如何有效地做到这一点?考虑到我的应用应该处理超过 100,000 个活跃用户?
谢谢
【问题讨论】:
标签: c# objective-c sockets rest client-server