Architecture 第三方API的可扩展/负责轮询

Architecture 第三方API的可扩展/负责轮询,architecture,scalability,polling,Architecture,Scalability,Polling,我维护了一个应用程序,它充当公开API的社交媒体站点的包装器。我的应用程序跟踪每个用户发表的特定帖子,并报告每个帖子上的最新活动 我目前正在对应用程序进行重构,并希望添加实时更新功能,即如果用户保持页面打开,它将在适用时使用对跟踪帖子的新更改进行更新。然而,我不确定这样做的最佳实践 像signar或其他websocketframework这样的东西对于将数据从后端获取到前端代码来说是很好的,但是第三方API只是公开了一堆REST端点。因此,我的后端可能会定期轮询第三方API以获取每个帖子的数据

我维护了一个应用程序,它充当公开API的社交媒体站点的包装器。我的应用程序跟踪每个用户发表的特定帖子,并报告每个帖子上的最新活动

我目前正在对应用程序进行重构,并希望添加实时更新功能,即如果用户保持页面打开,它将在适用时使用对跟踪帖子的新更改进行更新。然而,我不确定这样做的最佳实践

像signar或其他websocketframework这样的东西对于将数据从后端获取到前端代码来说是很好的,但是第三方API只是公开了一堆REST端点。因此,我的后端可能会定期轮询第三方API以获取每个帖子的数据

尽管如此,无论我如何考虑实现这一点,随着我的用户数量和跟踪帖子数量的增长,尤其是在我使用第三方资源方面,这一点似乎难以衡量。当用户首先加载应用程序时,我已经偶尔不得不限制我的请求


是否有一种最佳的可扩展/负责任的方法来检索这样的远程静态数据,以平衡资源使用和用户体验?

您没有提到您喜欢使用哪种堆栈,因此我将不得不笼统地回答这个问题

如果您打算与之集成的系统只支持REST接口,那么轮询确实是您需要做的事情。然而,为了使其具有可扩展性,我将把数据检索与提供实时更新的过程分离开来。这两个主要部分是:

轮询REST web服务并更新数据存储 使用实时引擎从数据存储发送数据 您正在检索的数据的性质、您需要/打算对数据做什么,以及您的目标平台是什么,这些都将驱动您决定适当的堆栈。检索数据的解决方案可能与从数据存储中发送数据的设计方案完全不同