美文网首页
小议微服务

小议微服务

作者: wintersal | 来源:发表于2018-05-03 13:57 被阅读9次

    1.1 场景

    自己做java时间不长,项目中一直采用的是git协同开发的模式,这种方式一直延用了很久,自己之前一直都听说过微服务、Dubbo这类的分布式框架,但是自己一直理解的是项目要非常大,才需要采用。

    这段时间,和我一起开发的同事,经常发生git冲突,而且处理冲突比较浪费时间。这时候,我们想到了中型以上的项目就采用微服务吧,因为这样可以让每个人员去专注做某个模块,减少冲突的可能,而且可以使项目尽可能的解耦合/插件化,实现多处复用。

    1.2 概念

    微服务其实本质上是一种软件架构的风格
    是将复杂的应用分割成多个独立的模块,每个模块专注自己的功能,并且向外提供服务,模块之间可以相互通信,从而组成完整的服务。

    特点

    1.内存表现为相互隔离,互不干扰
    2.模块之间通过RPC/http协议实现互相通信

    1.3 微服务产生背景

    在垂直应用里,对于访问量过大,负载出现问题时,为了解决单台服务器不能支撑的问题,需要将垂直应用分别部署到多台服务器,使用负载均衡器来解决并发量的问题。
    但是每台服务器都是一样的应用,我们无法根据不同模块的并发不同,来制定针对性的负载优化。
    例如用户中心使用频率只有1~2%的使用率,但是商品展示模块使用率却达到了70%,这时候其实我们只需要优化商品模块就可以了。很明显传统方式无法满足,这时候应用模块化/插件化势在必行。

    1.4如何实现一个简单的微服务

    屏幕快照 2018-05-03 下午1.50.55.png

    流程

    • 客户端发起调用请求
    • 将调用的内容序列化后通过网络发给服务端
    • 服务端接收到调用请求,执行具体服务并获得结果
    • 将结果序列化后通过网络返回给客户端

    相关文章

      网友评论

          本文标题:小议微服务

          本文链接:https://www.haomeiwen.com/subject/ydbkrftx.html