标签:地址 健康 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