SpringMVC集成阿里的dubbo框架

 Dubbo |ˈDʌBəʊ|是一個高性能的基於RPC的java開源框架由阿里巴巴 (摘錄自dubbo.io官方網站)

下面我們來整合下Maven+Spring+dubbo。提供一個服務者服務

1、使用zookeeper註冊中心暴露服務地址,需要下載zookeeper-3.4.6,並安裝配置zookeeper.

     共享鏈接:鏈接:https://pan.baidu.com/s/1geYmFrP 密碼:19lz

1、先將zookeeper解壓
	2、進入zookeeper-3.4.6\conf
	3、將zoo_sample.cfg 重命名爲 zoo.cfg 
	4、打開並編輯dataDir=D:\\Java\\Tool\\zookeeper-3.4.6\\tmp
	5. 與Java中的做法類似,我們在系統環境變量中添加:
  	a. 在系統變量中添加ZOOKEEPER_HOME = D:\Java\Tool\zookeeper-3.4.6
  	b. 編輯path系統變量,添加爲路徑%ZOOKEEPER_HOME%\bin;
	6. 在zoo.cfg文件中修改默認的Zookeeper端口(默認端口2181)
	
	7、打開cmd 輸入zkServer 啓動Zookeeper

2、在項目中添加相關的依賴

 


3、編寫服務類並配置spring.xml

 




4、啓動服務

5、我們添加一個dubbo服務的監控的war包,把它放到tomcat下,下載地址:鏈接:https://pan.baidu.com/s/1eREBYts 密碼:bri7

下載dubbo-admin-2.4.1.war包,在Linuxtomcat部署,先把dubbo-admin-2.4.1放在tomcatwebapps/ROOT下,然後進行解壓:

        #jar -xvf dubbo-admin-2.4.1.war

    (2)然後到webapps/ROOT/WEB-INF下,有一個dubbo.properties文件,裏面指向Zookeeper ,使用的是Zookeeper 的註冊中心,內容爲:

dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.admin.root.password=root
dubbo.admin.guest.password=guest

       

   (3)然後啓動tomcat服務,用戶名和密碼:root,並訪問服務,顯示登陸頁面,說明dubbo-admin部署成功,如圖所示:






我們可以看到我們發佈的服務:


到此爲止我們的服務已經發布出去了,下一步我們將實現服務接口的調用

在上面我們創建了服務,我們還需要提供一個jar包,裏面包含我們的接口。單純的一個java小項目然後導出成一個jar包就可以,如圖:



導出的jar包放到我們的customer項目中。然後加入到build path中。

customer項目中的pom.xml和上面一樣,只是spring.xml內容不一樣了,如圖



這裏我們訂閱了zookeeper註冊中心的這個服務,調用:

package com.zpl.customer.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.zpl.dubbo.IDubboProviderService;

@Controller
public class DubboCustomerController {
	@Autowired
	private IDubboProviderService demoService;
	@RequestMapping("hello")
	public void say(String str){
		String s=demoService.sayHello("你好啊");
		System.out.println(s);
	}
}
啓動服務後我們可以看到打印出來: Hello 你好啊。


有一點忘記說了。

在spring.xml中引用dubbo標籤的時候報錯,原因是我們沒有將dubbo的xsd文件引進來,我們需要在maven本地倉庫中找到阿里的dubbo.jar包。解壓後找到dubbo.xsd

這個文件,然後配置到eclipse的xml設置中,如:


這樣以後clean下項目 然後maven update下就可以了。

dubbo的使用這裏只是簡單的應用,後期如果用到複雜的遇到問題我們在說。。。


有必要說下zookeeper:

稍後補充:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章