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

本文作者分享了自己对SpringCloud和微服务的探索过程,阐述了微服务的六大特点:独立运行的服务、业务功能拆分、进程隔离、轻量级通信、集中式管理和全自动部署。同时,提出了如何合理划分业务和选择不同技术的挑战,强调了微服务带来的技术自由度和复杂性的并存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

 

SPRING CLOUD

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

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

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

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

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

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

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

      学无止境、学海无涯。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值