服务注册与发现怎样工作?
查看完整题解
参考回答
直接回答
服务实例通过选定注册机制登记位置和状态,调用方查询或缓存实例列表,再配合负载分配发起请求。Boot可运行服务,具体发现由匹配的Cloud实现或平台提供。注册成功不代表实例已经业务就绪,发现到地址也不保证下一次调用一定成功。
讲清原理
实例启动、心跳、摘除与调用方缓存都可能存在延迟,因此还需超时、重试与故障转移。平台DNS和注册中心是不同方案,不能因为所有服务用了Boot就假定必须部署同一种中心。
注册信息中的服务名、实例标识和地址应明确,优雅关闭要与停止接流、在途请求和摘除顺序配合。发现机制本身也需访问控制和故障设计,不应允许任意未知实例加入关键服务。
例子与易错点
验证实例变更与过期缓存,不只测首次注册。不要把不健康实例从列表消失的时间当作零,也不要用无限重试掩盖发现延迟。
相关题:第 22 题、第 39 题、第 41 题、第 50 题。
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。