基于K8s构建微服务系列 第一章 - 前言
当下越来越多的人选择用微服务的方式构建应用程序,相对传统的单体应用程序,微服务架构具有如下优势:易于扩展:微服务可独立运行,可根据需要对局部进行扩展。开发效率高:微服务是高内聚、低耦合的独立单元,可以被小团队单独开发,团队成员可只关注某一特定的业务领域。技术栈不受限:可以根据项目和团队的特点,选择最合理的技术栈。可复用:微服务聚焦于某一业务领域的,如果设计和封装的足够好,可以做到拿来即用,避免重复
·
系列文章目录
目录
一、前言
当下越来越多的人选择用微服务的方式构建应用程序,相对传统的单体应用程序,微服务架构具有如下优势:
- 易于扩展:微服务可独立运行,可根据需要对局部进行扩展。
- 开发效率高:微服务是高内聚、低耦合的独立单元,可以被小团队单独开发,团队成员可只关注某一特定的业务领域。
- 技术栈不受限:可以根据项目和团队的特点,选择最合理的技术栈。
- 可复用:微服务聚焦于某一业务领域的,如果设计和封装的足够好,可以做到拿来即用,避免重复造轮子。
- 便于维护:微服务足够小,易于被开发人员理解和维护。
为了最大化利用微服务的这些优势,保障系统的高可用性,需要通过一系列的服务支撑组件来协助服务间有效的协作,这便是服务治理的范畴。微服务治理主要包括如下内容:
- 服务注册和发现
- 负载均衡
- 服务容错
- 服务网关
- 配置统一管理
- 链路追踪
- 实时日志
二、主要内容
本系列文章主要介绍如何基于Spring Cloud、K8s构建和部署微服务,由于篇幅有限,不可能面面俱到,建议读者最好具备一些Spring Boot、Spring Cloud和Kubernetes的基础知识,如果想深入了解,可参考以下文章:
https://www.springcloud.cc/spring-reference.html
三、相关环境准备
如果读者想实操练习,需要准备以下环境:
- VirtualBox(Oracle VM VirtualBox)
- minikube(minikube start | minikube)
- Eclipse 或 IDEA
四、项目结构
本项目主要实现基于Spring Cloud和K8s的微服务架构,并不实现复杂的业务逻辑,只包含两个微服务:
- web-frontend:Web前端服务,处理前端请求,调用后端微服务完成业务逻辑。
- user-service-sc:用户服务(基于Spring Cloud服务治理),负责用户的CRUD。
- user-service-k8s:用户服务(基于K8s服务治理),负责用户的CRUD。
更多推荐
已为社区贡献2条内容
所有评论(0)