zoukankan      html  css  js  c++  java
  • 总结下微服务

    1.什么是微服务架构?
        微服务是指开发一个单个 小型的但有业务功能的服务,每个服务都有自己的处理和轻量通讯机制,可以部署在单个或多个服务器上。

        微服务也指一种种松耦合的、有一定的有界上下文的面向服务架构。也就是说,如果每个服务都要同时修改,那么它们就不是微服务,因为它们紧耦合在一起;如果你需要掌握一个服务太多的上下文场景使用条件,那么它就是一个有上下文边界的服务,这个定义来自DDD领域驱动设计

    2. 微服务优点是什么?

    • 每个微服务都很小,这样能聚焦一个指定的业务功能或业务需求。

    • 微服务能够被小团队单独开发,这个小团队是2到5人的开发人员组成。

    • 微服务是松耦合的,是有功能意义的服务,无论是在开发阶段或部署阶段都是独立的。

    • 微服务能使用不同的语言开发。

    • 微服务允许容易且灵活的方式集成自动部署,通过持续集成工具,如Jenkins, Hudson, bamboo 。

    • 一个团队的新成员能够更快投入生产。

    • 微服务易于被一个开发人员理解,修改和维护,这样小团队能够更关注自己的工作成果。无需通过合作才能体现价值。

    • 微服务允许你利用融合最新技术。

    • 微服务只是业务逻辑的代码,不会和HTML,CSS 或其他界面组件混合。

    • 微服务能够即时被要求扩展。

    • 微服务能部署中低端配置的服务器上。

    • 易于和第三方集成。

    • 每个微服务都有自己的存储能力,可以有自己的数据库。也可以有统一数据库。


    3. 微服务架构的缺点是什么?

    • 微服务架构可能带来过多的操作。

    • 需要DevOps技巧 (http://en.wikipedia.org/wiki/DevOps).

    • 可能双倍的努力。

    • 分布式系统可能复杂难以管理。

    • 因为分布部署跟踪问题难。

    • 当服务数量增加,管理复杂性增加。


    4. 微服务适合哪种情况?
        当你需要支持桌面 web 移动 智能电视 可穿戴时都是可以的,甚至将来你可能不知道但需要支持的某种环境。

    5. 微服务之间是如何独立通讯的?

        这依赖需求,通过使用HTTP/REST,数据格式使用JSON 或 Protobuf(Binary protocol),通讯协议是自由的。

     (摘自http://m635674608.iteye.com/blog/2304379)

  • 相关阅读:
    服务部署 RPC vs RESTful
    模拟浏览器之从 Selenium 到splinter
    windows程序设计 vs2012 新建win32项目
    ubuntu python 安装numpy,scipy.pandas.....
    vmvare 将主机的文件复制到虚拟机系统中 安装WMware tools
    ubuntu 修改root密码
    python 定义类 简单使用
    python 定义函数 两个文件调用函数
    python 定义函数 调用函数
    python windows 安装gensim
  • 原文地址:https://www.cnblogs.com/mowei/p/7127619.html
Copyright © 2011-2022 走看看