学习笔记--Dubbo
生活随笔
收集整理的這篇文章主要介紹了
学习笔记--Dubbo
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Dubbo學習筆記
Dubbo是什么
Dubbo是:
- 一款分布式服務框架
- 高性能和透明化的RPC遠程服務調用方案
- SOA服務治理方案
ZooKeeper服務注冊中心
下載 ZooKeeper ,地址 http://www.apache.org/dyn/closer.cgi/zookeeper
解壓,修改zoo_sample.cfg 重命名為zoo.cfg
zoo.cfg主要配置
tickTime=2000 dataDir=/javaee/zookeeper/data dataLogDir=/javaee/zookeeper/log clientPort=2181啟動zookeeper
cd zookeeper-3.3.6/bin ./zkServer.sh start搭建Dubbo Admin,Dubbo的管理界面
從GitHub下載源碼,位置https://github.com/apache/incubator-dubbo-ops
只需要dubbo-admin項目,導入工程,打成war包放到tomcat下跑
創建服務提供者
創建SpringBoot項目
pom.xml如下:
application.properties
## Dubbo 服務提供者配置 spring.dubbo.application.name=provider spring.dubbo.registry.address=zookeeper://127.0.0.1:2181 spring.dubbo.protocol.name=dubbo spring.dubbo.protocol.port=20880 spring.dubbo.scan=com.qyluo.dubbodemo.service實體類Person
package com.qyluo.dubbodemo.service;import com.qyluo.dubbodemo.entity.Person;public interface FindPerson {Person findPersonByName(String name); }服務接口FindPerson
package com.qyluo.dubbodemo.service;import com.qyluo.dubbodemo.entity.Person;public interface FindPerson {Person findPersonByName(String name); }FindPerson實現類
package com.qyluo.dubbodemo.service;import com.alibaba.dubbo.config.annotation.Service; import com.qyluo.dubbodemo.entity.Person;/*** @author qiyao.luo* @create 2018/7/27*/ @Service public class FindPersonImpl implements FindPerson {@Overridepublic Person findPersonByName(String name) {return new Person(name, 10);} }啟動應用
創建服務消費者
SpringBoot項目
pom.xml和服務提供者依賴一樣
application.properties
需要在和服務提供者接口相同的包路徑下創建FindPerson接口
package com.qyluo.dubbodemo.service;import com.qyluo.dubbodemo.entity.Person;public interface FindPerson {Person findPersonByName(String name); }服務調用的類FindPersonConsumer
package com.qyluo.dubbodemo.service.impl;import com.alibaba.dubbo.config.annotation.Reference; import com.qyluo.dubbodemo.service.FindPerson; import org.springframework.stereotype.Service;/*** @author qiyao.luo* @create 2018/7/27*/ @Service public class FindPersonConsumer {@ReferenceFindPerson findPerson;public void printPerson() {String name = "xiaoli";System.out.println(findPerson.findPersonByName(name));} }創建controller
package com.qyluo.dubbodemo.controller;import com.qyluo.dubbodemo.service.impl.FindPersonConsumer; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;/*** @author qiyao.luo* @create 2018/7/27*/ @RestController public class SampleController {@AutowiredFindPersonConsumer findPersonConsumer;@RequestMapping("/test")public void testDubbo() {findPersonConsumer.printPerson();} }訪問http://localhost:8081/test
轉載于:https://www.cnblogs.com/kioluo/p/9516688.html
總結
以上是生活随笔為你收集整理的学习笔记--Dubbo的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 药店电脑怎么收银系统(药店收银员电脑操作
- 下一篇: Ldac笔记本电脑(笔记本ldac蓝牙)