原创 dubbo支持的通信協議和序列化協議

dubbo支持的通信協議 dubbo協議   dubbo://192.168.0.1:20188   默認就是走dubbo協議的,單一長連接,NIO異步通信,基於hessian作爲序列化協議   適用的場景就是:傳輸數據量很小(每次請求在

原创 Dubbo架構設計及原理詳解

  Dubbo是Alibaba開源的分佈式服務框架,它最大的特點是按照分層的方式來架構,使用這種方式可以使各個層之間解耦合(或者最大限度地松耦合)。從服務模型的角度來看,Dubbo採用的是一種非常簡單的模型,要麼是提供方提供服務,要麼是消

原创 mysql 主從複製搭建

文章目錄master配置slave配置Issues master配置 1.接入mysql並創建主從複製的用戶 create user m2ssync identified by ‘Qq123!@#’; 2.給新建的用戶賦權 GR

原创 Java NIO 系列教程 (十) ServerSocket 通道

Java NIO中的 ServerSocketChannel 是一個可以監聽新進來的TCP連接的通道,就像標準IO中的ServerSocket一樣。ServerSocketChannel類在 java.nio.channels包中。  這

原创 Java NIO 系列教程 (一) Java NIO 概述

Java NIO 由以下幾個核心部分組成:    Channels Buffers Selectors 雖然Java NIO 中除此之外還有很多類和組件,但在我看來,Channel,Buffer 和 Selector 構成了核心的API。

原创 Java NIO 系列教程 (二) Java NIO vs. IO

Java NIO和IO的主要區別  下表總結了Java NIO和IO之間的主要差別,我會更詳細地描述表中每部分的差異。    IO NIO Stream oriented Buffer oriented Blocking IO Non b

原创 Java NIO 系列教程 (七) 選擇器(Selector)

Selector(選擇器)是Java NIO中能夠檢測一到多個NIO通道,並能夠知曉通道是否爲諸如讀寫事件做好準備的組件。這樣,一個單獨的線程可以管理多個channel,從而管理多個網絡連接。 (1)  爲什麼使用Selector?  僅

原创 Java NIO 系列教程 (九) Socket 通道

Java NIO中的SocketChannel是一個連接到TCP網絡套接字的通道。可以通過以下2種方式創建SocketChannel:    打開一個SocketChannel並連接到互聯網上的某臺服務器。 一個新連接到達ServerSo

原创 項目實戰

 需要聯繫QQ   741757630

原创 Java NIO 系列教程 (四) 緩衝區(Buffer)

Java NIO中的Buffer用於和NIO通道進行交互。如你所知,數據是從通道讀入緩衝區,從緩衝區寫入到通道中的。  緩衝區本質上是一塊可以寫入數據,然後可以從中讀取數據的內存。這塊內存被包裝成NIO Buffer對象,並提供了一組方法

原创 Java NIO 系列教程 (五) 分散(Scatter)/聚集(Gather)

Java NIO開始支持scatter/gather,scatter/gather用於描述從Channel(譯者注:Channel在中文經常翻譯爲通道)中讀取或者寫入到Channel的操作。  分散(scatter)從Channel中讀取

原创 Java NIO 系列教程 (三) 通道(Channel)

Java NIO的通道類似流,但又有些不同:    既可以從通道中讀取數據,又可以寫數據到通道。但流的讀寫通常是單向的。 通道可以異步地讀寫。 通道中的數據總是要先讀到一個Buffer,或者總是要從一個Buffer中寫入。 正如上面所說,

原创 漏桶算法和令牌桶算法

一、問題描述     某天A君突然發現自己的接口請求量突然漲到之前的10倍,沒多久該接口幾乎不可使用,並引發連鎖反應導致整個系統崩潰。如何應對這種情況呢?生活給了我們答案:比如老式電閘都安裝了保險絲,一旦有人使用超大功率的設備,保險絲就會

原创 Java NIO 系列教程 (十一) Datagram 通道

  Java NIO中的DatagramChannel是一個能收發UDP包的通道。因爲UDP是無連接的網絡協議,所以不能像其它通道那樣讀取和寫入。它發送和接收的是數據包。 打開 DatagramChannel  下面是 DatagramC

原创 Java NIO 系列教程 (十二) 管道(Pipe)

Java NIO 管道是2個線程之間的單向數據連接。Pipe有一個source通道和一個sink通道。數據會被寫到sink通道,從source通道讀取。  這裏是Pipe原理的圖示:    創建管道  通過Pipe.open()方法打開