
極簡教程,五分鐘快速入門之dubbo穿铆,為后面的dubbo實戰(zhàn)以及dubbo源碼分析做鋪墊您单。 一、dubbo是什么荞雏? 1)本質(zhì):一個Jar包,一個分布式框架,睹限,一個遠(yuǎn)程服務(wù)調(diào)用...
在開始了解Netty是什么之前,我們先來回顧一下羡疗,如果我們需要實現(xiàn)一個客戶端與服務(wù)端通信的程序染服,使用傳統(tǒng)的IO編程,應(yīng)該如何來實現(xiàn)叨恨? IO編程 我們簡化下場景:客戶端每隔兩秒...
background netty 是一個異步事件驅(qū)動的網(wǎng)絡(luò)通信層框架柳刮,其官方文檔的解釋為 Netty is a NIO client server framework whi...
前言 俗話說 「不要重復(fù)造輪子」,關(guān)于是否有必要不再本次討論范圍痒钝。 創(chuàng)建這個項目的主要目的還是提升自己秉颗,看看和知名類開源項目的差距以及學(xué)習(xí)優(yōu)秀的開源方式。 好了送矩,現(xiàn)在著重來談...
消息隊列 用RocketMQ 或者RabbitMQ更好蚕甥,消息的可靠性更加。Kafka追求的是QPS栋荸,性能菇怀,但是既然是秒殺,搶購晌块,則商品數(shù)不會太多爱沟,消息量不可能太大,消息的可靠性更重要匆背。
另外最新的rocketmq4.3版本呼伸,已經(jīng)支持事務(wù)消息了。
秒殺架構(gòu)實踐前言 之前在 Java-Interview 中提到過秒殺架構(gòu)的設(shè)計钝尸,這次基于其中的理論簡單實現(xiàn)了一下括享。 本次采用循序漸進(jìn)的方式逐步提高性能達(dá)到并發(fā)秒殺的效果,文章較長請準(zhǔn)備好...
1. 為什么不用悲觀鎖珍促?明顯競爭壓力大
2. 異步的操作可以持久化搶單用戶的信息奶浦,定時任務(wù)去check是否 DB端正確消費,其實是一個分布式事務(wù)的問題
3. 頁面也要做一些控制踢星,比如提交訂單后澳叉,置灰按鈕避免重復(fù)搶單
4. 防止惡意的搶單軟件,控制層考慮:利用redis做IP限流沐悦、搶單用戶限流成洗、校驗防止不通過頁面,直接用程序調(diào)用搶單藏否,從而導(dǎo)致活動沒開始就被人搶了
等等 諸多細(xì)節(jié)瓶殃,感覺可以優(yōu)化
秒殺架構(gòu)實踐前言 之前在 Java-Interview 中提到過秒殺架構(gòu)的設(shè)計,這次基于其中的理論簡單實現(xiàn)了一下副签。 本次采用循序漸進(jìn)的方式逐步提高性能達(dá)到并發(fā)秒殺的效果遥椿,文章較長請準(zhǔn)備好...
講的很清楚基矮,老哥很穩(wěn)!
10冠场、Zookeeper的數(shù)據(jù)與存儲一家浇、內(nèi)存數(shù)據(jù) Zookeeper的數(shù)據(jù)模型是樹結(jié)構(gòu),在內(nèi)存數(shù)據(jù)庫中碴裙,存儲了整棵樹的內(nèi)容钢悲,包括所有的節(jié)點路徑、節(jié)點數(shù)據(jù)舔株、ACL信息莺琳,Zookeeper會定時將這個數(shù)據(jù)存儲到磁盤...
今年年初的時候,螞蟻金服電話面試污桦,我本以為我準(zhǔn)備好了一切亩歹,面試的時候,面試官一句:那你講講ConcurretHasMap的size()函數(shù)吧凡橱?
當(dāng)時我就感覺要翻車了小作。
HashMap? ConcurrentHashMap? 相信看完這篇沒人能難住你!前言 Map 這樣的 Key Value 在軟件開發(fā)中是非常經(jīng)典的結(jié)構(gòu)稼钩,常用于在內(nèi)存中存放數(shù)據(jù)顾稀。 本篇主要想討論 ConcurrentHashMap 這樣一個并發(fā)容器,在正式...
大佬。寫的真好塔沃,既簡潔又詳細(xì)蝠引。
如果能整理出在java中通過mongodbTemplate調(diào)用的代碼就更贊美了
MongoDB索引總結(jié)1、_id索引: 自動創(chuàng)建 2蛀柴、單鍵索引: 【值為一個單個的值螃概,例如字符串、數(shù)字或者日期】db.nums.insert({x:1,y:2,z:3})db.nums.ens...