首页 > 网站建设推广

什么系统适合做微服务系统?分布式事务如何处理

发布时间:2021-12-29 18:06:43 来源:微服务系统 作者:风清杨 阅读:

  最近这几年,微服务已经成为了主流,微服务这个东西,固然是有它的优点,但是如果你用不好,就会成为灾难。什么样的系统适合做微服务?分布式事务如何处理?想要用好微服务,就一定要注意一下三点。

  一、什么样的系统适合做微服务

  微服务这个东西固然好,但是并不是所有的系统都适合做微服务,现在很多人有这样一个心理,看到一款技术框架很流行,大家都在用,那我为了追求时髦,我一定也要在项目里用一下。这种心理要不得,一定要去评估这款新的框架但适不适合你的系统的,如果不适合,你就会得到适得其反的效果。作为微服务来讲,一般来说如果项目不是特别大,访问量也没有那么大,就千万不要去做微服务。只有说你的系统大到一定程度了,在一个项目里很难维护了,这时候你再去考虑去做微服务。

  二、微服务要依据什么样的选择对系统做拆分

  系统拆分原则,这个并没有在业界形成统一的标准,每个人都有自己的想法,在这里我只是说一下自己总结的一些看法

  1.如果两个子系统之间,需要保证事务的强一致性,那你就不要去拆了,因为现在没有任何一种方案,能保证事务的强一致性的,即便是阿里的seta,也不能保证强一致性,我们只能保证它的最终一致性,尽最大努力去减小数据不一致的时间,如果允许数据可以短时间的不一致,没太大影响,就可以做拆分,如果说数据段时间的不一致,也会带来很大损失,那就不要去拆了。

  2.避免任意两个系统之间,特别频繁的调用。我第一次在做微服务的时候,拆分出了一个权限系统,这个系统负责用户的登录,权限分配,权限验证和session等等,但是考虑到,一个用户登录成功的,塔操作的所有功能,都要去调用这个系统去做session验证和权限验证,这样不仅仅会影响效率,也会给这个系统带来很大压力。后来的解决方案是,我们还是拆分出了这个权限系统,只不过我们在做session验证和权限验证时,不会直接去调用这个系统,而是用maven把对应的jar包依赖过,做本地调用。

  3.在保证上面两点的基础上,尽量按照单一职责的原则去拆分,做到低耦合,高内聚。

  三、分布式事务如何处理

  这个现在没有一种方案,能做到事务的强一致性,我们只能尽最大努力减少数据不一致的时间,来保证它的最终一致性,这个上网去查,能查到很多方案,什么两阶段提交,三阶段提交,写回滚代码,等等,但是在真实写代码的过程中,没人会这么做的,因为它不仅性能差,而且会增加很多工作量。现在比较成熟的做法是用阿里的seta框架,它的原理就是记录了一张日志表,当需要做数据回滚的时候,就根据这张日志表的数据去做回滚,但是如果回滚的时候出现了网络问题,或者出现了脏写,依然会回滚失败,这种情况就需要人工处理。这也就是我说的阿里么seata并不能百分之百的保证事务强一致性的原因。

  总结:以上就是小编对什么样的系统适合做微服务的一些不同见解,如您对什么样的系统适合做微服务有任何疑问,请给我们留言或者联系我们的在线客服人员, 巨海为您提供搜索营销一站式企业服务!可以让潜在有需求的客户及时找到你,让你的网站拥有很多精准流量访问!

相关文章
  • 制作网站多少钱(网站收费标准)

    制作网站多少钱(网站收费标准)

      这是知乎上回答的一个问题,原来问题的标题是:你们给别人做一个网站多少钱?  问题大概是:帮客户做了一个网站,一共收了500块,服务器,域名,维护都还包一年的,第二年续费就200,也可以给客户源代码。  最后问:老铁们这价格

    2022-04-10

  • 什么是B2B?B2B的本质是什么

    什么是B2B?B2B的本质是什么

      什么是B2B?B2B就是Business To Business英文首字母缩写,因为To与Two发音相同,所以简写成了B2B(2即to)。B2B的意思就是商家对商家的营销关系。最通俗的说法是指进行电子商务交易的供需双方都是商家(或企业、公司),使

    2022-04-07

  • CMS是什么意思?好用的开源CMS系统有哪些?

    CMS是什么意思?好用的开源CMS系统有哪些?

      CMS是什么意思?CMS是“Content Management System“的缩写,意为“内容管理系统“。 它采用统一的信息组织的方法即分类,对同一类型的信息进行分类,且每一类信息都可以进行新建(Add)、查看(View)

    2022-04-06

  • 什么是CDN?免费CDN加速可以用吗

    什么是CDN?免费CDN加速可以用吗

      什么是CDN?CDN是content delivery network的简称,即内容分发网络。它其实是边缘计算的一种。消息内容通过网络传输有很大的延迟,举个例子:服务器在北京,用户在深圳,那么用户访问服务器来回需要几百毫秒了。在计算机世

    2022-04-04

Copyright © 2019 巨海信息科技 All Rights Reserved
陕ICP备19002416号-2

!-- 360自动推送 --> '); })();