说明
前面的章节,我们讲解了 Solon 的开发应用,接下来准备讲解 Solon Cloud 的的开发。Solon Cloud 是为微服务和云原生准备的分布式开发套件。
微服务
就像 MVC 一样,对于微服务的理解也是有不同的。微服务是一组协调工作的小而自治的服务。微服务是一组分布式的架构框架。
微服务有支持异构,弹性,易扩展,容易替换等优点,但也增加了开发、测试、部署、运维的复杂性。
云原生
为了解决微服务(或者系统)的开发、部署、运维的复杂性,CNCF (Cloud Native Computing Foudation)提出了云原生的概念,就是利用各组织在共有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。主要涉及DevOps,CI/CD,Micro Service,Contianer等四个大的方面。
Solon Cloud
从上图,我们可以看到 Solon Cloud 的主要组成部分:
- Solon Cloud Gateway 分布式网关相关插件
- Solon Cloud Config 分布式配置相关插件
- Solon Cloud Discovery 分布式注册与发现相关插件
- Solon Cloud Event 分布式时间总线相关插件
- Solon Cloud Job 分布式任务调度插件
- Solon Cloud File 分布式文件插件
- Solon Cloud Log 分布式日志插件
- Solon Cloud Trace 分布式跟踪插件
- Solon Cloud Metrics 分布式监控插件
- Solon Cloud Breaker 分布式熔断插件
- Solon Cloud Id 分布式 ID 插件
- Solon Cloud I18n 分布式国际化配置插件
- Solon Cloud List 分布式名单,白名单、黑名单等
- Solon Cloud Lock 分布式锁插件
我们可以看到Solon Cloud 其实是定义了一组接口规范,在这个接口规范的基础上实现不同分布式组件的插件。
在 Solon 的官网中也对分布式设计做了引导,我这里列出重点的部分,详细内容可查看官网 https://solon.noear.org/article/638。
- 构建可水平扩展的计算能力
- 服务无状态
- 服务透明化
- 容器弹性伸缩
- 构建可水平扩展的业务能力
- 基于业务领域拆分微服务
- 拆分业务的主线与辅线
- 基于实现总线交互
书籍推荐
《微服务架构设计模式》
《微服务设计》
The Twelve-factor App
https://12factor.net/