在线实时竞拍网站,一些技术上的问题,大家一起讨论。

asdfgh_5982 2010-10-07 03:28:44
最近在研究Web版的实时竞拍系统,觉得其中有很多值得推敲学习的技术。
先看看2个网站,国外的:swoopo.com,国内的havepai.com(这2个网站js比较清楚)

从表面看,浏览器端多拍卖产品的状态,使用AjAx每秒轮询服务器。
问题一:每秒多AJax的并发,AJAX并发处理和流程控制?

服务器处理大量并发的Ajax请求:
问题二:系统的抗并发的构架 ?
问题三:大量并发的数据读、写操作 ?
问题四:多个拍卖的信息(如倒计时间、当前拍卖价、当前持有者)实时存储和分发 ?

先看一篇文章《HTML 5 Web Socket》.
HTML5通过在浏览器中模拟全双工连接的模式,还是非常让人期待的。

Ajax轮询技术我们可以看看著名的Comet:基于HTTP长连接的“服务器推”技术。

系统的抗并发的构架 ---- 要考虑web网站的构架 + 软件、硬件结合。

大量并发的数据读、写操作 ? 要考虑数据库的事务处理机制以及分布式应用了。

问题四 要考虑缓存机制。如:在最后15秒大量并发的竞拍点击所导致的竞拍时间和价格的更新等。
...全文
265 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
asdfgh_5982 2010-10-08
  • 打赏
  • 举报
回复
并发是指两个或多个事件在同一时间间隔内发生。我们讲的时间其实是宏观上的同一时间,真正的还是有间隔的。 谢谢winner的提问,就算用户都在倒计时为3秒的时候点竞拍,也还是有时间差的。

在最后15秒或10秒内竞拍肯定有如下情况存在的:在上一请求未处理完之前,又有新的请求累积。
winner2050 2010-10-07
  • 打赏
  • 举报
回复
竞拍怎么能并发拍?

看网页允许并发,添加数据的操作都要锁起来。
asdfgh_5982 2010-10-07
  • 打赏
  • 举报
回复
AJAX并发处理和流程控制?
1.由DOM对象触发AJAX请求,我们可以将请求对象缓存于DOM对象中
2.生成AJAX对象,并检测当前并发请求数量是否大于最大请求上限。如果大于上限AJAX对象压入队列,否则直接发送请求,并且增加并发请求数目。
3.如果AJAX请求完成,进入完成后处理。结束后并发数目减一,之后检测队列是否有等待请求,如果有发送队首AJAX对象请求
在havepai中清楚的看到这个流程控制.

GDS_DOMS = {} ;//DOM对象
TIMEINTER = setInterval("req_goods();",1000);
function req_goods(){
...
TLKRQLOCK = true ;//锁定当前请求队列
$.ajax({
...
show_goods_bid_info();
});
}

function show_goods_bid_info(){
...
TLKRQLOCK = false ;//解除锁定
}

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧