当前位置: 首页 > news >正文

Spring Cloud 之 Consul 与 Consul 服务剔除

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bitree1/article/details/83270624

1.简介

Consul有多个组件,但总体而言,它是基础架构中的一款服务发现和配置的工具。 它提供了几个关键功能:

(1)服务发现:Consul client 可以提供服务,例如api或mysql,也可以使用Consul client来发现指定服务的提供者。 使用DNS或HTTP,应用程序可以轻松找到他们所依赖的服务。

(2)健康检查:Consul client 可以提供任何数量的健康检查,或者与给定的服务(“Web服务器是否返回200 OK”),或与本地节点(“内存利用率是否低于90%”)相关联。 可以使用此信息来监控集群运行状况,服务发现组件使用此信息将流量从有问题的主机中移除出去。

(3)KV Store:应用程序可以使用Consul的分层键/值存储,包括动态配置,功能标记,协调,leader选举等等。 简单的HTTP API使其易于使用。

(4)多数据中心:Consul支持多个数据中心。 这意味着Consul的用户不必担心构建额外的抽象层以扩展到多个区域。

 Consul旨在对DevOps社区和应用程序开发人员友好,使其成为现代化,弹性基础架构的完美选择。

2.优点

consul由GO语言开发,是专门用来做服务发现的,具有服务注册、服务必现、服务检测、UI管理、命令管理、API管理、数据存储等;且spring在此基础上做了封装,优先采用;

3.踩坑点

1)背景:使用springcloud项目久了,就发现了consul作为注册中心的一大缺点,不利于使用,踩了不少坑,注册中心内的服务许手动删除,不然历史注册的已停止服务的错误节点就影响使用,比如如下情况:

开启springboot项目老是有个僵尸在,把所有java程序都关了还存在,可是压根都没起服务,更加没设置过那种端口

还比如现在明明起了一个服务第一个,却有好几个服务在线,都是我的ip

进过深入研究发现 ----注册中心内的服务许手动删除

2)手动删除方法:

      删除无效服务:

      http://ip:8500/v1/agent/service/deregister/服务名称

      sic-user-9003 这种为服务名称

     删除无效节点:

     http://ip:8500/v1/agent/force-leave/节点名

     4b36b27317a0 这种为节点名(也就是容器id)

截图如下:


将不定期更新资源,欢迎持续关注

想获得更多的学习知识请关注微信公众号:西北码农或扫下方二维码

相关文章:

  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 在ABAP里取得一个数据库表记录数的两种方法
  • 【Unity Shader】Shader基础
  • vue项目使用微信公众号支付
  • 你连这10个工具都不知道,还是程序员?
  • DDL语言
  • BZOJ 1568: [JSOI2008]Blue Mary开公司
  • Ubuntu 16.04 下 安装go
  • PHP CLI应用的调试原理
  • springboot入门_email
  • Python MetaClass深入分析
  • Python中常见的字符串的操作方法:
  • 记录LNMP多主机架构Wordpress博客实施过程中的一些坑
  • 表单提交时问题总结
  • iOS:The operation couldn’t be completed. (DVTCoreSimulatorAdditionsErrorDomain error 0.)
  • [PHP内核探索]PHP中的哈希表
  • “大数据应用场景”之隔壁老王(连载四)
  • 【node学习】协程
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • 11111111
  • C++类中的特殊成员函数
  • create-react-app做的留言板
  • C语言笔记(第一章:C语言编程)
  • gcc介绍及安装
  • Go 语言编译器的 //go: 详解
  • iOS编译提示和导航提示
  • Koa2 之文件上传下载
  • log4j2输出到kafka
  • Mithril.js 入门介绍
  • Mybatis初体验
  • mysql常用命令汇总
  • SpriteKit 技巧之添加背景图片
  • TypeScript实现数据结构(一)栈,队列,链表
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 回流、重绘及其优化
  • 力扣(LeetCode)965
  • 什么软件可以剪辑音乐?
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 思否第一天
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 我的面试准备过程--容器(更新中)
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • ​Spring Boot 分片上传文件
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • #微信小程序:微信小程序常见的配置传旨
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (Java)【深基9.例1】选举学生会
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (三)终结任务
  • (十七)Flask之大型项目目录结构示例【二扣蓝图】
  • (万字长文)Spring的核心知识尽揽其中
  • (转)详解PHP处理密码的几种方式
  • .NET 8.0 发布到 IIS