开发常见问题

最近更新时间:2020-06-22 10:27:36

SpringCloud和Spring boot区别?

Spring Cloud:微服务工具包,为开发者提供了在分布式系统的配置管理、服务发现、断路器、智能路由、微代理、控制总线等开发工具包。
Spring Boot:旨在简化创建产品级的Spring应用和服务,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用微服务功能,可以和spring cloud联合部署。

什么是健康检查?

每个微服务必须为它自身的状态负责,所以每个微服务都应提供一个健康检查的接口。通过调用这个健康检查接口,外界可以判断这个服务当前的状态。
一般情况下,并不是容器启动后容器中的应用就马上就绪了,应用一般还有一个启动或初始化的过程。因此,必须有一种手段让平台检查微服务应用的就绪状态。
平台通过检查Readiness Probe接口,只有在确认服务就绪后,才会将外界的流量转发至服务。如果一个服务的Liveness Probe探测结果返回失败,平台就会判定这个容器实例出现了问题,相应的容器会被停止。

服务要怎么拆分?

垂直拆分:按照业务功能去拆分。如将会员系统和交易系统拆分为两个不同的服务,因为它们在业务上有很强的隔离性。会员系统,主要实现会员注册、登陆、积分、个人信息等功能;交易系统,主要实现下单、付费等要功能。
水平拆分:按照代码层面去拆分。按照开发人员纬度,如退款有专门的团队来管理,这时候就需要拆分;如果交易和退款是同一个团队开发的,拆不拆无所谓。服务拆分的核心原则是高内聚低耦合。

金山云,开启您的云计算之旅

免费注册