这是正在研发的Dubbo Admin,这一版Dubbo Admin名称改成了Dubbo OPS,目前功能简陋,不建议使用(2018/11月)。架构上使用了前后端分离。前端使用Vue实现,后端使用Spring Boot实现。在安装之前你需要先安装Node和NPM用于运行前端项目。成功安装后长这样:
前端部分
项目:dubbo-admin-frontend
使用Vue.js作为javascript框架,Vuetify作为UI框架
后端部分
项目:dubbo-admin-backend
标准spring boot工程
图
下载项目
GitHub 项目地址:
https://github.com/apache/incubator-dubbo-ops
git clone https://github.com/apache/incubator-dubbo-ops.git
把项目clone下来后有
后端项目:dubbo-admin-backend
前端项目:dubbo-admin-frontend
生产环境配置
1、修改注册中心地址
在application-production.properties
中指定注册中心地址
dubbo-admin-backend/src/resources/application-production.properties
2、构建项目
mvn clean package
3、启动项目
mvn --projects dubbo-admin-backend spring-boot:run
4、访问
5、Swagger 支持
部署完成后,可以访问ip:port来查看所有的restful api
http://localhost:8080/swagger-ui.html
开发环境配置
项目:dubbo-admin-backend
是一个标准spring boot工程,可以在任何java IDE中运行它
package org.apache.dubbo.admin;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
@SpringBootApplication
public class DubboAdminApplication {
public static void main(String[] args) {
ApplicationContext act = SpringApplication.run(DubboAdminApplication.class, args);
SpringUtil.setApplicationContext(act);
}
}
项目:dubbo admin frontend
由npm管理和构建,在开发环境中,可以单独运行
构建安装程序
nodejs环境将自行安装,本文不介绍
# install dependencies
$ npm install
# serve with hot reload at localhost:8081
$ npm run dev
> dubbo-admin-frontend@1.0.0 dev F:\OpenSource\incubator-dubbo-ops\dubbo-admin-frontend
> webpack-dev-server --inline --progress --config build/webpack.dev.conf.js
95% emitting DONE Compiled successfully in 11312ms16:18:31
I Your application is running here: http://localhost:8081
页面访问 Dubbo OPS
访问 http://localhost:8081
, 由于前后端分开部署,前端支持热加载,任何页面的修改都可以实时反馈,不需要重启应用。
图1
图2
跨域问题
为了方便开发,我们提供了这种前后端分离的部署模式,主要的好处是支持前端热部署,在这种模式下,前端会通过8080端口访问后端的restful api接口,获取数据, 这将导致跨域访问的问题。因此我们在dubbo-admin-frontend/config/index.js
添加了支持跨域访问的配置,当前端通过npm run dev
单独启动时,这些配置将被激活,允许跨域访问
往期精彩文章
- 双十一瞬间点击量过万,Redis热点 Key 问题发现与5种解决方案
- Redis 助力双十一背后电商秒杀系统
- Redis 集群下的RedLock算法(真分布式锁) 实践
- Redis 服务器被攻击后该如何安全加固
- Redis 缓存穿透,缓存雪崩解决方案分析
- 理解:JWT鉴权的应用场景及使用建议
- 架构:通过案例读懂 RESTful 架构风格
- 架构:大数据推荐系统实时架构和离线架构
- 数据库:MySQL 从删库到恢复,还用跑路吗
- 微服务:架构下静态数据通用缓存机制
- 微服务:小型系统如何“微服务”开发
- 中间件:应用消息中间件设计可以解决哪些实际问题?
- 面试题:40道Redis面试题含答案
- 面试题:96道Java面试题和答案
- 面试题:70道Spring面试题和答案
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。