商品秒杀技术实现

标签: 商品 技术 | 发表时间:2014-03-04 22:26 | 作者:pzx888
出处:http://www.iteye.com
查阅了一些文章,讲的透彻的不多,也可能是我理解不到位

一种思路, http://guzz.iteye.com/blog/811500,提到的采用二次事务模式,使用AtomicInteger原子计数,挡掉大部分的请求,只接受计数值个用户请求,并提交数据库事务;如果采用多台应用服务器,计数值可以均分,比如总数50,5台服务器,那么每台可以为10。

另一种,说采用队列,放一定数量的用户进去,秒杀结束,从中取先进入队列的部分用户,或者是固定长度的队列,大体如此。

还有提到用缓存的,具体怎么用没有讲清楚的,如下文
比如有10件商品要秒杀,可以放到缓存中,读写时不要加锁。 当并发量大的时候,可能有25个人秒杀成功,这样后面的就可以直接抛秒杀结束的静态页面。进去的25个人中有15个人是不可能获得商品的。所以可以根据进入的先后顺序只能前10个人购买成功。后面15个人就抛商品已秒杀完。

当然进去25个人只是个比方,有可能更多,有可能少一点。最多能进去几个可用线程压一下。

秒杀结束页面一定要用静态页面,别用数据库。


一篇有点想法的文, http://www.cnblogs.com/rollenholt/archive/2013/10/28/3393398.html
http://wenku.baidu.com/link?url=fFeQ8PFXiQF2DCJYFyNdURBDdYiCId-vRjkvU9niwDsuA0pEU67ewpDq3nJfpOWrcVOOfMGUHVTN4X2u88luRCtYH50wLj0UvG7io5WeMuS

MD,屁也没总结出来!

已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [商品 技术] 推荐:

商品秒杀技术实现

- - 互联网 - ITeye博客
查阅了一些文章,讲的透彻的不多,也可能是我理解不到位. 一种思路, http://guzz.iteye.com/blog/811500,提到的采用二次事务模式,使用AtomicInteger原子计数,挡掉大部分的请求,只接受计数值个用户请求,并提交数据库事务;如果采用多台应用服务器,计数值可以均分,比如总数50,5台服务器,那么每台可以为10.

京东亿级商品搜索核心技术解密

- - 运维派
作者:王春明,现任京东搜索平台部负责人,2011年加入京东搜索团队,期间一直负责京东搜索引擎研发工作,主导了多次搜索架构升级工作保障其满足京东发展需求,擅长搜索引擎、高性能服务开发、分布式系统架构. 招聘: 京东搜索平台部木有有高级/资深搜索引擎研发工程师(C/C++)  、高级/资深算法工程师(C/C++)、高级/资深数据系统工程师(java)等职位,期待您的加入,一起打造弹性搜索平台.

前端技术

- - CSDN博客综合推荐文章
随着互联网产业的爆炸式增长,与之伴生的Web前端技术也在历经洗礼和蜕变. 尤其是近几年随着移动终端的发展,越来越多的人开始投身或转行至新领域,这更为当今的IT产业注入了新的活力. 尽管Web前端技术诞生至今时日并不长,但随着Web技术的逐渐深入,今后将会在以下几方面发力. JavaScript的兄弟们.

SSI技术

- - 开源软件 - ITeye博客
1.       SSI,通常称为“服务器端包含”技术. 使用了SSI技术的文件默认的后缀名为.shtml,SSI技术通过在html文件中加入SSI指令让web服务器在输出标准HTML代码之前先解释SSI指令,并把解释完后的输出结果和HTML代码一起返回给客户端. 2.       SSI技术的优点:SSI技术是通用技术,它不受限于运行环境,在java、dotnet、CGI、ASP、PHP下都可以使用SSI技术;解释SSI的效率比解释JSP的效率快很多,因为JSP规范提供了太多的功能,这些功能都需要servlet引擎一一进行解释,所以效率比较低.

技术选型

- - 企业架构 - ITeye博客
MVC Framwork: SpringMVC3.0 Restful的风格终于回归了MVC框架的简单本质,对比之下Struts2概念太复杂更新又太懒了. Template:JSP2.0且尽量使用JSP EL而不是taglib,万一要写taglib也用纯JSP来编写,一向是SpringSide的推荐,Freemarker们始终有点小众, 而Thymeleaf与美工配合度非常高,可惜也是太少用户了.

技术的异化:读《技术垄断》

- Dynamic - It Talks--上海魏武挥的博客
事实上,我认为国内对马克思或神圣化或妖魔化,都是要不得的. 我们应该还马克思一个伟大的社会学(当然还有哲学、经济学之类)学者的本来面目,而不是把他的话当成教义. 异化就是一个相当精到的学术词语,它所描述的是人们创造发明某物本来为了让人们自己更好地工作生活,结果该物却成了人的主宰. 在很多领域,都有异化的影子,比如宗教,比如官僚体系,当然,也包括技术.

HBase技术介绍

- 三十不归 - 搜索技术博客-淘宝
HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. 上图描述了Hadoop EcoSystem中的各层系统,其中HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制.

Web技术整理

- Gabriel - 博客园-首页原创精华区
  Web技术或许是将来最为热门的技术之一. 这里略作一些总结,以及对各种Web技术作一些概要性介绍. (以下内容建立在我的粗略理解之上,欢迎指正).   推荐个学习Web技术比较好的网站,介绍的比较全面.   页面的展示使用超文本标记语言(HTML)来表示. 这是一种标签语言,本身不具有执行能力,只是结构化页面内容.

Hadoop相关技术

- - CSDN博客云计算推荐文章
Apache的Hadoop是什么. Apache的Hadoop项目™®开发出可靠的,可扩展的,分布式计算的开源软件. Apache的Hadoop的软件库是一个框架,允许大型数据集通过计算机集群使用简单的编程模型,进行分布式处理. 它的设计规模从单一服务器到数千台计算机,每个提供本地计算和存储. 软件库是用来检测和处理应用层失败的,而不是依靠硬件提供高的有效度,因此在计算机集群上提供高度可用性服务,其中每个都有可能会有失败.

MySQL分区技术

- - 数据库 - ITeye博客
mysql分区技术是mysql5.1以后出现的新技术,能替代分库分表技术,它的优势在于只在物理层面来降低数据库压力. 常用的MySQL分区类型:. 1.RANGE分区:基于属于一个给定的连续区间的列值,把多行分配给分区(基于列). 2.LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合的某个值来进行选择(基于列值是固定值的).