1 Unstar Star 0 Fork 220

os-teradata / spring-cloud-booksJava

forked from coderush / spring-cloud-books 
Create your Gitee Account
Explore and code with more than 5 million developers,Free private repositories !:)
Sign up
This repository doesn't specify license. Without author's permission, this code is only for learning and cannot be used for other purposes.
服务端为书籍crud操作。除了springcloud全家桶,扩展增加hikariCP,swagger2,JWT(json web token),lombok,spring-data-redis spread retract

Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

#spring-cloud-books

使用

1.根目录执行mvn clean install后,将所有war包放在document/run文件夹下 2.点击run-all.bat批量按顺序执行war包 启动时请等待,直到启动完一个,再按回车继续启动下一个 3.也可以按照自己需求启动每个项目的bat文件

以下按照启动顺序依次介绍各项目

配置中心

访问svn上配置文件所处位置,比如svn上某个地址 svn://xxx.xxx.xxx.xxx/project_name/docs 访问 http://localhost:8000/api/dev/docs 即显示docs目录下api-dev.properties文件中相关配置信息

服务发现

访问http://localhost:8001/discovery/ 界面如下: 输入图片说明

之后相应的服务启动后,刷新页面后可见已被发现的服务 输入图片说明

服务端

访问http://localhost:8002/swagger-ui.html 可以查看swagger文档,如下图: 输入图片说明 相应技术为springboot+mysql+mybatis+hikariCP

API网关

访问http://localhost:8005/swagger-ui.html ,如下图: 输入图片说明

可查看相关接口,目前这里只是利用json web token做了一个鉴定请求是否有权调用服务端的安全验证功能,还有就是路由功能

客户端

访问http://localhost:8004/consumer/10

返回的json数据结果如下图: 输入图片说明

这里是通过访问api网关,获取token放入请求的header中,然后请求服务端接口获取数据。 目前只做了查询bookID的功能,可自行扩展其它crud操作,如 http://localhost:8002/swagger-ui.html 中的各接口 这里还包括了负载均衡和熔断器功能,如果服务端访问不了,会访问相关故障信息,如下: ​

 {
 "code": -99,
 "message": "无法访问服务,该服务可能由于某种未知原因被关闭。请重启服务!",
 "data": null
 }

swagger文档,如下图:

输入图片说明

服务监控控制台

访问http://localhost:8005/hystrix.steam 可以查看某服务在一个server节点或多个server节点上的实时运行情况 比如在搜索框输入 http://localhost:8004/hystrix.stream ,并在title输入框取名hystrix-8004 (注意在点击monitor stream按钮前,先运行 http://localhost:8004/consumer/10 ),结果如下图 输入图片说明

聚合服务节点

可在 http://localhost:8005/hystrix.steam 搜索框输入 http://localhost:8006/turbine.stream , 并在title输入框取名turbine-8006,看下列结果 输入图片说明

这里因为服务只在我本机上部署,因此上述两张图是一样的,如果服务还部署在另外一台或多台server上,第二张图会显示多个server运行服务情况。如果此时有很多访问 http://localhost:8004/consumer/10 的请求,我们可以看见实时运行情况,如下图 输入图片说明

Actuator

每个项目的info信息都是直接从maven的pom文件中读取,具体可参考各个项目的resources目录下的application和application-test属性文件

#查看info信息配置
info.app.name=@project.name@
info.app.description=@project.description@
info.app.version=@project.version@

下列这些图是展示服务端,API网关,消费端的info信息

输入图片说明 输入图片说明 输入图片说明

Comments ( 0 )

Sign in for post a comment

Java
1
https://gitee.com/HuLyndon/spring-cloud-books.git
git@gitee.com:HuLyndon/spring-cloud-books.git
HuLyndon
spring-cloud-books
spring-cloud-books
master

Search

131423 f1aaba0b 1899542 094922 1c74bed3 1899542