实时荷兰式拍卖系统的系统架构

时间:2016-03-16 15:36:46

标签: javascript php real-time long-polling pusher

我正在开发一个荷兰式拍卖和定期拍卖的应用程序。 Web应用程序使用PHP和Jquery,使用Pusher API进行实时交互,因为我在Node.js中还不够舒服直接使用它。

在常规风格竞价中,我没有任何实际问题,因为每个客户的出价会触发客户端javascript事件,并且客户将出价过帐到服务器,然后服务器推送新的出价实时向每个客户定价。对于Dutch,服务器会在没有任何客户端事件的情况下不断向所有客户端更新新价格,当客户端最终接受该价格时,服务器会向所有客户端报告。

  

在荷兰风格的拍卖中,价格逐渐下降直到某个人   接受出价,如果没有人在预设(低)阈值之前接受出价   达到之后,价格一次又一次地重置为其初始的高值。

我不知道从服务器端广播新价格的最佳方式,因为价格会不时下降。新的价格在服务器端决定,变化率不一定是常规的。 一个解决方案可能是每个客户端浏览器对服务器进行连续轮询以检查是否有新价格,但我不确定它是否是最有效的方式,或者如何最好地做到这一点< / em>的

请为我提供正确的实时建议吗?感谢

1 个答案:

答案 0 :(得分:2)

每次更新时,您都可以使用Pusher广播价格。如果客户接受出价,他们应该以他们接受的价格向服务器发送HTTP请求。当服务器收到此客户端请求时,它应该与Pusher一起广播另一个事件,以通知其他客户已接受该出价。