首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java全栈大联盟SpringBoot系列之微服务简介(2)

资源干货第一时间送达!

今天安妮就给小伙伴们列举以下几个点:

说明:以下内容非强制或必学,做到了解即可。但是,最好熟练!

1、什么是微服务?

2、微服务优缺点

1、什么是微服务?

微服务架构风格是一种将单个应用程序作为一套小型服务开发的方法,每种应用程序都运行在自己的进程中,并与轻量级(通常是HTTP资源API)进行通信。这些服务是围绕业务功能构建的,可以通过全自动部署机制独立部署。这些服务的集中管理最少,可以用不同的编程语言编写,并使用不同的数据存储技术。

微服务化的核心就是,将传统的一站式应用,根据业务拆分成一个一个的服务,彻底的去耦合,每一个微服务提供单个业务功能的业务,一个服务做一件事。从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行单独启动或销毁,甚至可以拥有自己独立的数据库。

微服务,强调的是服务的大小,它关注的是某一个点,是具体解决某一个问题/提供落地对应服务的一个服务应用。

在使用微服务之前,一个单体应用程序把它所有的功能放在一个单一进程中,并且通过在多个服务器上复制这些单体进行扩展。

使用微服务之后,一个微服务架构把每个功能元素放进一个独立的服务中,并且通过跨服务器分发这些服务进行扩展,只有在需要某个服务时才进行扩展。

2、微服务优缺点

优点:

1、每个服务足够内聚,代码容易理解这样能聚焦一个指定的业务功能或业务需求;

2、开发简单,开发效率提高,一个服务可能就是专一的做一件事情;

3、微服务是松耦合的,并且能够使用不同的语言开发;

4、易于与第三方集成,微服务允许容易且灵活的方式集成自动部署,通过持续集成工具,如Jenkins;

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

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

缺点:

1、开发人员要处理分布式系统的复杂性;

2、多服务运维难度,随着服务的增加,运维的压力也在增大;

3、系统部署依赖;

4、服务间通信成本;

5、数据一致性;

6、系统集成测试;

7、性能监控;

觉得有用就转发分享一下吧

精彩内容

看完本文有收获?请转发分享给更多人

关注「Java全栈大联盟」,提升大神技能

欢迎新旧粉丝(撒花),我是Java全栈大联盟安妮。大家对微信博文有什么问题都可以@我留言,我会尽快回复大家。希望以后可以和各位成为技术道友!

安妮

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190103G05OQH00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券