标签:地址 健康 pool metrics 集群 注意 方案 多语言 imp
| Feature | euerka | Consul | zookeeper | etcd |
|---|---|---|---|---|
| 服务健康检查 | 可配支持 | 服务状态,内存,硬盘等 | (弱)长连接,keepalive | 连接心跳 |
| 多数据中心 | — | 支持 | — | — |
| kv 存储服务 | — | 支持 | 支持 | 支持 |
| 一致性 | — | raft | paxos | raft |
| cap | ap | ca | cp | cp |
| 使用接口(多语言能力) | http(sidecar) | 支持 http 和 dns | 客户端 | http/grpc |
| watch 支持 | 支持 long polling/大部分增量 | 全量/支持long polling | 支持 | 支持 long polling |
| 自身监控 | metrics | metrics | — | metrics |
| 安全 | — | acl /https | acl | https 支持(弱) |
| spring cloud 集成 | 已支持 | 已支持 | 已支持 | 已支持 |
Consul是一个服务网格(微服务间的 TCP/IP,负责服务之间的网络调用、限流、熔断和监控)解决方案,它是一个一个分布式的,高度可用的系统,而且开发使用都很简便。它提供了一个功能齐全的控制平面,
主要特点是:服务发现、健康检查、键值存储、安全服务通信、多数据中心。
下载地址:
https://www.consul.io/downloads
安装完成后找到路径

使用cmd打开黑窗口,使用agent 的开发模式启动

注意有一个是udp短连接,管理地址 选择是HTTP 127.0.0.1:8500

管理界面打开展示:

consul 放在项目中(单机版):
pom:
引入consul
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
健康检查依赖于此包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
yml
spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/2pc?useSSL=false username: root password: 123 type: com.alibaba.druid.pool.DruidDataSource application: name: study-edu-order cloud: consul: host: localhost port: 8500 discovery: hostname: eureka9001.com service-name: consul-1 mybatis: configuration: map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
启动类:
@SpringBootApplication public class OrderAppApplication { public static void main(String[] args) { SpringApplication.run(OrderAppApplication.class, args); } }
直接启动项目就会注册到consul上

标签:地址 健康 pool metrics 集群 注意 方案 多语言 imp
原文地址:https://www.cnblogs.com/alomsc/p/13260716.html