首页 > Web开发 > 详细

.net Core 微服务架构技术栈

时间:2020-04-07 13:25:37      阅读:239      评论:0      收藏:0      [点我收藏+]

一、微服务的概念

  微服务概念据说是在2011到2012年时候出现的,具体时间不清楚了,大家可以私下去了解一下,当时一出现就对互联网产生巨大影响,博主每每都能听到同事或同行的讨论,咱们继续往下说,微服务因其理念刚好服务“分而治之”的思想,在互联网行业内,很多家公司难免不存在一个超过10年之久的程序,经过几代人的维护,显得过于冗余和庞大,后来的人在对系统不熟悉的情况下,很艰难的去维护。刚刚说到“分而治之”(解释:分别治理。2.利用手段使国家、民族或宗教等产生分裂,然后对其进行控制和统治。)是微服务的思想。理解了这个思想,就可以来设计你的系统架构。

  具体思路:可以对每个业务进行拆分为微服务,微服务自治,数据,缓存,接口都是自我管理。微服务之间的通信一般约定为接口间的通讯和异步消息的通讯。微服务于微服务组合共同提供外部的接口,可以形成更大的服务。

二、构建微服务相关点

  上面说到把独立的业务拆分成不同的微服务,一般表现为下列几点:

  1.身份认证服务(IdentityServer4)

  2.服务的注册和发现(集成Consul)

  3.服务之间的通讯和效率(通讯使用HttpWebApi,效率较低,有崩溃的可能性)

  4.服务之间的事务性(ACID CAP或者异步通讯和人工干预,比如rebitmq)

  5.服务的对外网关(Ocelot)

  6.服务间的异步通讯,消息(使用rebitmq组件)

  7.服务的日志系统(log4+rebitmq)

  8.服务的监控(暂时没想到)

  9.服务部署和弹性伸缩(docker+k8s)

  以上这些,我选择使用asp.net core api方式来构建,因为本人一直从事.net开发,主要是思路,思路才是最值钱的,哈哈哈!

  暂时只想到这些,各位博友可以提供一些信息,以上这些都是大型微服务分布式应用的难题,可以一起攻克

三、微服务架构图(请各位博友和大牛多多指教)

  技术分享图片

 

四:微服务总结

  上面说所的一系列组件,不一定要非常完美的解决掉上线,可以按照自己的规模和实际技术积累进行优化,在运行和维护时,才能发现问题,一步步解决吧!

  微服务应该提早规划好,怎么支持分布式事务,这是重点中的重点!

 

   本人也是第一次学习微服务,全是自己慢慢摸索所得结论,肯定有不合理的地方,希望各位博友多多指导!

  

  

.net Core 微服务架构技术栈

原文:https://www.cnblogs.com/Royal89/p/12652592.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!