使用IDEA搭建springcloud微服务(五)----微服务运行展示

一、工具及说明
开发工具:IntelliJ IDEA 2018.2.2 (Ultimate Edition)
框架:spring boot 2.0.8、spring cloud Finchley.SR2

以通用户ID获取用户信息为例,搭建一套spring cloud微服务系统。
需要搭建一个父工程spring-cloud,一个服务注册中心eureka-server,两个微服务cloud-client,cloud-provider。
两个微服务均注册到服务注册中心。
在这里插入图片描述

二、微服务运行展示

  1. 运行
    依次启动cloud-discovery、cloud-provider、cloud-client,三个项目分别对应的端口为8080、8081、8082.
    使用IDEA搭建springcloud微服务(五)----微服务运行展示_第1张图片
  2. 服务注册中心WEB界面,
    在浏览器打开http://localhost:8080,即进入登陆界面。
    对应输入basic认证的用户名user和密码123456,进入监控页面。
    在监控页面可以看到:服务注册中心的主机名称、已经注册的微服务及状态、服务注册中心的注册地址等等。
    使用IDEA搭建springcloud微服务(五)----微服务运行展示_第2张图片
  3. 调用接口。
    在浏览器输入http://localhost:8082/user/1,调用cloud-client获取用户信息的接口,cloud-client会通过Feign请求cloud-provider对应接口,返回用户信息。
    使用IDEA搭建springcloud微服务(五)----微服务运行展示_第3张图片使用IDEA搭建springcloud微服务(五)----微服务运行展示_第4张图片
  4. 健康检查actuactor/health。
    访问http://localhost:8082/actuactor/health,或http://localhost:8081/actuactor/health。
    可以获得对应微服务的健康状态,UP是正常。这个用处不是很大。
    使用IDEA搭建springcloud微服务(五)----微服务运行展示_第5张图片
  5. 获取微服务的运行环境信息actuactor/env。
    访问http://localhost:8082/actuactor/env,或http://localhost:8081/actuactor/env。
    可以查看对应微服务完整的运行环境信息,非常有用。
    使用IDEA搭建springcloud微服务(五)----微服务运行展示_第6张图片
  6. 大部分可用节点见下表。
节点 节点描述 默认启用
auditevents 公开当前应用程序的审核事件信息
beans 显示应用程序中所有Spring bean的完整列表。
conditions 显示在配置和自动配置类上评估的条件以及它们匹配或不匹配的原因。
configprops 显示所有的整理列表@ConfigurationProperties。
env 露出Spring的属性ConfigurableEnvironment。
health 显示应用健康信息。
httptrace 显示HTTP跟踪信息(默认情况下,最后100个HTTP请求 - 响应交换)。
info 显示任意应用信息。
loggers 显示和修改应用程序中记录器的配置。
metrics 显示当前应用程序的“指标”信息。
mappings 显示所有@RequestMapping路径的整理列表。
scheduledtasks 显示应用程序中的计划任务。
shutdown 允许应用程序正常关闭。
threaddump 执行线程转储。
sessions 允许从Spring Session支持的会话存储中检索和删除用户会话。使用Spring Session对响应式Web应用程序的支持时不可用。
  1. 一个简单的微服务集群就搭建完成了,是不是很简单。
    但要构建一个高可用的微服务集群,还需要做一些调整,加入一些配套微服务和功能,加入一些方便维护的监控微服务和功能。

    **高可用:**首先服务注册中心至少得有两个实例,各个微服务至少两个以上的实例,这样才能其中一个异常停止服务后,还能对外提供服务;

    **配套微服务和功能:**配置中心、网关、负载均衡、断路器等;

    **监控微服务和功能:**断路器监控、链路追踪监控、健康监控、日志管理工具等等。

    下一节将开始搭建高可用的微服务集群。

你可能感兴趣的:(spring,cloud)