- 博客(23)
- 资源 (16)
- 问答 (2)
- 收藏
- 关注
原创 每天学点SpringCloud(七):路由器和过滤器-Zuul
为什么要使用Zuul先来看一下下方这个图假如现在我们具有四个微服务,分别是用户、订单、支付、催收微服务,它们的调用方式分别是使用http、restful、thrift、kafka。这个时候如果我们在客户端直接调用的话感觉是不是太费劲了,客户端需要维护这几种调用方式的客户端,如果后期新增微服务或者减少或者更换调用方式等,都需要修改客户端。那么我们来看一下加入Zuul以后是什么样子的呢...
2018-07-15 17:34:30 436
原创 每天学点SpringCloud(六):Hystrix使用
Hystrix是一个实现断路器模式的库。什么是断路器模式呢?就像我们家庭中的电闸一样,如果有那一处出现意外,那么电闸就会立刻跳闸来防止因为这一处意外而引起更大的事故,直到我们确认处理完那一处意外后才可以再打开电闸。而Hystrix的存在就是为了预防程序中出现这种问题而导致程序不可用的情况。比如说我们有三个微服务 A、B、C,其中A依赖于B,B依赖于C,如果这时候C...
2018-07-14 22:34:16 347
原创 每天学点SpringCloud(五):如何使用高可用的Eureka
前几篇文章我们讲了一下Eureka的基础使用,但是呢有一个很重要的问题,我们讲的都是单机版的情况,如果这个时候Eureka服务挂了的话,那么我们的服务提供者跟服务消费者岂不是都废了?服务提供者和消费者都废了的话那这个程序还有存在的意义么? 那么今天咱们就讲一讲如何解决这个问题。相信大家都知道,这个问题是我们提供高可用服务必须经历的问题。解决方案就是加集群,那么我们来...
2018-07-13 08:49:57 494
原创 每天学点SpringCloud(四):Feign的使用及自定义配置
Feign:SpringCloud的官网对它的定义是这样的:是一个声明式的Web服务客户端。它支持Feign本身的注解、JAX-RS注解以及SpringMVC的注解。Spring Cloud集成Ribbon和Eureka以在使用Feign时提供负载均衡的http客户端。Feign的使用我们先来看一看如何在项目中使用Feign1. 首先呢 ,我们把原先的cloud-...
2018-07-12 08:55:50 790 1
原创 每天学点SpringCloud(三):自定义Eureka集群负载均衡策略
相信看了每天学点SpringCloud(一):简单服务提供者消费者调用,每天学点SpringCloud(二):服务注册与发现Eureka这两篇的同学都了解到了我的套路,没错,本篇博客同样是为了解决上篇的问题的。上篇我们使用Eureka默认的负载均衡解决了消费方调用服务方硬编码的问题,不过呢,因为是使用的默认负载均衡的策略,所以这次我们就搞一搞事情,来自定义一下它的策略。搞这个...
2018-07-11 21:22:34 973
原创 每天学点SpringCloud(二):服务注册与发现Eureka
相信看过每天学点SpringCloud(一):简单服务提供者消费者调用的同学都发现了,在最后消费者调用提供者的时候把提供者的地址硬编码在了代码中,这样的方式肯定是不行的,今天,我们就是要Eureka来解决这个问题创建Eureka服务1.我们在原先项目的基础上再新建一个项目cloud-demo-eureka此项目的依赖为<?xml ver...
2018-07-11 09:02:47 919 2
原创 每天学点SpringCloud(一):使用SpringBoot2.0.3整合SpringCloud
最近开始学习SpringCloud,在此把我学习的过程记录起来,跟大家分享一下,一起学习。想学习SpringCloud的同学赶快上车吧。本次学习使用得SpringBoot版本为2.0.3.RELEASE,SpringCloud版本为Finchley.RELEASE创建父Maven工程首先我们创建一个Maven项目我们把此项目当做我们项目的父项...
2018-07-10 20:38:43 1842
原创 常见的web攻击手段
XSS:跨站脚本攻击-典型实例为:当用户在表达输入一段数据后,提交给服务端进行持久化。如果此用户输入的是一段脚本语言,而服务端用户输入的数据没有经过转码、校验等就存入了数据库,在其他页面需要展示此数据时,就会执行此用户输入的语言。简单来说,JS的强大不用我来解释吧-推荐防御措施:对用户输入的信息进行转义,例如<>'等等特殊字符。当然,其实很多前端框架也支持这么...
2018-07-05 22:51:14 2673
原创 入门设计模式之状态模式
学习更多设计模式请参考:入门设计模式之汇总篇 状态模式:允许一个对象在其内部状态改变时改变其行为。 举一个简单的小例子,我们在对一个小姐姐搭讪的时候,根据小姐姐的心情如何我们可能会得到不同的回复。 看一下类图 Girl:抽象状态接口:用于封装男孩对象搭讪小姐姐获得回复的接口 AngryGirl、HappyGirl:两个状态实现类...
2018-07-05 21:43:53 277
原创 入门设计模式之备忘录模式
学习更多设计模式请参考:入门设计模式之汇总篇 备忘录模式:在不破坏封装的条件下,将一个对象的状态捕捉住,并在外部化存储起来,从而可以在将来合适的时候把这个对象还原到存储时的状态。 通常的备忘录模式包含3个角色:发起人角色:这个角色就是需要被保存状态的角色 备忘录角色:负责保存发起人角色的状态的对象 负责人角色:负责保存备忘录对象,且它不能看到备忘录的内容 我们...
2018-07-04 22:23:41 280
原创 入门设计模式之命令模式
学习更多设计模式请参考:入门设计模式之汇总篇 命令模式:把命令包装成对象,将命令发送者和命令接受者的耦合降低举个例子,皇帝发圣旨招一个大臣入宫。这里的皇帝就是客户端,而圣旨就是命令,大臣就是命令接受者。那么命令发送者通常都是某个公公对吧。这里就是一个命令模式的实践,为什么这样说呢?平常我们写代码都是一个方法直接调用另一个方法,这样耦合性太高了,你总不能让皇帝跑到大臣家告诉他找他有点事吧,要是都这样...
2018-07-03 21:12:14 287
原创 入门设计模式之责任链模式
学习更多设计模式请参考:入门设计模式之汇总篇 责任链模式:很多对象由每一个对象对其下家的引用而连接起来行成的一条链。其实责任链模式一直在我们的身边。某一天,董事长有个想法,他吩咐给了经理,经理吩咐给了组长,组长分配给了你我。这时候我们发现,我们没有下级了呀,咋办,那就干呗。上方这个任务分配的过程就是责任链模式,一个事件会一直向下层传递,董事长并不关心是谁解决的这个问题,对他来说只要问题解决了就行。...
2018-07-02 22:02:55 294
原创 Java工具类之在服务器发送HTTP请求
使用之前首先添加maven依赖或者是jar包<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.2</version>&
2018-07-02 09:34:12 439
原创 智享系列之如何让你的网站免费使用阿里云的Https服务
刚刚给智享加上了Https,在这个过程中遇到了一些坑,特此记录一下首先就是购买的时候第一个坑如下图所示进入了购买页面以后发现,what?怎么没有免费版。其实这个真的是它隐藏的太深了,我们按照下图所示,首先选择品牌为Symantec然后选择保护类型为1个域名以后就会出现免费型的了接着就是证书购买以后进入我的控制台按照提示进行补全信息提交审核就可以了,个人感觉审核特别快,我的审核1分钟就搞定了。审核结...
2018-07-02 09:30:46 286
原创 入门设计模式之汇总篇
入门设计模式之单例注意一下文章都伴有UML图,不了解的同学请先参考一下:这个几分钟几张图教你学会如何使用UML入门设计模式之建造者入门设计模式之原型入门设计模式之工厂入门设计模式之观察者入门设计模式之模板入门设计模式之策略入门设计模式之桥梁入门设计模式之外观入门设计模式之享元入门设计模式之代理入门设计模式之合成入门设计模式之装饰入门设计模式之适配器持续更新中。。。。。。。。。。。。入门设计模式之单...
2018-07-01 00:44:08 490
原创 入门设计模式之观察者
学习更多设计模式请参考:入门设计模式之汇总篇观察者模式:多个观察者对象同时观察一个主题对象,当这个主题对象发生变化时,会通知所有的观察者来看一下下方类图Subject:主题类,所有主题的父类,负责对观察者的管理,有添加观察者,删除观察者,通知所有的方法SubjectImpl:主题子类,拥有状态属性,当状态改变时会调用父类的notifyObserver方法通知所有观察者Observe:观察者,定义了...
2018-07-01 00:43:14 302
原创 入门设计模式之模板
学习更多设计模式请参考:入门设计模式之汇总篇模板方法:在一个抽象类中定义一部分的实现,其余的定义抽象方法迫使子类实现相信看了上方的定义以后大家已经理解了模板模式,我们来看一下类图抽象类定义了4个方法,其中operation是私有的,在这个方法里调用了其他三个方法,而方法3是自己实现的。方法1和2是强迫子类实现的。ClassImpl1,ClassImpl2都继承了抽象类,并分别对方法1和2进行了不同...
2018-07-01 00:42:42 328
原创 入门设计模式之策略
学习更多设计模式请参考:入门设计模式之汇总篇策略模式:使算法在不影响客户端的情况下发生变化。例如某宝上的一件商品,有时候8折并返现3元、有时候7折返现1元、有时候9折不返现、有时候不打折返现2元等等,我们可以看到这个商品不同时刻要计算利润或者什么的时候是不一样的,现在就可以用到策略模式了。代码:public abstract class Algorithm { public abstrac...
2018-07-01 00:42:16 330
原创 入门设计模式之桥梁
学习更多设计模式请参考:入门设计模式之汇总篇桥梁模式:将抽象化与实现化脱藕,使二者可以独立的变化大家应该对日志记录比较熟悉,不知道有没有自己写过一个日志处理的程序,你又是如何实现的呢?今天的桥梁模式就根据一下需求来分析一下:支持2个以上平台支持2个以上格式大家可以看一下这个需求哈,2个以上,那我就实现2个呗,一般人可能都会这样想。然后开始写,比如Windows存Txt格式、Windows存Xml格...
2018-07-01 00:41:51 321
原创 入门设计模式之外观
学习更多设计模式请参考:入门设计模式之汇总篇外观模式:外部系统与子系统的通信必须通过一个统一的对象进行举个例子,现在结婚是不是都找婚庆公司啊,为什么呢?因为如果不找婚庆公司自己筹备的话,我们可能得自己跑去订酒店,自己去找主持人,自己去找摄像,自己去找车队。是不是太麻烦了点,而有了婚庆公司就不一样了,我可以吩咐他去找酒店,找主持人等等。。。来看一下类图:在这里Facade就相当于婚庆公司的角色,我们...
2018-07-01 00:41:19 330
原创 入门设计模式之享元
学习更多设计模式请参考:入门设计模式之汇总篇享元模式:以共享的方式高效的支持大量的细粒度对象我们以咖啡为例,一家咖啡店一天卖出几千杯咖啡其实这几千杯也不过是几十种口味。在Java中你觉得是new几千次咖啡好还是new几十次口味好呢?享元模式就是利用的这个原理来共享的变量了。来看一下类图:FlavorFactory:口味工厂,根据客户所需口味生产咖啡Client:售货员,负责通知工厂生产咖啡,以及出...
2018-07-01 00:40:52 297
原创 入门设计模式之代理
学习更多设计模式请参考:入门设计模式之汇总篇代理模式;给某个对象提供一个代理对象,由代理对象持有对原对象的引用。代理模式就比较符合中国人含蓄的性格,假如有个姑娘想要找个对象,但是直接满大街去喊我要找对象的不是很多吧。大部分的女孩还是倾向于先去找一个媒人,让媒人来给自己介绍对象。这里的媒人其实就是女孩的代理对象了。先来看一下类图:我们可以看到女孩跟媒人都实现了一个相亲的接口,然后呢媒人持有女孩的引用...
2018-07-01 00:40:21 306
原创 入门设计模式之装饰
学习更多设计模式请参考:入门设计模式之汇总篇装饰模式:以对客户端透明的方式扩展对象的功能装饰模式类图如下:我们分析一下类图:Girl:女孩接口,定义了一个getName()方法XiaoWang:女孩的实现类,她实现了getName方法,Decorator:装饰类,当我们想要扩展小王的方法时,又不能改变她的代码,也不推荐使用继承,那么这个时候装饰类就上场了。此装饰类对小王进行了包装,由他来提供小王的...
2018-07-01 00:39:45 313
MySql Oracle Redis Mycat MongoDB Memcached数据库教程
2019-03-15
21套Java项目
2018-07-11
MyCat实现多租户时使用ThreadLoacl碰到的问题
2017-10-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人