12306使用了哪些技術(shù)

12306 日點(diǎn)擊量達(dá)到1577.8億,在剛上線的時(shí)候,買火車票太卡。他們做了很多的改進(jìn)。有哪些呢? 咱不是開發(fā)人員,也沒法直接接觸,只能從網(wǎng)上搜羅來學(xué)習(xí)一下。

高負(fù)載高并發(fā)解決

1 異步交易排隊(duì)。 查詢是否有票是一個(gè)耗時(shí)任務(wù),需要大量計(jì)算,如果http請(qǐng)求一直等待計(jì)算結(jié)束,則會(huì)阻塞web服務(wù),導(dǎo)致web無法響應(yīng)用戶。 那么建立一個(gè)交易隊(duì)列,將交易請(qǐng)求加入到交易隊(duì)列中,直接返回給用戶提交成功的相應(yīng),隨后隔段時(shí)間查詢一次執(zhí)行結(jié)果即可異步購票。
2 Pivotal GemFile 一個(gè)分布式的內(nèi)存數(shù)據(jù)庫。
https://pivotal.io/pivotal-gemfire
特點(diǎn)
2.1 穩(wěn)定高效,基于內(nèi)存
2.2 靈活的cache部署策略
2.3 分布式處理
2.4 高可用性和容錯(cuò)性 ,存在多個(gè)基于內(nèi)存的熱備份。
2.5 數(shù)據(jù)可以全內(nèi)存,也可以使用LRU策略房以一部分
2.6 并行查詢
例子: https://www.programcreek.com/java-api-examples/index.php?api=org.springframework.data.gemfire.GemfireTemplate

3 使用了阿里云的基于需求的伸縮性的云平臺(tái)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容