微服务架构学习 之 什么是微服务

      很长一段时间了,迷恋于Spring技术应用,执迷和执着促使我坚持不懈地带领着公司研发团队,在这条技术道路上摸爬滚打着前行,即使我心中明白,我们是一个非纯粹的IT企业,但IT新颖技术的诱惑,让我们不断紧跟潮流,永不放弃!某个时间,在Spring.io网站上,看到了这个图标:

SPRING CLOUD

      于是乎,我知道了Spring Cloud,知道了微服务这个术语。微服务的定义是什么?字面上理解,微服务是相对服务而言的,是比传统的服务要小很多的服务。简言之,微服务就是小型服务。在学习之前,这是我对微服务的第一直观理解。

      个人观点,每一种新技术出现,都会大肆宣扬自己的特点,通过进一步的学习,我也对微服务的特点进行了总结,大致有如下几点:

      (1)我们知道,传统服务是围绕业务构建应用,而微服务则是将整个应用进行分解,分解成若干个微服务协同工作,实现等同于传统服务的业务应用。这是微服务的特点之一,即一系列独立运行的微服务共同构建起整个业务系统应用。

      (2)从特点一我们知道,每个微服务在独立进程中运行。进程的概念就不多说了,形象地描述,传统服务构建的应用是单个进程运行的,而微服务构建的应用则是多个独立的进程运行。这是我理解的微服务应用的第二个特点。

      (3)特点一、特点二让人很容易理解,但难免会有这样的疑问:这么多微服务一起工作,怎么管理呢?微服务之间如何通信呢?如何部署呢?权威的一些资料给出了答案。即微服务共用一个最小型的集中式的管理,服务之间的通信采用轻量级通信机制(RESTFul、MQ等),采用全自动部署机制独立部署。我权且认为这是微服务的特点之三、特点之四、特点之五。但新的疑问又接踵而来,集中式管理的机制是什么?管理些什么?何时服务之间发生通信?全自动部署怎么实现的?对于初学的小白而言,只能放到后续研究了。

      (4)特点六,简单的说,一个微服务只实现某个特定的业务功能。直接面临的疑惑是:如何合理划分业务,以实现高效、复用且不冗余的微服务呢?

      (5)第七个特点,对于开发人员来说,是一件痛并快乐的事情。竟然可以:可用不同的语言开发,使用不同的数据存储技术。其实,从微服务的以上特点而言,使用不同语言和不同存储技术显然是没有问题的。为什么说对开发人员而言,痛并快乐着呢?那些懒家伙们说:不同语言、不同存储技术啊,怎么学得会呢?那些技术狂人说:太好了,终于可以学习不同语言、不同存储技术了。我的理解是,技术不受限制了,可以结合业务和团队特点,合理选择、因地制宜。

      学无止境、学海无涯。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 微服务最近非常流行,各大互联网公司纷纷采用微服务架构体系,微服务架构模式正在为敏捷部署以及复杂企业应用实施提供巨大...
    Sting阅读 9,124评论 0 57
  • 郝连铭轩看着窗外的大雨,没有停下来的意思。眼看和对方约见的时间没多久了,不能因为下大雨取消这次的机会。 于是,郝连...
    李水心阅读 141评论 1 2
  • 有人说,跑步是最好的修行。跑步是一项孤独对抗孤独的运动,是一项你需要对自己严格自律并长久坚持的运动。当你全身心投入...
    清如几许阅读 574评论 1 2