微服系列文章
第1篇: “四个维度” 讲明白哪些是微服务!
第2篇: 微服务牵涉的技术生态有什么?
第3篇: 微服务-为什么要有服务发觉与注册?
第4篇: 万字长文,助你吃透Eureka服务发觉模式!
1)微服务为何要使用服务发觉与注册?
前文中提及,微服务独立布署、具有清晰的边界,服务之间通过远程读取来建立复杂的业务功能。那为何要引用服务注册与发觉呢?服务注册与发觉详细要解决哪些问题?
2)对微服务进行动态管理
在微服务构架中,服务诸多,服务之间的相互依赖也错综复杂,无论是服务主动停止,意外死掉,还是由于流量降低对服务实现进行扩容,这些服务数据或状态上的动态变化,都须要尽早的通告至被调用方,被读取方才采取相应的举措。因此,对于服务注册与发觉要实时管理者服务的数据与状态,包括服务的注册上线、服务主动下线,异常服务的剔除。
服务发觉将服务IP、端口等细节通过一个服务名具象给调用者,并动态管理者各个微服务的状态监测、状态更新,服务上线,下线等,这些都是微服务整治的基础,包括,负载均衡,链路跟踪。
对于服务发觉与注册 一般有两种实现方式:服务器端方式,客户端机制。
2)微服务发觉的服务器端方式
客户端(进程内)模式
客户端方式由于在进程内直接读取服务,也称作进程内负载,由于不需要穿透后边服务器,所以客户端方式的功耗耗损比较小。但是,需要在服务内部维护服务注册信息,负载算法等,有一定的代码入侵性微端服务器,对于跨平台,跨语言的支持不太友好。
服务发觉的两种方式各有优缺点,也适用于不同的场景,对于小型应用通常会有单层负载,外层用服务器端负载均衡,内部用客户端负载均衡。下面将重点介绍Netflix的Eureka服务发觉组件,我们会从设计观念与原理,代码实现等多个维度进行解读。
微服系列文章
第1篇: “四个维度” 讲明白哪些是微服务!
第2篇: 微服务牵涉的技术生态有什么?
第3篇: 微服务-为什么要有服务发觉与注册?
第4篇: 万字长文,助你吃透Eureka服务发觉模式!