基于CSE的微服务架构实践-基础架构

举报
liubao68 发表于 2019/02/22 14:39:03 2019/02/22
【摘要】 本文介绍了使用CSE进行微服务开发的基础架构。涵盖如何设计微服务转发路径,如何规划UI技术部署方式等内容。


采用微服务架构开发业务应用,让架构本身变得不再重要。动手开始做对于项目的推动作用,远大于思考如何做。在单体应用微服务改造实践中,分享了一种“持续迭代演进”进行微服务改造的方法学,这个方法学同样适用于从头开始进行微服务开发。 

 

CSE提供了非常多场景的开发支持,对于开发者,应该尽可能选择统一的技术栈,这样技术积累会比较快,不同微服务开发者之间也能够更好的进行交流和共享经验。CSE推荐的技术栈有两种:

 

·         基于CSE的轻量级微服务架构

·         基于Spring Boot + CSE轻量级微服务架构

·         基于Spring BootWeb技术栈微服务架构

 

image.png


上诉架构都采用CSE运行时,只是底层依赖的HTTP服务器不同,以及上层依赖的组件不同。轻量级架构的HTTP服务器和上层组件都相对简单,更加节省资源,运行也更加高效;Spring Boot架构下,则能够使用更多的组件,满足更多场景的需要。两种技术栈的微服务是可以并存和相互访问的。

 

对于Web应用,建议采用静态页面技术(html+js+css等)设计UI,而不要采用动态页面技术(比如jsp等)。因为静态页面部署方式更加灵活,更能够适配不同的微服务部署架构。

 

·         基础的微服务弹性架构

 

image.png

 

基础弹性架构包括接入层和业务层。接入层负责进行域名解析、路由转发,常用的技术包括DNSELBLVS等。业务层的所有服务均采用多实例部署,解决性能问题和防止单点故障。

 

·         静态页面部署到边缘服务

静态页面可以部署到网关里面。CSEEdge Service可以直接挂载静态页面。

 

·         静态页面部署到系统外部

静态页面可以部署业务层外部。比如有些产品,页面是第三方开发的,业务层对于第三方是一个黑盒,只公布了REST接口供第三方调用。有些产品静态页面不是第三方开发的,他们有自己的nginx服务器做为ELB,把静态页面部署到nginx里面。

 

·         静态页面部署到系统内部

还可以将静态页面作为一个微服务,部署到业务层。网关负责转发静态页面请求。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。