java分布式架構(gòu) 面一個(gè)5年java,不知數(shù)據(jù)結(jié)構(gòu),卻大談分布式,這樣的能要嗎?
面一個(gè)5年java,不知數(shù)據(jù)結(jié)構(gòu),卻大談分布式,這樣的能要嗎?我猜您向人們?cè)儐?wèn)了各種JDK數(shù)據(jù)結(jié)構(gòu)的基本實(shí)現(xiàn)原則。事實(shí)上,我一直在想。知道基本的實(shí)現(xiàn)原則是可以的,也是值得的,但是如果你不知道呢?人們知
面一個(gè)5年java,不知數(shù)據(jù)結(jié)構(gòu),卻大談分布式,這樣的能要嗎?
我猜您向人們?cè)儐?wèn)了各種JDK數(shù)據(jù)結(jié)構(gòu)的基本實(shí)現(xiàn)原則。事實(shí)上,我一直在想。知道基本的實(shí)現(xiàn)原則是可以的,也是值得的,但是如果你不知道呢?人們知道哪些數(shù)據(jù)結(jié)構(gòu)適用于哪些場(chǎng)景,并且能夠熟練地使用它們。那不是。。。夠了嗎?對(duì)貴公司的需求不足嗎?你希望他為你的公司創(chuàng)建一個(gè)新的數(shù)據(jù)結(jié)構(gòu)嗎?就像two peas或JDK一樣,JDK的數(shù)據(jù)結(jié)構(gòu)性能遇到了瓶頸,求職者會(huì)給你提供比工作提供的數(shù)據(jù)結(jié)構(gòu)更好的數(shù)據(jù)結(jié)構(gòu)。
什么時(shí)候需要分布式鎖?
首先,我們需要知道在非分布式環(huán)境中使用鎖可以解決什么問(wèn)題?
多線程環(huán)境,共享資源線程安全問(wèn)題!此時(shí),共享資源通常在一臺(tái)機(jī)器的多線程中競(jìng)爭(zhēng)。從JAVA內(nèi)存模型的角度來(lái)看,我們可以通過(guò)鎖定對(duì)象、方法和代碼塊來(lái)避免共享資源的競(jìng)爭(zhēng)
!1,生成全局ID;
2,修改全局配置文件;
3,分布式服務(wù)中的seckill;
4,分布式環(huán)境中的重復(fù)提交;
1,使用數(shù)據(jù)庫(kù)的唯一主鍵實(shí)現(xiàn)鎖定
!2、使用redis指令:通常使用setnx方法,incr方法實(shí)現(xiàn)
3、使用zookeeper:使用API生成臨時(shí)節(jié)點(diǎn)實(shí)現(xiàn)鎖定!