首页 文章

“实时”应用程序或接近它

提问于
浏览
0

例如,我们有一个应用程序,其任务是:

  • 用户向服务器发送数据(这里全部清楚)

  • 服务器将数据发送到客户端

移动设备一切都很清晰 . 我的服务器将数据发送到Push Server,然后Push Server将数据发送到设备,之后,设备转到服务器并从服务器下载数据 .

但是如何处理浏览器扩展,Mac OS应用程序或Windows程序?在这里,我看到两个变种:

1)每隔x秒从服务器请求数据 . 例如,如果我们将使用30秒间隔,那么将不会"real-time",但如果我们将每2秒使用10 000个客户端请求数据(例如),它将看起来像自我ddos攻击 .

2)使用套接字 . 我知道套接字适用于聊天应用,但如果我们的应用不是聊天,例如我们将每5-60分钟或更长时间发送数据 . 当我阅读关于套接字的许多性能测试的文章时,使用具有大量人员的套接字服务器(让我们想象大约1-10万个连接)需要大量的资源 .

也许我错过了一些东西,或者这个案例还有其他选择 . 你能指导我走正确的路吗?如何尽快将数据发送到客户端?

1 回答

  • 0
    • 缓存频繁发送的数据,以便可以避免数据库调用和其他处理 .

    • 使用适合大容量网络流量的设备和可以处理高负载的服务器

    • 当您的服务器太忙而无法处理时,丢弃流量

    • 如果可能的话,对客户进行编程,使它们能够以不同的间隔连接 - 而不是一次连接 .

    • 维护多台服务器并使用负载均衡器分发请求 . 一个简单的负载均衡方法是使用DNS循环 - 我不是说你应该把它扔掉 .

相关问题