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

springcloud-场景入门

一.微服务场景

问题:

当一个大应用包含很多功能模块的时候,其中一个小模块出现问题可能导致整个系统不能用

当一个项目从一个人开发变成多人协作开发,在一个应用中开发时不同开发人员需要考虑各种兼容协调问题,沟通成本很大

当应用中的某个模块需要高并发的时候,整个大应用甚至一些调用频率很低的模块都要考虑高并发。造成资源浪费

当一个服务需要同时为微信官网app等提供支持时如何避免重复开发

解决:

在微服务架构风格中,一个大应用被拆分成为了多个小的服务系统提供出来,这些小的系统他们可以自成体系

这些小系统可以拥有自己的数据库,框架甚至语言等,这些小系统通常以提供 Rest Api 风格的接口来被 H5, Android, IOS 以及第三方应用程序调用。

不同的微服务独立部署,各服务之间相互调用,可扩展性和灵活性极高

二、服务注册与发现-场景入门

问题

一个服务如何简单而又精确的调用另外一个服务

当一个服务并发量变大之后如何集群部署并调用

被调用服务ip变更如何做到调用端不受影响

解决

springcloud-eureka或者consul提供服务注册与发现,不同的服务注册到注册中心

不同服务通过注册到注册中心的服务名称来调用,无需知道目标服务ip等信息

同一个服务可以向注册中心注册多个,以保证高并发高可用性

三、springCloud-feign-ribbon-场景入门

问题:

服务注册中心同一个服务名称下有多个服务,如何做到负载均衡

解决:

feign和ribbon组建提供负载均衡支持

四、断路器-场景入门

问题:

当微服务集群里面的某一个A服务挂掉之后,调用这个服务的B服务和调用B服务的C服务及后续的相关服务都会无法正方调用,造成服务阻塞。我们不想这种整个服务链条阻塞发生

解决:

springcloud-hystrix断路器可以在A服务挂掉的情况下返回预先处理好的返回值,以保证A服务挂掉之后后续相关服务仍然可调用

五、spring-cloud-gateway-场景入门

问题:

当我们的微服务对外开放,我们需要实现服务路由

如何实现接口限流

如何做到统一的接口鉴权

解决:

springcloud-gateway解决了以上问题

六、配置中心-场景入门

问题:

当我们的微服务越来越多,正式测试开发环境需要维护非常多的配置文件,我们需要简单的统一管理配置文件

解决:

springCloud-config帮我们整合了git等文件库。我们可以把config文件放在Git,然后通过springcloudconfig来获取配置文件内容

以上仅代表个人观点,如有不同观点欢迎指出。

备注:所有文章都是基于springboot2.0及springcloud F版本

以上,便是今天的分享,希望大家喜欢,觉得内容不错的,欢迎点击「在看」支持,谢谢各位。

喜欢文章,点个在看

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券