原创 如何保證kafka的高可用性

  (1)kafka的一個基本架構:多個broker組成,一個broker是一個節點;你創建一個topic,這個topic可以劃分成多個partition,每個partition可以存在於不同的broker上面,每個partition存放

原创 java面試---IO與NIO

一、概念      NIO即New IO,這個庫是在JDK1.4中才引入的。NIO和IO有相同的作用和目的,但實現方式不同,NIO主要用到的是塊,所以NIO的效率要比IO高很多。在Java API中提供了兩套NIO,一套是針對標準輸入輸出

原创 java面試---servlet+jsp

1、說一說Servlet生命週期 Servlet的生命週期分爲三部分 初始化:Web容器加載servlet,調用init()方法進行初始化。 處理請求:當請求到達時,運行其service()方法。Service()會根據表單的請求類型調用

原创 Dubbo架構圖和Dubbo執行流程

Dubbo架構圖 從架構圖可以看出,Consumer服務消費者,Provider服務提供者。Container服務容器。消費當然是invoke提供者了,invoke這條實線按照圖上的說明當然是同步的意思了。但是在實際調用過程中,Prov

原创 Spring 註解驅動開發(AOP面向切面編程)

AOP:【動態代理】指在程序運行期間動態的將某段代碼切入到指定方法指定位置進行運行的編程方式;【1】導入 aop 模塊;Spring AOP:(spring-aspects);【2】定義一個業務邏輯類(MathCalculator),在業

原创 java面試---Socket

1. 對套接字編程的理解,它的協議是如何的? socket通常稱爲“套接字”,用於描述IP地址和端口,是一個通信鏈的句柄。應用程序通過套接字向網絡發出請求或應答網絡請求。 服務器和客戶端通過socket進行交互。服務器需要綁定在本機的某個

原创 docker快速安裝rabbitmq

 一、找到需要的鏡像,management是帶界面的  docker search rabbitmq:management  如圖所示,我們安裝帶界面的rabbitmq:  二、現在我們來下載rabbitmq docker pull

原创 Java面試---Spring Boot

目錄   一、談談你對 SpringBoot 的理解 二、Spring 和 SpringBoot 有什麼不同 三、SpringBoot 與 Spring Cloud 的區別 四、SpringBoot 中的 application.prop

原创 Kafka如何保證消息的可靠性傳輸

1.消費端弄丟了數據 唯一可能導致消費者弄丟數據的情況,就是說,你消費到了這個消息,然後消費者那邊自動提交了 offset,讓 Kafka 以爲你已經消費好了這個消息,但其實你纔剛準備處理這個消息,你還沒處理,你自己就掛了,此時這條消息就

原创 java面試---webservice

一、webservice  簡單的說WebService是一個SOA(面向服務的編程)的架構,它是不依賴於語言,不依賴於平臺,可以實現不同的語言(通過 xml 描述)間的相互調用,通過Internet進行基於Http協議的網絡應用間的交互

原创 Nginx 負載均衡算法有哪些

1.輪詢(round robin)(默認) 輪詢方式,依次將請求分配到各個後臺服務器中,默認的負載均衡方式。  適用於後臺機器性能一致的情況。  掛掉的機器可以自動從服務列表中剔除。 2.加權(weight) 根據權重來分發請求到不同的機

原创 消息隊列kafka、activemq、ribbitmq的倆種消息模式區別

JMS規範目前支持兩種消息模型:點對點(point to point, queue)和發佈/訂閱(publish/subscribe,topic)。 1.1、點對點:Queue,不可重複消費 消息生產者生產消息發送到queue中,然後消息

原创 kafka是如何保證消息不被重複消費的

一、kafka自帶的消費機制   kafka有個offset的概念,當每個消息被寫進去後,都有一個offset,代表他的序號,然後consumer消費該數據之後,隔一段時間,會把自己消費過的消息的offset提交一下,代表我已經消費過了。

原创 Netty概念、優勢及應用場景

Netty概念、優勢及應用場景 什麼是Netty? 1)本質:JBoss做的一個Jar包 2)目的:快速開發高性能、高可靠性的網絡服務器和客戶端程序 3)優點:提供異步的、事件驅動的網絡應用程序框架和工具 爲什麼要用Netty?