微服务架构所面临的技术问题

这篇具有很好参考价值的文章主要介绍了微服务架构所面临的技术问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

服务治理和负载均衡

微服务架构广泛应用在超高并发系统中,中后台服务集群的规模着实不小。就拿淘系的下单接口来说,一个下单指令要调用近二十个后台微服务协同完成任务(可能现在更多了),而在双11这类业务场景下,核心链路的一个微服务背后的虚机数量都有近万台。

因此,服务与服务之间的调用,就成了微服务架构需要解决的第一个问题。与此同时,大规模集群中虚机的。上线下线是每天的日常任务,集群的扩容缩容也很常见,我们的微服务架构需要探知到集群中各个服务节点的状态变化,这样就知道哪些节点是可以正常提供服务的。我们管这个领域叫做服务治理

与服务治理搭档的还有负载均衡,面对茫茫多的服务器,如何将海量用户请求分发到不同的机器。考虑到有的机器性能比较弱,或者机房带宽不大,网络响应慢,如何根据实际情况动态地分发服务请求?这个领域就是负载均衡需要解决的事情。

服务容错

地盘大了难免杂事不断,集群中难免有那么几台机器跑着跑着就慷慨就义了。那么对于其它的服务调用者来说,如果不巧正好调用到了这些挂掉的机器,那自然会获得到失败的Response。面对这种情况,后台服务可有另一条路走?

在高并发场景下,有的服务会承担较大的访问请求,这有可能导致响应时间过慢,甚至会响应超时。那调用方在超时后经常会发起重试,这样会进一步增加下游应用的访问压力,进而导致一个恶性循环。那么面对这种情况,我们有解决方案吗?

以上就是微服务领域中降级和熔断技术需要解决的问题,我们管这些叫做服务容错。

配置管理

大家平时在项目中都怎么管理配置项呢?使用配置文件?如果我有一个业务场景,需要随时调整配置,这种配置文件的管理方式可能就玩不转了,我们总不能每次改配置的时候都要重启机器吧。

那么把配置项存到数据库里?可以倒是可以,但是访问量增加的时候也会将压力传导到数据库,数据库往往是比较弱不禁风的一环,很可能被压垮。那么放到缓存里?这一定程度上解决了性能问题,不过在某些业务场景下还是不好用,比如我希望给不同服务器配置不同属性值,指定name属性在某100台机器中的值是张三,在剩余机器中的值是李四。
以上问题在微服务领域也不是什么大问题,服务配置管理就是专门解决这类问题的利器。

服务网关

我们的系统对外提供的网络访问入口只有一个,这通常就是一个域名网址。但是这套系统后面的服务器可有千千万,那么在微服务架构下,是如何将用户请求转发到每个不同的服务器上的呢?这就是服务网关需要解决的事情。

调用链路追踪

前面提到一个淘系下单场景会调用一连串的微服务,我们YY这么一个线上故障,有个用户买了两只大猪蹄子,结果东西送到家变成了两只鸡爪子。店小二说没发错货啊不信自己看订单,打开一看还真是,下单的时候选的猪蹄子,下单以后就成了鸡爪子。

上面这个问题出在整个下单链路哪个环节呢?是订单中心搞错了商品ID,还是购物车页面传了错误ID给订单系统,或者说搜索页面一键下单功能没取到正确的ID?迷雾迷雾在迷雾,怎么拨开迷雾见真相?

调用链追踪,从前到后整个调用链路全景数据展现,用事实说话,从此甩锅更加精准!

消息驱动

消息驱动是老朋友了,相信大家在项目中也经常使用消息中间件。我们试想这样一个场景,双11当天24点0分0秒一过,数万万的败家亲们一拥而上,下单接口调用量飙升,就快到了崩溃边缘。那我们后台的订单服务如何才能顶住这一波波攻势?亲,消息驱动组件加.上限流组件来做削峰填谷了解一下?

不仅如此,微服务各个系统之间的解耦也可以用消息组件来实现。其实消息驱动在微服务里的实现也就是多做了几层抽象,调用起来更加方便,个中滋味还请同学们亲身体验。

限流

再厉害的系统也有性能瓶颈,强如阿里打造的双十一也抵不住全国剁手族齐。上阵,限流是最经济高效,在源头处消减系统压力的手段微服务的后台服务节点数量庞大,单机版限流远不能解决问题,我们需要在服务器集群这个范围内引入分布式限流手段。

本文已收录至我的个人网站:程序员波特,主要记录Java相关技术系列教程,共享电子书、Java学习路线、视频教程、简历模板和面试题等学习资源,让想要学习的你,不再迷茫。文章来源地址https://www.toymoban.com/news/detail-804263.html

到了这里,关于微服务架构所面临的技术问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 云原生✖️ AI 时代的微服务架构最佳实践—— CloudWeGo 技术沙龙·北京站报名开启

    CloudWeGo 开源两年多以来,社区发展迅速,生态日益丰富,落地企业用户已超过 40 家,涵盖 AI、电商、金融、游戏 等多个行业。同时,随着云原生技术和 AI 技术的持续蓬勃发展,我们发现企业用户也面临着越来越多性能、成本和稳定性方面的挑战,系统需要支持弹性伸缩和潮

    2024年03月25日
    浏览(55)
  • 云原生架构的核心技术(微服务、DevOps、容器云、Service Mesh、Serverless、声明式API)

    天上飞的理念☁️☁️☁️☁️☁️,必然有落地的实现 文章介绍 读完本文,你将对云原生下的核心概念微服务、DevOps、容器云、Service Mesh、Serverless、Immutable Infrastructure、Declarative-API等有一个详细的了解,帮助你快速掌握云原生的核心和要点。 IaaS(Infrastructure-as-a-Service基

    2024年02月03日
    浏览(47)
  • 企业大数据发展面临问题之存算分离技术思考

    Hadoop一出生就是奔存算一体设计,当时设计思想就是存储不动而计算(code也即是代码程序)动,负责调度Yarn会把计算任务尽量发到要处理数据所在的实例上,这也是与传统集中式存储最大的不同。为何当时Hadoop设计存算一体的耦合?要知道2006年服务器带宽只有100Mb/s~1Gb/s,但是

    2024年01月24日
    浏览(46)
  • 【云原生】Serverless 技术架构分析

    一、什么是Serverless? 1、Serverless技术简介 ​ Serverless(无服务器架构) 指的是由开发者实现的服务端逻辑 运行在无状态的计算容器中,它由事件触发, 完全被第三方管理,其业务层面的状态则被开发者使用的数据库和存储资源所记录。 ​ Serverless使得开发者无需直接处理服

    2024年02月14日
    浏览(60)
  • 云原生架构设计原则及典型技术

    云原生是面向云应用设计的一种思想理念,充分发挥云效能的最佳实践路径,帮助企业构建弹性可靠、松耦合、易管理可观测的应用系统,提升交付效率,降低运维复杂度。代表技术包括不可变基础设施、服务网格、声明式 API 及 Serverless 等。 从产业效用方面来看,云原生极

    2024年02月11日
    浏览(53)
  • 【云原生系列】云计算概念与架构设计介绍

    云计算是一种基于互联网的计算模式,在这个模式下,各种计算资源(例如计算机、存储设备、网络设备、应用程序等)可以通过互联网实现共享和交付。云计算架构设计的主要目标是实现高效、可扩展、可靠、安全和经济的计算资源共享。 在云计算架构中,通常会采用分层

    2024年02月11日
    浏览(44)
  • 云原生系列之分布式架构设计要点

    到目前来看整个架构的演变过程是从单体到水平垂直扩展,再到 SOA 设计,领域驱动设计,事件驱动设计,后到云原生的架构和优势,如果在技术网站甚至微信公众号就可以搜到一堆关于这些的架构设计说明,现在我想换一种方式,从某个点出发,某个概念出发,某个模式出

    2024年04月16日
    浏览(49)
  • 云原生技术架构分析+实战【docker篇】

    ①云平台推荐 国内:阿里云(ECS)、华为云、腾讯云、青云、百度云等 国外:亚马逊AWS、微软Azure等 ②公有云、私有云区别 公有云:第三方云服务厂商提供和运营,使用成本更低,无需维护,无限制的缩放性,高可靠性(N个9,全年故障时间) 私有云:自己搭建平台(服务

    2024年02月04日
    浏览(54)
  • 技术风向标 | 云原生技术架构成熟度模型解读

    从“上云”到“云上”原生,云原生提供了最优用云路径,云原生的技术价值已被广泛认可。当前行业用户全面转型云原生已是大势所趋,用户侧云原生平台建设和应用云原生化改造进程正在加速。 云原生复杂的技术栈和传统IT的历史包袱给用户带来了巨大挑战,针对平台建

    2024年02月02日
    浏览(48)
  • 探索云原生时代:技术驱动的业务架构革新

    云原生技术正重塑IT领域,本文深度剖析了其发展历程、核心概念、生态系统及实践案例,展望未来趋势,揭示了这一技术如何引领企业转型与创新。 关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理

    2024年03月22日
    浏览(74)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包