Discovery模塊負(fù)責(zé)發(fā)現(xiàn)集群中的節(jié)點(diǎn),以及選擇主節(jié)點(diǎn)。ES支持多種不同Discovery類型選擇,內(nèi)置的實(shí)現(xiàn)有兩種:Zen Discovery和Coordinator,...
Discovery模塊負(fù)責(zé)發(fā)現(xiàn)集群中的節(jié)點(diǎn),以及選擇主節(jié)點(diǎn)。ES支持多種不同Discovery類型選擇,內(nèi)置的實(shí)現(xiàn)有兩種:Zen Discovery和Coordinator,...
協(xié)調(diào)節(jié)點(diǎn)作為es節(jié)點(diǎn)中的一個(gè)節(jié)點(diǎn),默認(rèn)情況下es集群中所有的節(jié)點(diǎn)都能當(dāng)協(xié)調(diào)節(jié)點(diǎn),主要作用于請(qǐng)求轉(zhuǎn)發(fā),請(qǐng)求響應(yīng)處理等輕量級(jí)操作。 但是在生產(chǎn)環(huán)境中,當(dāng)客戶端通過(guò)REST API...
先來(lái)看下例子 運(yùn)行結(jié)果 Condition的await()實(shí)現(xiàn)原理 ①首先判斷當(dāng)前線程是否被中斷了,如果已經(jīng)被中斷了,則直接拋InterruptedException給上層調(diào)...
shiro與spring整合的流程 首先需要在web.xml文件中配置以下的過(guò)濾器進(jìn)行攔截請(qǐng)求 然后在spring的配置文件中配置ShiroFilterFactoryBean...
這里的對(duì)象僅限于普通Java對(duì)象,不包括數(shù)組和Class對(duì)象等,那么對(duì)象的創(chuàng)建過(guò)程是什么樣的呢? new 指令 當(dāng)虛擬機(jī)遇到一條new指令時(shí),首先去檢查這個(gè)指令的參數(shù)是否能在...
ContextLoaderListener設(shè)計(jì)與實(shí)現(xiàn) 在web項(xiàng)目中,Spring通過(guò)ContextLoaderListener監(jiān)聽(tīng)器來(lái)實(shí)現(xiàn)在web服務(wù)器啟動(dòng)時(shí)載入IOC容器...
當(dāng)我們需要使用BeanPostProcessor時(shí),直接在Spring配置文件中定義這些Bean顯得比較笨拙,例如:使用@Autowired注解,必須事先在Spring容器中...
配置以及代碼如下 配置 代碼 當(dāng)我們?cè)谂渲梦募信渲昧?lt;context:component-scan>,那么spring將自動(dòng)幫我們掃描指定包下的類是否標(biāo)注了@Compone...
簡(jiǎn)介 Apache Shiro是Java的一個(gè)安全框架,Shiro可以幫助我們完成:認(rèn)證、授權(quán)、加密、會(huì)話管理、與Web集成、緩存等。其基本功能點(diǎn)如下圖所示: Authent...
mysql主(稱master)從(稱slave)復(fù)制的原理:1、 master將數(shù)據(jù)改變記錄到二進(jìn)制日志(binary log)中,也即是配置文件log-bin指定的文件(這...
問(wèn)題 如果一段代碼中所需要的數(shù)據(jù)必須與其他代碼共享,那么就需要看這些共享數(shù)據(jù)的代碼能否在同一個(gè)線程中執(zhí)行,如果能保證,那么我們就可以把共享數(shù)據(jù)的可見(jiàn)范圍限制在同一線程之內(nèi),這...
簡(jiǎn)介 HashMap在工作中使用頻率最高的用于映射(鍵值對(duì))處理的數(shù)據(jù)類型。本文主要通過(guò)JDK1.8版本,深入探討HashMap的結(jié)構(gòu)實(shí)現(xiàn)和功能原理。 功能實(shí)現(xiàn) 一、傳統(tǒng) H...
簡(jiǎn)介 HashSet實(shí)現(xiàn)了Set接口,它不允許集合中有重復(fù)的值。HashSet是對(duì)HashMap的簡(jiǎn)單包裝,對(duì)HashSet的函數(shù)調(diào)用都會(huì)轉(zhuǎn)換成合適的HashMap方法。 具...
addWorker(Runnable firstTask, boolean core)方法 執(zhí)行流程①首先兩個(gè)for循環(huán),先來(lái)看外面的for循環(huán) 1、首先獲取當(dāng)前線程池的運(yùn)行...
這篇文章由一個(gè)簡(jiǎn)單的問(wèn)題引出: 有兩個(gè)字典,分別存有 100 條數(shù)據(jù)和 10000 條數(shù)據(jù),如果用一個(gè)不存在的 key 去查找數(shù)據(jù),在哪個(gè)字典中速度更快? 有些計(jì)算機(jī)常識(shí)的讀...
java.lang.Object提供了toString方法的一個(gè)實(shí)現(xiàn),但是它返回的字符串通常不是我們期望看到的。它包含類的名稱,以及一個(gè)“@”符號(hào),接著是散列碼的無(wú)符號(hào)十六進(jìn)...
NIO與IO 1、阻塞IO實(shí)例: 上面的實(shí)例只能同時(shí)處理一個(gè)連接,要管理多個(gè)并發(fā)客戶端,需要為每個(gè)新的客戶端socket創(chuàng)建一個(gè)新的Thread,如下圖: 這種方案的影響:①...
給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個(gè)數(shù)。 你可以假設(shè)每個(gè)輸入只對(duì)應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。 解答:一遍哈希表 在進(jìn)行迭代并將元素插入到表中的...
Java的serialization提供了一種持久化對(duì)象實(shí)例的機(jī)制。當(dāng)持久化對(duì)象時(shí),可能有一個(gè)特殊的對(duì)象數(shù)據(jù)成員,我們不想用serialization機(jī)制來(lái)保存它。為了在一個(gè)...
(1)簡(jiǎn)介 位運(yùn)算符(1)取反(NOT) (2)按位或(OR) (3)按位異或(XOR) (4)按位與(AND) (5)移位 (2)位運(yùn)算技巧 下面1s和0s代表一連串1和0...