
極簡(jiǎn)教程,五分鐘快速入門之dubbo警儒,為后面的dubbo實(shí)戰(zhàn)以及dubbo源碼分析做鋪墊。 一眶根、dubbo是什么蜀铲? 1)本質(zhì):一個(gè)Jar包,一個(gè)分布式框架,,一個(gè)遠(yuǎn)程服務(wù)調(diào)用...
在開(kāi)始了解Netty是什么之前记劝,我們先來(lái)回顧一下,如果我們需要實(shí)現(xiàn)一個(gè)客戶端與服務(wù)端通信的程序族扰,使用傳統(tǒng)的IO編程厌丑,應(yīng)該如何來(lái)實(shí)現(xiàn)定欧? IO編程 我們簡(jiǎn)化下場(chǎng)景:客戶端每隔兩秒...
background netty 是一個(gè)異步事件驅(qū)動(dòng)的網(wǎng)絡(luò)通信層框架,其官方文檔的解釋為 Netty is a NIO client server framework whi...
前言 俗話說(shuō) 「不要重復(fù)造輪子」怒竿,關(guān)于是否有必要不再本次討論范圍砍鸠。 創(chuàng)建這個(gè)項(xiàng)目的主要目的還是提升自己,看看和知名類開(kāi)源項(xiàng)目的差距以及學(xué)習(xí)優(yōu)秀的開(kāi)源方式耕驰。 好了爷辱,現(xiàn)在著重來(lái)談...
消息隊(duì)列 用RocketMQ 或者RabbitMQ更好,消息的可靠性更加朦肘。Kafka追求的是QPS饭弓,性能,但是既然是秒殺媒抠,搶購(gòu)弟断,則商品數(shù)不會(huì)太多,消息量不可能太大趴生,消息的可靠性更重要夫嗓。
另外最新的rocketmq4.3版本,已經(jīng)支持事務(wù)消息了冲秽。
秒殺架構(gòu)實(shí)踐前言 之前在 Java-Interview 中提到過(guò)秒殺架構(gòu)的設(shè)計(jì)舍咖,這次基于其中的理論簡(jiǎn)單實(shí)現(xiàn)了一下。 本次采用循序漸進(jìn)的方式逐步提高性能達(dá)到并發(fā)秒殺的效果锉桑,文章較長(zhǎng)請(qǐng)準(zhǔn)備好...
1. 為什么不用悲觀鎖排霉?明顯競(jìng)爭(zhēng)壓力大
2. 異步的操作可以持久化搶單用戶的信息,定時(shí)任務(wù)去check是否 DB端正確消費(fèi)民轴,其實(shí)是一個(gè)分布式事務(wù)的問(wèn)題
3. 頁(yè)面也要做一些控制攻柠,比如提交訂單后,置灰按鈕避免重復(fù)搶單
4. 防止惡意的搶單軟件后裸,控制層考慮:利用redis做IP限流瑰钮、搶單用戶限流、校驗(yàn)防止不通過(guò)頁(yè)面微驶,直接用程序調(diào)用搶單浪谴,從而導(dǎo)致活動(dòng)沒(méi)開(kāi)始就被人搶了
等等 諸多細(xì)節(jié),感覺(jué)可以優(yōu)化
秒殺架構(gòu)實(shí)踐前言 之前在 Java-Interview 中提到過(guò)秒殺架構(gòu)的設(shè)計(jì)因苹,這次基于其中的理論簡(jiǎn)單實(shí)現(xiàn)了一下苟耻。 本次采用循序漸進(jìn)的方式逐步提高性能達(dá)到并發(fā)秒殺的效果,文章較長(zhǎng)請(qǐng)準(zhǔn)備好...
講的很清楚扶檐,老哥很穩(wěn)凶杖!
10、Zookeeper的數(shù)據(jù)與存儲(chǔ)一款筑、內(nèi)存數(shù)據(jù) Zookeeper的數(shù)據(jù)模型是樹(shù)結(jié)構(gòu)智蝠,在內(nèi)存數(shù)據(jù)庫(kù)中腾么,存儲(chǔ)了整棵樹(shù)的內(nèi)容,包括所有的節(jié)點(diǎn)路徑杈湾、節(jié)點(diǎn)數(shù)據(jù)解虱、ACL信息,Zookeeper會(huì)定時(shí)將這個(gè)數(shù)據(jù)存儲(chǔ)到磁盤...
今年年初的時(shí)候,螞蟻金服電話面試杭攻,我本以為我準(zhǔn)備好了一切祟敛,面試的時(shí)候,面試官一句:那你講講ConcurretHasMap的size()函數(shù)吧兆解?
當(dāng)時(shí)我就感覺(jué)要翻車了馆铁。
HashMap? ConcurrentHashMap? 相信看完這篇沒(méi)人能難住你!前言 Map 這樣的 Key Value 在軟件開(kāi)發(fā)中是非常經(jīng)典的結(jié)構(gòu)锅睛,常用于在內(nèi)存中存放數(shù)據(jù)埠巨。 本篇主要想討論 ConcurrentHashMap 這樣一個(gè)并發(fā)容器,在正式...
大佬扛点。寫的真好哥遮,既簡(jiǎn)潔又詳細(xì)。
如果能整理出在java中通過(guò)mongodbTemplate調(diào)用的代碼就更贊美了
MongoDB索引總結(jié)1陵究、_id索引: 自動(dòng)創(chuàng)建 2眠饮、單鍵索引: 【值為一個(gè)單個(gè)的值,例如字符串铜邮、數(shù)字或者日期】db.nums.insert({x:1,y:2,z:3})db.nums.ens...