您是否使用IP:端口地址直接调用服务开发经验?在这里省略了500个单词的痛苦体验...,这种方式的缺点:
注册中心的使用可以实现服务治理,动态服务扩展以及服务呼叫的负载平衡。完整的呼叫链接示例如下:
使用SpringCloud时,通常使用Eureka和NACOS作为注册中心。如何选择?
推荐春季靴基本教程和实际战斗示例:https://github.com/javastacks/spring-boot-practice
架构示意图如下:
服务提供者
在注册中心注册,续签合同,离线并获取注册表。服务注册成功后,心跳会定期发送到注册中心,以确保不取消服务。
注册中心
存储服务实例,定期扫描注册形式,并消除过期的服务实例。通过同步复制来实现高可用性。先获取注册表,然后将自己注册到其他注册中心。它属于AP模式。在实际项目中,根据环境,例如开发,测试,产品配置不同的注册中心,如果不同的项目使用统一的注册中心,则只能根据服务名称进行区分。
关注尤里卡自我保护机制。如果在到期期间消除了大量的服务示例,则注册中心将进入自我保护模式。注册表中的信息不再消除。目的是提高尤里卡的可用性。默认情况下,统计心跳失败比率在15分钟内小于85%。如果不到85%,尤里卡服务器将保护这些实例,以免这些实例不过期。
说出痛苦的在线体验,错误描述如下:
当时,服务部署成功。在尤里卡注册中心,该服务已成功注册。但是,当通过网关将正面请求重新发布到服务时,服务呼叫不成功。Nginx重新发布,网关重新发布正在确认问题发生的位置。经过多次酷刑,该网关将直接通过IP地址转发到在线服务,以快速解决该问题。
遵循-up,重新注册,应为尤里卡的自我保护机制,该机制引起问题。在注册中心注册的服务是不可用的服务,但是由于自我保护机制,Eureka Server并未消除无效的服务。
随后的解决方案是阐明自我保护机制,以减少更新的质心股份的比例。在Eureka服务器端,如果出现无效的服务,将删除该服务。
NACOS是SpringCloud的延伸。注册中心功能通过nacosdiscoveryclient继承了发现。在SpringCloud中,它可以使用Eureka切换而无需入侵。注册中心可以手动消除服务实例,通知客户端通过消息更新缓存实例信息,完整的调用链接示例如下:
在弹簧云中引入NACOS时,请参阅该图所示的官方网站的特定版本:
NACOS专注于理解其域模型NACOS数据模型密钥由三个元组,名称空间命名空间,组组,服务服务确定。有关详细信息,请参阅官方网站NACOS Architecture。
与尤里卡(Eureka)相比,NACOS如下:
原始链接:https://blog.csdn.net/new_com/article/details/112633748
