回顾一下以前写的一个会员竞拍的系统,主要需求如下:
1.分为周拍和日拍。(周拍即每周有一个昂贵的物品可以竞拍,日拍即每天可以有三个较便宜的物品可以竞拍。每天有一个日拍物品上线,同时也有一个物品下线。周拍则是一周有一个物品下线,同时也有一个物品上线。物品上线时间为早上10:00,预计结束时间为22:00)。
2.实时竞拍。(用户登陆竞拍系统,能实时看到当前处于竞拍状态的物品的竞拍情况,而用户自己的竞拍行为也能及时地传递到其他用户页面上,所以这个就存在一个实时性问题)。
3.倒计时。(显示每一个竞拍物品的倒计时,倒计时为0时,出价最高者为竞拍胜利者)。
基于以上的需求,经分析,①对于实时竞拍而言,就需要客户端browser能够获取到最新的竞拍信息,而有两种技术可以实现,其一是使用“服务器推”comet技术,其二是使用ajax轮询。②对于周拍和日拍,究其本身而言,就是竞拍周期为一周,而其他的日拍则为三天(每天有三个日拍可以拍,每天只有一个上线或下线)。而③倒计时问题,则可以采用前端js的window .setInterval定时器和window.setTimeout延迟器相结合使用。
其中还涉及到一个倒计时为0时,若有用户竞拍如何处理的问题,经研究后,若在最后20秒内有用户竞拍,则把竞拍的时间在竞