WebSockets 将第三方 API 流式传输到多个子客户端

WebSockets streaming third party API to multiple subclients

我们有一个数据驱动的应用程序,我们的后端不断从第三方服务器获取数据,然后通过 websocket 将其提供给我们的客户端前端。现在的问题是,每当每个客户端到来时,都必须为它们获取两次相同的数据,这被认为是不必要的。 假设如下代码(以PHP为例)

$apiData = file_get_contents('https://third-party-api.com/feed/data.json');
$sockets->send($apiData);

现在我们的前端客户端可以通过 websockets.But 请求此数据,问题是如果第二个客户端连接,则相同的数据会被下载两次。

注意: 我们不想保存数据(没有数据库或任何东西,因为它保存数据没有用)。

有没有一种方法可以在连接两个客户端时将相同的提要发送给它们?

如果您想将数据从 API 发送到两个在获取数据时未连接的客户端,那么您需要将数据缓存在某个地方

例如,如果您不想使用数据库或其他持久存储,Redis 缓存(或类似技术)是一种选择。