什么要服务化?因为单体应用面临越来越多的系统需求功能迭代、面对越来越多的用户使用,无法保证稳定性、可靠性、可扩展性。在了解服务化的好处之前,让我们先看看传统的系统架构是什么样的,当了解传统架构的缺点之后,再去看看为什么要做服务化,就容易理解了。

技术架构为什么要服务化?

技术架构为什么要服务化

关乎体量和需求的增长变化首先明确,服务化的本质是依托实际需求的。假如你的系统只有几十几百个人使用,在当下的技术架构中单体应用完全足够,这时候追逐服务化反而是一种舍本逐末,捡芝麻丢西瓜的举动了。为什么要服务化?因为单体应用面临越来越多的系统需求功能迭代、面对越来越多的用户使用,无法保证稳定性、可靠性、可扩展性。

还存在模块间流量不平衡,资源权重无法得到有效分配的一大批问题。伴随系统越来越庞大,彼此间耦合的调用关系到处都是,很有可能牵一发动全身。对产品的可维护性来说也变差了。服务化优势当企业面临单体应用的瓶颈问题是,可以果断采取服务化改造优势如下。1、减少耦合,梳理关系。2、明确服务重点,有侧重进行资源分配。3、减少单点故障发生。

为什么区块链提倡去中心化?

为什么区块链提倡去中心化

用过电驴没?以前的BT下载。你熟悉的小电影。那就是你有我有全都有但没有中心的资源下载模式。这可以视作区块链的先驱雏形。首次实现了资源共享和分布式存储。所以如果你不知道中本聪是谁,那么记住这个人:肖恩范宁(Shawn Fanning)当然现在区块链所提倡的从影音下载延展到货币再到其他应用场景,处在一个漫长的过渡期。

为什么越来越多的系统在做服务化?服务化有什么好处?

为什么越来越多的系统在做服务化服务化有什么好处

首先要表明一个观点:脱离业务实际情况的架构都是耍流氓,所以不是所有系统都必须服务化,也不要为了服务化而服务化。在了解服务化的好处之前,让我们先看看传统的系统架构是什么样的,当了解传统架构的缺点之后,再去看看为什么要做服务化,就容易理解了。在单体服务的时代,我们是一台应用服务器,后面挂一台数据库。当访问量增多的时候,会引入负载均衡、数据库读写分离、分库分表等技术,系统的一个整体的架构大概是这个样子的:这种架构,会有什么样的痛点呢?我总结了一下,系统在不断发展的过程中,可能会遇到下面几种情况:数据到处都有:举个最简单的例子,如果一个公司对外的系统很多,每个系统都提供用户注册的功能,注册后用户信息保存到自己的系统,当公司内这样的系统越来越多,问题就会凸显;代码到处拷贝:如果数据库统一了,用户信息都存储到一个数据库中,开放给各个业务系统操作(事实上几乎没有公司会这样做),这样带来的一个问题就是,相同逻辑的代码,会分布在多个系统中;更严重的是,代码与数据库的耦合度太高,不易于扩展。

代码质量无法保障,系统之间相互影响:假如A系统写了SQL导致全表扫描,数据库的CPU飙到100%或造成锁表,那么影响的不只是一个系统。这时候会考虑在代码这个级别,对用户数据的操作,进行服务化;服务化后的架构大概是这个样子(这里先不讨论是直接调用,还是服务注册、发现):这个服务化的过程其实也非常简单,在例子中,说白了就是把用户相关的功能单独做一个系统,并且把对用户信息的操作通过接口的方式暴露出来,那么服务化有什么好处,到底解决了哪些问题呢?我总结有这么几点:数据统一存储,业务逻辑集中;调用方很方便,一个功能,只需要调用一个接口;如果是RPC的方式实现,就像调用本地的一个方法一样;具体业务逻辑是如何实现的,调用方不需要关心;屏蔽了底层复杂度:用不用缓存,数据库是否需要分库分表,对调用方来说,都是黑盒;业务逻辑集中,意味着代码只有这么一份,那么效率和稳定性才有可能得到保证;当数据被集中在了一起,才能做下一步的处理、分析、预测,才能发挥出数据的价值;当然,服务化有好处也有坏处,就比如..如果用户中心挂了,那么会影响到所有依赖于用户中心的系统(高可能的要求非常高)。


文章TAG:综合化  现场  维护  考试题  
下一篇