亲宝软件园·资讯

展开

Dubbo监控中心

CoderJerry 人气:0
Dubbo-admin管理控制台目前还没有正式发布,但是源码已托管在github上,我们可以自行下载使用; 目前的管理控制台已经发布0.1版本,结构上采取了前后端分离的方式,前端使用Vue和Vuetify分别作为Javascript框架和UI框架,后端采用Spring Boot框架。既可以按照标准的Maven方式进行打包,部署,也可以采用前后端分离的部署方式,方便开发,功能上,目前具备了服务查询,服务治理(包括Dubbo2.7中新增的治理规则)以及服务测试三部分内容。 因为是源码,所以我们如果是开发过程的话可以直接使用ide运行,部署则需要先进行打包 # 打包过程 ##### 下载源码 使用git命令,或是其他任何git工具从仓库克隆获取源码 地址: https://github.com/apachehttps://img.qb5200.com/download-x/dubbo-admin.git 克隆: ```shell git clone https://github.com/apachehttps://img.qb5200.com/download-x/dubbo-admin.git ``` ##### 根据部署需求修改配置文件 文件位置:`dubbo-admin-server/src/main/resources/application.properties` ```properties #配置中心 统一管理公共配置 admin.config-center=zookeeper://127.0.0.1:2181 #注册中心 admin.registry.address=zookeeper://127.0.0.1:2181 #元数据中心 将元数据信息保存到独立的key-value的存储中,降低注册中心网络开销 #包括 provide和consumer中独有的信息不需要被共享 #(元数据)provider的接口信息,方法信息等 可以放在zookeeper或是redis admin.metadata-report.address=zookeeper://127.0.0.1:2181 # 默认端口8080 如需修改则添加配置 server.port=8080 ``` ##### 打包项目 ```shell #进入源码根目录下 cd dubbo-admin #打包 mvn clean package #若无法通过测试 如注册中心未启动啥的 可用下面的命令跳过测试 mvn install -DskipTests ``` 如果是第一次打包需要下载大量的依赖包, ##### 问题解决 1.默认会下载node9.1.1到maven仓库,下载速度非常慢,如果下载不超过也会导致无法继续打包,我们可以手动从镜像下载后放入maven仓库 镜像地址:https://mirrors.sjtug.sjtu.edu.cn/nodejs-release/v9.11.1/node-v9.11.1-darwin-x64.tar.gz ![image-20200312103948898](/Users/jerry/Library/Application Support/typora-user-images/image-20200312103948898.png) 下载完成后将压缩包放置上图中的本地仓库路径下,然后重新执行打包 2.根据每台机器配置不同某些路径可能没有执行权限,根据错误信息授权即可 ![image-20200312104156350](/Users/jerry/Library/Application Support/typora-user-images/image-20200312104156350.png) 添加执行权限: ```shell chmod + x /Users/jerry/githttps://img.qb5200.com/download-x/dubbo-adminhttps://img.qb5200.com/download-x/dubbo-admin-ui/node/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin/* ``` 若打包成功则会看见maven标志性的build success ![](https://img2020.cnblogs.com/blog/1440878/202003/1440878-20200314231259523-888163401.png) # 部署 部署分为两种方式 ##### 前后端不分离: ```shell #jar文件位置: dubbo-adminhttps://img.qb5200.com/download-x/dubbo-admin-distribution/targethttps://img.qb5200.com/download-x/dubbo-admin-0.1.jar java -jar dubbo-admin-0.1.jar ``` 由于zookeeper使用了netty来实现网络服务,netty会占用8080端口,导致dubbo-admin中的tomcat无法启动,有两种方式指定端口 1.修改配置文件,需要重新打包部署 2.启动时添加参数指定端口 ```shell java -jar dubbo-admin-0.1.jar --server.port=8081 ``` ##### 前后端分离: 前后端分离可以更方便的修改前端页面,使用nodejs作为前端服务器 安装nodejs: ```shell wget https://npm.taobao.org/mirrors/node/v9.9.0/node-v9.9.0-linux-x64.tar.gz ln -s ~/node-v9.9.0-linux-x64/bin/node /usr/bin/node ln -s ~/node-v9.9.0-linux-x64/bin/npm /usr/bin/npx ln -s ~/node-v9.9.0-linux-x64/bin/npm /usr/bin/npm ``` 修改node配置文件: ```shell vim ~https://img.qb5200.com/download-x/dubbo-adminhttps://img.qb5200.com/download-x/dubbo-admin-ui/config/index.js ``` ![](https://img2020.cnblogs.com/blog/1440878/202003/1440878-20200314231327939-779619171.png) **部署成功后可以通过配置文件中dubbo-admin配置文件中指定的用户名和密码登录到监控中心** 我们启动测试工程发布一个服务就可以在监控中心看见服务信息; ![](https://img2020.cnblogs.com/blog/1440878/202003/1440878-20200314231347614-1010110303.png) **特别注意:在监控中心添加的配置会覆盖provide以及consumer中的配置,优先级是最高的;** # Dubbo实战案例: 使用Dubbo将前期练习项目CRM重构为分布式 ![](https://img2020.cnblogs.com/blog/1440878/202003/1440878-20200314231412127-1809437863.png) 重构后构架: ![](https://img2020.cnblogs.com/blog/1440878/202003/1440878-20200314231433956-1395386755.png) 工程结构: ![](https://img2020.cnblogs.com/blog/1440878/202003/1440878-20200314231455149-734668941.png) **最后必须要强调的一点,若某个非内置类型的对象需要在dubbo协议中传递时(例如User,Customer)则必须保证该类型实现了Serializable接口** 错误: ![](https://img2020.cnblogs.com/blog/1440878/202003/1440878-20200314231509511-1915695421.png) curator-framework版本太低

加载全部内容

相关教程
猜你喜欢
用户评论