12306使用了哪些技术

12306 日点击量达到1577.8亿,在刚上线的时候,买火车票太卡。他们做了很多的改进。有哪些呢? 咱不是开发人员,也没法直接接触,只能从网上搜罗来学习一下。

高负载高并发解决

1 异步交易排队。 查询是否有票是一个耗时任务,需要大量计算,如果http请求一直等待计算结束,则会阻塞web服务,导致web无法响应用户。 那么建立一个交易队列,将交易请求加入到交易队列中,直接返回给用户提交成功的相应,随后隔段时间查询一次执行结果即可异步购票。
2 Pivotal GemFile 一个分布式的内存数据库。
https://pivotal.io/pivotal-gemfire
特点
2.1 稳定高效,基于内存
2.2 灵活的cache部署策略
2.3 分布式处理
2.4 高可用性和容错性 ,存在多个基于内存的热备份。
2.5 数据可以全内存,也可以使用LRU策略房以一部分
2.6 并行查询
例子: https://www.programcreek.com/java-api-examples/index.php?api=org.springframework.data.gemfire.GemfireTemplate

3 使用了阿里云的基于需求的伸缩性的云平台

你可能感兴趣的:(12306使用了哪些技术)