【发布时间】:2014-11-20 18:31:18
【问题描述】:
例如,我们有一个任务是:
- 用户向服务器发送数据(这里都清楚了)
- 服务器向客户端发送数据
有了移动设备,一切都变得清晰起来。我的服务器将数据发送到推送服务器,然后推送服务器将数据发送到设备,然后设备转到服务器并从服务器下载数据。
但是如何处理浏览器扩展、Mac OS 应用程序或 Windows 程序?在这里,我看到了两种变体:
1) 每 x 秒从服务器请求数据。例如,如果我们使用 30 秒的间隔,那将不是“实时”的,但如果我们每 2 秒向 10 000 个客户端请求数据(例如),它看起来就像是自我 ddos 攻击。
2) 使用套接字。我知道套接字非常适合聊天应用程序,但如果我们的应用程序不是聊天应用程序,例如,我们将每 5-60 分钟或更长时间发送一次数据。当我读到许多关于套接字性能测试的文章时,在大量人员(假设大约 1-1 万个连接)的情况下使用套接字服务器需要大量资源。
也许我遗漏了一些东西,或者在这种情况下还有哪些其他选项可用。 你能指导我正确的方式吗?如何尽快向客户端发送数据?
【问题讨论】:
-
Socket 是任何网络间通信的端点。因此,通过您选择的任何方法,您都将隐式或显式地拥有套接字。