zookeeper 密码_阿里资深JAVA架构带你深度剖析dubbo和zookeeper关系
為什么要用dubbo?
當網站規模達到了一定的量級的時候,普通的MVC框架已經不能滿足我們的需求,于是分布式的服務框架和流動式的架構就凸顯出來了。
單一應用架構
當網站流量很小時,只需一個應用,將所有功能都部署在一起,以減少部署節點和成本。此時,用于簡化增刪改查工作量的數據訪問框架(ORM) 是關鍵。
垂直應用架構
當訪問量逐漸增大,單一應用增加機器帶來的加速度越來越小,將應用拆成互不相干的幾個應用,以提升效率。此時,用于加速前端頁面開發的Web框架(MVC) 是關鍵。
分布式服務架構
當垂直應用越來越多,應用之間交互不可避免,將核心業務抽取出來,作為獨立的服務,逐漸形成穩定的服務中心,使前端應用能更快速的響應多變的市場需求。
此時,用于提高業務復用及整合的分布式服務框架(RPC) 是關鍵。
流動計算架構
當服務越來越多,容量的評估,小服務資源的浪費等問題逐漸顯現,此時需增加一個調度中心基于訪問壓力實時管理集群容量,提高集群利用率。
此時,用于提高機器利用率的資源調度和治理中心(SOA) 是關鍵。
廢話不多說,先搭建一個看看是怎么一回事?–
目前對我來說就是,我A工程想調用B工程中的方法怎么辦?我import不進來啊,這時候我就需要遠程調用的方法了,怎么遠程調用呢?dobbu給我提供了一個好的開源框架,那我就用它來操作吧!
dubbo和zookeeper啥關系?
簡單來說打個比方:dubbo就是動物園的動物,zookeeper是動物園。如果游客想看動物的話那么就去動物園看。比如你要看老虎,那么動物園有你才能看到。換句話說我們把很多不同的dubbo(動物)放到zookeeper(動物園中)提供給我們游客進行觀賞。這個過程中三個關鍵:場所、供給者、消費者。
再說一個分布式的項目,server(消費)層與 service(供給)層被拆分了開來, 部署在不同的tomcat中, 我在server層需要調用 service層的接口,但是兩個運行在不同tomcat下的服務無法直接互調接口,那么就可以通過zookeeper和dubbo實現。就好比把動物放到動物園,我們要看了直接去動物園就行。而不能直接去動物生活的地方去看,會有性命安全之憂(比如你去看老虎)。
我們通過dubbo 建立service這個服務,并且到zookeeper上面注冊,填寫對應的zookeeper服務所在 的IP及端口號。
下面我們的server層需要來調用 service接口了,由于在不同的工程中,它是無法直接找到service接口的,我們使用dubbo再來引用注冊進入的dubbo服務。
我們先填寫zookeeper服務所在 的IP及端口號,再填寫我們需要調用的接口名字。
這樣,就能實現調用。。。
搭建簡單的dubbo
1.下載zookeeperhttp://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.5.3-beta/zookeeper-3.5.3-beta.tar.gz
2.配置:
zookeeper的配置文件在conf目錄,有zoo_sample.cfg 和 log4j.properties,將zoo_sample.cfg 重命名成zoo.cfg,因為 zookeeper 在啟動時會找這個文件作為默認配置文件。
3.修改zoo.cfg.
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=D:\\server\\zookeeper-3.5.3-beta\\data
dataLogDir=D:\\server\\zookeeper-3.5.3-beta\\log
#dataDir=/tmp/zookeeper
從上面代碼可以看到添加了兩行。在本機里。zookeeper放在D盤里,然后就添加了dataDir及dataLogDir兩個變量。與此同時在zookeeper文件根目錄下新建data及log兩個文件夾,如果不創建,后面運行腳本是會報錯。
完成后,進入bin目錄,運行zkServer.cmd腳本,然后就可以在單機上將zookeeper跑起來了。
剩下來的事情就是去配置DUBBO的XML文件了,通過IP地址的設置,提供本地的服務。
管理中心(動物園)和供給者(各種動物),消費者(萬千游客)
dubbo的使用,其實只需要有管理中心(動物園)和供給者(各種動物),消費者(萬千游客)這三個就可以使用了,但是并不能看到有哪些消費者和提供者,為了更好的調試,發現問題,解決問題,因此引入dubbo-admin。通過dubbo-admin可以對消費者和提供者進行管理。
dubbo-admin的下載,可自行到官網下載:https://github.com/alibaba/dubbo
下載下來是這樣的一個目錄結構:
這里我們只關心dubbo-admin這個文件夾,將dubbo-addmin打成war包,war包網上也有,但是下載了很多下來都會有問題,原因是每個人的電腦配置環境不一樣,因此我們自己打包一個war就好。
打包war包,進入dubbo-admin這個文件目錄 運行命令:
mvn package
如果看到下圖結果,說明打包成功了:
打包成功之后,就會發現dubbo-admin下多了個target文件夾,打開target文件夾,發現里面有個war包:
把dubbo-admin-2.5.7.war文件復制到tomcat的webapps目錄下,
在tomcat的bin目錄下運行:tomcat8.0w.exe
它會自動在webapps下生成一個文件夾,然后關閉tomcat8.0w.exe,修改端口號改成9090
然后啟動在bin目錄下啟動tomcat8.0.exe即可:
啟動后,輸入
http://localhost:9090/dubbo-admin-2.5.7/
然后會提示你輸入用戶名和密碼—-都是root
這個和你的配置文件里面的內容是相關的:
D:\server\Tomcat 8.5\webapps\dubbo-admin-2.5.7\WEB-INF
我的目錄如圖上所示,里面有一個dubbo.properties的文件:
dubbo.registry.address=zookeeper://127.0.0.1:2181dubbo.admin.root.password=root dubbo.admin.guest.password=guest
成功輸入以后:
到此這篇關于文章就結束了!
上述面試題答案都整理成文檔筆記。也還整理了一些面試資料&最新2020收集的一些大廠的面試真題(都整理成文檔,小部分截圖),有需要的可以?點擊進入 查看領取資料。
點關注,不迷路!如果本文對你有幫助的話不要忘記點贊支持哦!
總結
以上是生活随笔為你收集整理的zookeeper 密码_阿里资深JAVA架构带你深度剖析dubbo和zookeeper关系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 天玑8100真香机诞生:realme G
- 下一篇: html中 一条样式规则,css规则的基