1 Star 0 Fork 33

wangxinxx / zscat-bootx

forked from mallkiller / zscat-bootx 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

qq群 483681368

学习资料和视频 https://pan.baidu.com/s/1jIoLf9O 演示地址 http://www.zscat.top/gw/index 演示地址 http://www.zscat.top/front 前端注册 后端 演示地址 http://www.zscat.top/login http://www.zscat.top/shop/front/index http://www.zscat.top/web/cms/indexS

Spring Boot With Dubbo

主要介绍如何在Spring Boot中整合Dubbo的使用.

注意事项

由于Dubbo的版本并不是特别活跃,加上和Spring Boot的jar包适配等问题,所以请使用最新的Dubbo 3.0.0-SNAPSHOT版本, 目前还有很多工作调整 地址为: https://github.com/linux-china/dubbo3

注册中心(Registry)

目前主要是支持Redis、ZooKeeper和Consul这三个注册中心,主要是这两个服务非常普遍,同时由于Docker的流行,启动这三者个服务也非常简单。

Redis

使用Redis注册中心,需要将在pom.xml中添加对应的redis客户端,代码如下:

     <dependency>
         <groupId>redis.clients</groupId>
         <artifactId>jedis</artifactId>
     </dependency>

对应的配置项为: spring.dubbo.registry = redis://localhost:6379

ZooKeeper

使用ZooKeeper注册中心,需要在pom.xml中添加zookeeper需要的jar包,代码如下:

     <dependency>
         <groupId>org.apache.curator</groupId>
         <artifactId>curator-framework</artifactId>
         <version>2.12.0</version>
     </dependency>
     <dependency>
         <groupId>com.101tec</groupId>
         <artifactId>zkclient</artifactId>
         <version>0.10</version>
     </dependency>

对应的配置项为: spring.dubbo.registry = zookeeper://127.0.0.1:2181

多个zookeeper的配置项为: spring.dubbo.registry = zookeeper://192.168.0.2:2181,192.168.0.3:2181

如何测试

  • 首先使用IntelliJ IDEA导入项目
  • 调用docker-compose启动对应的注册中心: docker-compose up -d
  • 启动 SpringBootDubboServerApplication
  • 启动 SpringBootDubboClientApplication
  • 打开浏览器访问 http://localhost:2080

在 Docker 中运行

  • 调用docker-compose启动对应的注册中心: docker-compose up -d
  • 编译工程 mvn clean package -Dmaven.test.skip
  • 将 server 打包成 docker image : docker build -t dubbo-demo:latest spring-boot-dubbo-server
  • 运行 server (注意修改环境变量) : docker run --rm --name=dubbo-demo -p 20890:20880 -e EXPORT_PORT=20890 -e EXPORT_HOST=YOUR_HOST_HERE -e ZK_HOST=YOUR_HOST_HERE dubbo-demo
  • 启动 SpringBootDubboClientApplication
  • 打开浏览器访问 http://localhost:2080

Spring DevTools注意事项

由于Spring DevTools采用不一样的classloader的机制,所以会导致Dubbo Consumer Bean无法赋值到指定的@Component上,请使用以下规则:

在 src/main/resources/META-INF/spring-devtools.properties 在添加以下代码进行DevTools的classloader屏蔽:

restart.exclude.target-classes=/target/classes/

关于hotspot的模式下,相关Java代码调整后理解生效,可以考虑: http://dcevm.github.io/

如果你的应用是纯Dubbo服务,没有涉及到Web页面,不建议你添加spring-devtools,如果添加了后, 可以通过以下配置项关闭livereload服务,这样可以保证不必要的live reload服务启动。

spring.devtools.livereload.enabled=false

todo

Spring Boot集成

请参看 spring-boot-starter-dubbo

空文件

简介

springboot dubbox shop redis 通用mapper spring mybatis springmvc kafka 商城 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/wangxinxx/zscat-bootx.git
git@gitee.com:wangxinxx/zscat-bootx.git
wangxinxx
zscat-bootx
zscat-bootx
master

搜索帮助