微服务是一种经过良好架构设计的分布式架构方案,微服务的架构特征:
- 单一职责:微服务拆分粒度更小,每一个服务都对应唯一的业务能力,做到单一职责,避免重复开发
- 面向服务:微服务对外保留业务接口
- 自治:团队独立,技术独立,数据独立,部署独立
- 隔离性强:隔离,容错,降级,避免出现联和问题
微服务技术对比:
- Dubbo
- SpringCloud
- SpringCloudAlibaba => 可以支持上面俩种架构技术
springCloud:https://spring.io/projects/spring-cloud
服务拆分及远程调用:
- 不同的微服务,不要重复开发业务
- 微服务的数据独立,不要访问其他的微服务数据库
- 微服务可以将自己的业务暴露为接口,供其他微服务调用
Boot和Cloud 的兼容版本查看:https://spring.io/projects/spring-cloud
在 Spring Boot 的版本号中:
- GA 代表“稳定版”,即已经正式发布,是最终的、可供生产环境使用的版本,
- RPE 代表“候选发布版”,是在稳定版发布前进行的预发行测试版本,相比于 SNAPSHOT 要更加稳定。
- SNAPSHOT 代表“快照版”,是正在开发中的不稳定版本。
因此,对于生产环境来说,推荐使用 GA 版本;对于开发和测试环境,则可以使用 RPE 版本或 SNAPSHOT 版本。 需要注意的是,SNAPSHOT 版本可能会存在一些未解决的问题或者功能上的变动,因此不建议将其用于生产环境中。