我有一个Angular应用程序,一旦一个人登记到房间,他们就被添加到一个列表中,他们的数据被发送到第三方系统。现在,数据通过后端每3分钟批量发送一次到第三方系统。只有当数据传输成功时,这个人才会完全注册,并且在名单上他的名字旁边有一个绿色的复选标记。否则,尽管该人员已登记,但仍将其标记为黄色。
因此,每次有人签入时,都会通知后端并持久化数据。然后通过每三分钟的批处理将数据传输到另一个系统。
如何通知angular app转账成功,以便所有转账的人在他们的名字旁边都有绿色的复选标记?
我在想,每次添加一个人时,请求都会发送到后端,后端只有在批处理作业完成并且传输成功后才会响应。因此,每个请求将延迟3分钟的http响应。我想肯定有更好的方法来做到这一点!
将数据从后端发送到前端有两种主要方式:
设置套接字当您希望通知客户端时,连接并从服务器发出一个事件(read this)
<做strong>轮询在服务器上(根据您的整体架构、客户端数量等,服务器流量可能会有点大)(阅读)
轮询通常更容易做到,但不是实时的,您必须考虑服务器上的潜在负载。套接字是实时的,但是你必须调整你的架构来适应它们。