自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

G0_hw

路漫漫其修远兮,吾将上下而求索

  • 博客(16)
  • 收藏
  • 关注

原创 Spring Cloud核心组件(五):Zuul

一. Zuul是什么?二. Zuul路由基本配置(1)修改hosts文件,添加如下映射:127.0.0.1 myzuul.com(2) 新建Gateway工程server: port: 9527 spring: application: name: microservice-zuul-gateway eureka: client: se...

2018-11-28 22:06:32 443

原创 Spring Cloud核心组件(四):Hystrix

一. Hystrix是什么?分布式系统面临的一种重要问题:服务雪崩.复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某个时刻将不可避免的失败。Hystrix断路器是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时,异常等,Hystrix能保证在一个依赖服务出现问题时,不会导致整体服务失败,避免级联故障,提高分布式系统的弹性."...

2018-11-27 23:22:38 231

原创 Spring Cloud核心组件(三):Feign

一. Feign是什么Feign是一个声明式的web服务客户端,使得编写web服务客户端变得非常容易.只需创建一个接口,然后在上面添加注解即可.Spring Cloud对Feign进行了封装,使其支持Spring MVC标准注解和HttpMessageConverters。Feign可以与Eureka和Ribbon组合使用以支持负载均衡。Feign是怎么出来的?现在大家都习惯面向接口编程,...

2018-11-26 23:14:42 413

原创 Spring Cloud核心组件(二):Ribbon

一. Ribbon是什么Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具,主要提供客户端的软件负载均衡算法。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单说,就是在配置文件中列出Load Balance后面所有的机器,Ribbon会自动的基于某种规则(如简单轮询,随机连接等)去连接这些机器。我们也可以很容易的使用Ri...

2018-11-26 21:37:58 443 2

原创 Spring Cloud核心组件(一):Eureka

一.前言Spring Cloud是一个全家桶式的技术栈,包含了很多组件,如Eureka、Ribbon、Feign、Hystrix、Zuul等。为了更好的理解这些组件,后面会结合以下业务场景来看看这几个组件如何相互协作,各自发挥的作用以及其背后的原理。业务场景介绍:假设咱们现在开发一个电商网站,要实现支付订单的功能,流程如下:创建一个订单后,如果用户立刻支付了这个订单,我们需要将订单状态更...

2018-11-26 21:36:55 930

原创 设计模式---责任链模式

一.什么是责任链模式责任链模式(Chain of Responsibility)将接收者对象连成一条链,并在该链上传递请求,直到有一个接收者对象处理它。通过让更多对象有机会处理请求,避免类请求的发送者和接收者之间的耦合。二.如何实现责任链模式/** * Created by John on 2018/11/22. * 价格处理人,负责处理客户折扣申请 */public abstr...

2018-11-22 23:07:43 162

原创 动态规划

一.什么是动态规划动态规划(Dynamic Programming)是一种分阶段求解决策问题的数学思想。一般包含三个重要的概念:最优子结构,边界,状态转移公式。总结起来就是一句话:大事化小,小事化了。二. 题目:有一座高度是10级台阶的楼梯,从下往上走,每跨一步只能向上1级或者2级台阶。要求用程序来求出一共有多少种走法。比如,每次走1级台阶,一共走10步,这是其中一种走法。我们可以简...

2018-11-19 23:45:22 194

原创 安全架构之Https--让你的隐私数据不再暴露

一.对称加密算法特点:加密和解密的密钥相同问题:网络是不安全的,如何实现密钥的安全传输?二.RSA : 非对称加密特点:发送方和接收方各持有一对钥匙(公钥 和私钥),用公钥(私钥)加密的数据只有对用的私钥(公钥)才能解密。问题:RSA的速度较慢三.非对称加密 + 对称加密(1)发送方或接收方事先生成一个对称加密算法的密钥,用RSA方式安全的发送给对方;(2)对方接受到这个密钥,...

2018-11-18 23:03:50 648

原创 使用extends定制化类

一.场景示例微服务间经常会涉及到服务的相互调用,现在假设某个服务对外暴露的接口规定入参格式都为Map<String,String>.二.常见的参数封装方式 Integer a = 123; Long id = 123L; Boolean flag = Boolean.TRUE; String b = "abc"; ...

2018-11-13 18:01:25 234

原创 设计模式---适配器模式

一.概述适配器模式(Adapter Pattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。举个生活中的例子,我们笔记本用到的充电器其实就是个适配器,笔记本电脑的工作电压是20V,而我国的家庭用电是220V,如何让20V的笔记本电脑能够在220V的电压下工作?就是靠这...

2018-11-12 22:19:38 181

原创 设计模式---建造者模式

一.概述建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一种对象创建型模式,又称为生成器模式,它是一种较为复杂、使用频率也相对较低的创建型模式。建造者模式为客户端返回的不是一个简单的产品,而是一个由多个部件组成的复杂产品。举个简单的例子,比如我们去买电脑,买的是成品而不是散装的零件。产品的内部表象一个产品常有...

2018-11-12 21:42:38 346

原创 设计模式---原型模式

一.概述原型模式(Prototype Pattern):使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式是一种对象创建型模式。实际上就相当于克隆,因为原型模式的意图是通过复制一个现有的对象来生成新的对象,而不是通过实例化的方式。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的...

2018-11-11 22:49:02 204

原创 设计模式---抽象工厂模式

一.概述抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,创建多个产品族中的产品对象。这就是抽象工厂的用意。从上图可以看出, 抽象工厂模式涉及到抽象工厂角色,具体工厂角色,抽象产品角色以及具体产品角色等四个角色:抽象工厂角色:担任这个角色的是工厂方法模式的核心,它是与应用程序无关的。任何在模式...

2018-11-11 21:47:40 230

原创 设计模式---工厂方法模式

一.概述上一篇介绍简单工厂模式的时候提到它对开闭原则支持的不够,因为如果有新的产品加入到系统中去,就需要修改工厂类,就违反了开闭原则了,这次介绍的工厂方法模式在保持简单工厂模式优点的前提下,还满足了开闭原则,关键在于它的多态性。工厂方法模式是类的创建模式,又叫做虚拟构造(Virtual Constructor)子模式或者多态工厂(Polymorphic Factory)模式。工厂方法模式的用...

2018-11-11 16:06:10 253

原创 设计模式---简单工厂模式

一.概述简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method)模式,是由一个工厂对象决定创建出哪一种产品类的实例。二.代码演示/** * Created by John on 2018/6/22. * 简单工厂模式(静态工厂方法模式) */public class SimplePizzaFactory { public static P...

2018-11-11 15:47:18 169

原创 Spring探索(六):AOP二世

1.@AspectJ形式的Spring AOP引入了AspectJ的Pointcut描述语言,直接使用POJO来定义Aspect以及相关的Advice。Spring AOP使用AspectJ的类库进行Pointcut的解析和匹配,但最终的实现机制还是Spring AOP的架构,即使用代理模式处理横切逻辑的织入。@AspectJ形式的Pointcut声明包含两部分:Pointcut Expre...

2018-11-05 23:13:14 190

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除