微服务中,最重要的就是服务注册中心,在springcloud的体系中,一般常用的注册中心,就是eureka和consul。因为springcloud默认使用的是eureka,所以我们在工作中也是选择的eureka作为微服务体系中的服务注册中心。
优势
eureka和spring整个体系结合的比较紧密,部署方式简单,并且部署之后,自带有简单web页面来查看服务状态和一些简单的健康检查
eureka是通过java进行开发的,对于java体系栈的团队来说更加友好
eureka是保证CAP中的A(高可用)、P(分区容忍)
可以通过http的方式请求eureka的数据,相对获取数据比较简单
劣势
eureka只能通过自带的metedata存储一些数据,并且metedata是挂载实例级别的。不提供kv的存储,没办法针对服务级别设置对应的属性
对于同一个服务,默认不具备服务分组或者打标签的功能,对于一个注册中心里面的所有服务都是一样的
eureka目前不支持watch功能,只能通过轮训去更新服务状态,如果服务多的话,那么相对的造成服务器的压力会比较大,相对性能会比较差一点。不过目前我们的服务个数在100个之内,所以性能不是主要问题