- 博客(6)
- 收藏
- 关注
原创 六、Feign实现声明式REST调用
遗留问题:前文中使用RestTemplate实现REST API调用时,会有拼接参数问题,如果参数过多会显得非常的不优雅,如下: ribbonRestTemplate.getForObject("http://microservice-provider-user/"+id, User.class);这时候就需要一种更加便捷、优雅地调用HTTP API的方式——Feign!...
2018-12-20 15:29:49 220
原创 五、Ribbon实现客户端的负载均衡
前言:消费者获取出多个服务提供者的地址后,按一定的规则请求这多个相同服务中的一个,实现负载均衡。Ribbon的这种负载均衡可理解为针对消费者请求时做的。1、Ribbon简介 SpringCloud中,当Ribbon和Eureka配合使用,Ribbon可自动从Eureka Server中获取供给方地址列表,基于负载均衡算法(也可以自定义算法)请求其中一个服务提供者实例。如图:...
2018-12-20 10:50:57 137
原创 四、微服务的注册与发现
遗留问题:前面提到即使通过配置来使消费者指向提供者的服务,当提供者位置改变。消费者就要修改并重新部署,非常不方便。这就需要一个强大的服务发现机制,消费者可通过该机制获取服务提供者的网络信息——服务发现组件就提供了这种服务!1、提供者、消费者和服务发现组件三者的关系各微服务启动时,将自己的网络信息注册到服务发现组件中 服务消费者可以从发现组件中获取提供者的网络地址,并调用服务...
2018-12-19 17:24:59 843
原创 三、Spring Cloud实战微服务
1、Spring Cloud实战前提1.1、技术储备 语言基础——Spring Cloud是基于Java语言的工具套件,同时是基于Spring Boot构建的,所以要有Java+SpringBoot基础1.2、工具及版本 jdk1.8 + springBoot1.4.3.RELEASE + SpringCloud Camden SR4 + Maven3.3.92、服...
2018-12-18 19:27:32 260 1
原创 二、微服务框架——Spring Cloud
1、Spring Cloud简介 Spring Cloud并不是“云计算的解决方案”。而是在SpringBoot基础上,快速构建分布式系统的工具集。适合部署在Docker或PaaS上。2、Spring Cloud的特点 约定优于配置 适用于各种开发环境——各种服务器或云环境(如阿里云、AWS等) 隐藏了组件的复杂性,提供了声明式、无xml配置 ...
2018-12-18 16:39:56 255
原创 一、微服务架构概述
1、为什么会出现微服务1.1、单体应用的问题 单体应用——一个war包包含了所有功能的应用程序。 问题:随着需求增加,一个单体项目会变得越来越臃肿,可维护性降低。复杂性高:模块多、依赖不清,混乱堆砌 技术债务:技术人员变更,老代码难以维护修改 部署频率低:每次简单修改就要整个臃肿项目重新部署,所以一般少部署 可靠性差:一个小bug,可能导致整个项目的崩溃(如:死循...
2018-12-18 15:31:36 5764 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人