赞
踩
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
nacos服务客户端(要注册到nacos的服务)启动时会每隔一段时间(默认为5秒)向nacos发送心跳包,nacos注册中心15秒内没有检测到心跳包会默认认为nacos处于一种不健康状态,30秒还收不到心跳包则认为这个服务已不可用。
Nacos配置管理模型中,为了实现更好的环境隔离给出了namespace,group,dataId的感念,一个配置中心可以有多个命名空间,一个命名空间可以有多个分组,一个分组内可以有多个groupId,服务启动时会每隔30描述向配置中心请求一次数据,2.0之前默认采取的时长轮询拉取模式。
限流的目的是为了保证服务更加可靠的运行,不至于系统在遇到突发流量时,出现系统宕机的现象。常用的限流算法有计数器法,滑动窗口算法,漏斗算法,漏桶算法等。
网关层面的负载均衡我们借助了Ribbon进行实现,常用算法有轮询,权重,随机,hash等,这个算法都可以在配置中心进行配置,然后基于业务不同,做动态调整。
Ribbon:负载均衡客户端,需要结合RestTemplate(HttpClient)进行服务的调用
Feign:Feign默认集成了Ribbon,用它来管理服务(管理controller配置的路径)
Feign可以通过@FeignClient注解标识一个接口,通过该接口生成一个代理类来进行远程的微服务调用。
前后端分离的目的: 实现前端和后台的数据不耦合,最终的效果是前后端都能够独立存在
前端人员开发: 独立开发前端代码
对于前端工程师:调用接口地址,接收json,解析json
后端人员开发: 独立开发后端代码
对于后端java工程师:提供业务的具体接口,响应json数据
后端人员通过swagger自动生成接口地址文档,
swagger使用参考地址:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。