介绍Micro - 微服务系统

Hello World!

让我们来谈谈软件开发的未来。

改变正在进行之中。我们正越来越多地走向一个以科技为核心的世界。在当今时代,保持竞争优势正变得越来越困难。组织的执行能力会随着他们试图扩展低效的平台、过程和结构而陷入停顿。十年前,科技公司经历了这些规模的阵痛,大多数公司都采用了同样的方法来克服这些挑战。

是时候把世界上最成功的公司的竞争优势带给其他人了。因此,让我们谈谈微服务,一种创造竞争优势的方法。

什么是微服务?

微服务是一种软件体系结构模式,用于将大型单块应用程序分解为更小的可管理的独立服务,这些服务通过语言无关协议进行通信,并且每一项都专注于做好一件事。

行业专家对微服务的定义:

松散耦合的面向服务的体系结构,具有有界的上下文。
Adrian Cockcroft

-

将单个应用程序开发为一套小型服务的方法,每个应用程序都在自己的进程中运行,并使用轻量级机制进行通信。
马丁

微服务的概念并不新鲜,这是对服务定向架构的重新设想,但采用的方法更符合unix进程和管道。

微服务架构的理念:

  • 服务是小粒度的,作为一个单一的业务用途,类似于unix的“做一件事,做好它”的哲学
  • 组织文化应该拥抱部署和测试的自动化。这减轻了管理和操作的负担。
  • 文化和设计原则应该包含失败和错误,类似于反脆弱系统。

为什么使用微服务?

随着组织规模的扩大,技术和人员数量的增加,管理单一的代码库变得更加困难。我们都习惯了推特失败的鲸鱼一段时间,因为他们试图扩大他们的用户基础和产品特性集与一个整体系统。微服务使Twitter能够将应用程序分解为更小的服务,这些服务可以由许多不同的团队单独管理。每个团队负责由许多微服务组成的业务功能,这些服务可以独立于其他团队部署。

我们通过第一手的经验了解到,微服务系统支持更快的开发周期、改进的生产力和卓越的可伸缩系统。

让我们来谈谈其中的一些好处:

  1. 更容易扩展开发 —— 团队围绕不同的业务需求进行组织,并管理他们自己的服务。
  2. 更容易理解 —— 微服务要小得多,通常是1000 LOC或更少。
  3. 更容易部署新版本的服务 ——服务可以独立部署、扩展和管理。
  4. 改进的容错和隔离 ——关注的分离最小化了从另一个服务中产生的问题的影响。
  5. 改进的执行速度 ——团队独立地开发、部署和管理微服务,从而更快地交付业务需求。
  6. 可重用的服务和快速的原型 ——在microservices中根深蒂固的unix哲学允许您重用现有的服务,并在上面更快地构建全新的功能。

什么是Micro?

Micro是一个微服务生态系统,致力于为现代软件驱动企业提供产品、服务和解决方案。我们计划成为任何与微服务相关的实际资源,并将使公司能够利用这项技术为自己的企业服务。从早期的原型开发一直到大规模的生产部署。

我们看到了行业的根本性转变。摩尔定律是有效的,我们每天都能获得越来越多的计算能力。然而,我们无法充分认识到这种新的能力。在这个新时代,现有的工具和开发实践没有规模。开发人员没有提供从单片代码基转移到更有效的设计模式的工具。大多数公司都不可避免地要达到一个以整体设计来减少回报的程度,并且必须进行大规模的研发再造工作。Netfix、Twitter、Gilt和Hailo都是这方面的主要例子。最终,他们都建立了自己的微服务平台。

我们的愿景是提供基本的构建模块,让任何人都更容易采用微服务。

我们用一个开源的微服务工具包(也叫做Micro)来解决这个问题。期待一个后续的博客详细介绍这个工具包。

现在该做什么?
当你听到“微服务”这个词时,我们希望你能想到微服务生态系统。

如果你想了解更多关于我们提供的服务或微服务,请检查micro.mu。或者是github repo

Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2021 朝着牛逼的道路一路狂奔 All Rights Reserved.

访客数 : | 访问量 :