自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

面朝大海,春暖花开

IN IT && WIN IT

  • 博客(31)
  • 资源 (1)
  • 收藏
  • 关注

转载 mysql索引组织表

mysql索引组织表摘自《mysql技术内幕》在Innodb存储引擎中,表都是根据主键顺序存放的,这种存储方式的表称为索引组织表(index organized table)每张表都有一个主键(primary key),如果建表时没有显示定义主键,则Innodb存储引擎会按如下方式选择或者创建主键:首先判断表中是否有非空的唯一索引(unique not null),如果有则该列为主键...

2019-05-27 22:16:17 496

转载 spring boot 异常处理

spring boot 异常处理处理Controller层异常:@Slf4j@ControllerAdvicepublic class GlobalExceptionHandler { /** * @ExceptionHandler 可以指定捕获特定的异常 */ @ResponseBody @ExceptionHandler(value = ...

2019-05-26 12:08:13 114

转载 SpringBoot扫描不到第三方service依赖的Bean

SpringBoot扫描不到第三方service依赖的Bean写在前面假设在这样的两个工程:boot-api: 专门提供接口biz-service: 业务service的实现问题描述现在在boot-api中引入biz-service的jar包,但是在boot-api工程却注入不了biz-service中的相关的Bean解决方案在boot-api工程的启动类中加入:@Compon...

2019-05-25 23:11:31 8547

转载 spring boot整合redis序列化

spring boot整合redis序列化引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency&gt...

2019-05-25 11:29:20 592

转载 Apache Directory Studio创建组织机构树

Apache Directory Studio创建组织机构树准备了解和介绍LDAP的相关知识,一个非常棒的有关介绍LDAP的网站: (www.zytrax.com)[http://www.zytrax.com/books/ldap/]工具准备下载Apache Directory Studio新建新建ApachDS Server默认的,ApacheDS给我们新建了两个分区(part...

2019-05-25 09:18:05 1196

转载 tomcat布署war包

tomcat布署war包基于apache-tomcat-8.5.20tomcat准备准备一个干净的tomcat,直接去官网下载,并解压,如目录为D:\apache-tomcat\war包准备编译好web.war包,将web.war包放置D:\apache-tomcat\webapps\下面修改server.xml在tomcat目录下找到conf\server.xml,找到:<...

2019-05-21 21:15:07 239

转载 rabbitmq生产者消息确认机制

rabbitmq生产者消息确认机制问题描述当生产者发送消息给rabbitmq服务器时,消息是否真正的到达了服务器?为了保证生产者发送的消息能够可靠的发送到服务器(即消息落地),rabbitmq提供了两种方式:通过事务实现通过发送方确认机制(publisher confirm)实现事务机制rabbitmq与事务相关的方法:channel.txSelect(): 将当前信道设置成事...

2019-05-19 18:25:39 4722

转载 rabbitmq过期时间

rabbitmq过期时间(TTL)TTL,Time-to-Live。rabbitmq支持对消息和队列设置TTL消息设置TTL消息在队列中的生存时间超过设置的TTL时,就会变成死信队列中设置消息TTL在队列中设置消息的TTL,那么队列中的所有消息都有相同的过期时间,可以通过声明队列的时候设置x-message-ttl参数Map<String, Object> map = ...

2019-05-19 16:16:50 1252

转载 rabbitmq的消息模式

rabbitmq的消息模式(message pattern)rabbitmq的消息模型是基于交换器(exchange),队列(queue)和它们之间的绑定(bingdings),有以下几种:For point-to-point communication between the publisher and the broker, you can use a default or a dire...

2019-05-19 16:15:54 1661

转载 rabbitmq持久化

rabbitmq持久化持久化是为提高rabbitmq消息的可靠性,防止在异常情况(重启,关闭,宕机)下数据的丢失rabbitmq持久化分为三个部分: 交换器的持久化、队列的持久化和消息的持久化交换器的持久化交换器的持久化是通过声明队列时,将durable参数设置为true实现的。如果交换器不设置持久化,那么rabbitmq服务重启之后,相关的交换器元数据将会丢失,不过消息不会丢失,只是...

2019-05-19 12:02:25 15570

转载 rabbitmq优先队列

rabbitmq优先队列优先队列:顾名思义,拥有高优先级的队列具有高的优先权,优先级高的消息具备优先被消费的权力在rabbitmq中,优先队列有两种概念:队列优先级队列中的消息优先级队列优先级可以在声明队列的时候设置x-max-priority参数来定义一个优先队列:Map<String, Object> map = new HashMap<>();...

2019-05-19 11:29:43 1663

转载 rabbitmq实现延迟队列

rabbitmq实现延迟队列延迟队列串存储的对象是对应的延迟消息。rabbitmq本身没有支持延迟队列的功能,通过DLX(死信队列)+TTL消息模拟延迟队列延迟消息是指消息被发送以后,并不想让消费者立刻拿到消息,而是等待特定时间后,消费者才能拿到消息并消费延迟队列场景订单系统中,如果用户下单30分钟内没有进行支付,就需要自动将这些订单设置为失效支付结果通知,为1分钟,5分钟,10分...

2019-05-19 10:45:20 894

转载 rabbitmq死信队列

rabbitmq死信队列DLX,全称为Dead-Letter-Exchange,可以称为死信交换器。当消息在一个队列串变成死信(dead message)之后,它能被重新发送到另一个交换器中,这个交换器就是DLX,绑定DLX的队列称为死信队列消息就死信队列原因:消息被拒绝(Basic.Reject/Basic.Nack),并且设置requeue为false;消息过期队列达到最大长度...

2019-05-18 23:04:47 256

转载 rabbitmq消费端确认机制

rabbitmq消费端确认机制为了保证消息从队列可靠的到达消费者,rabbitmq提供了消息确认机制(message acknowledgement)。消息确认消费者在订阅队列时,可以指定autoAck参数:当autoAck等于true时,rabbitmq会自动把发送出去的消息置为确认,然后从内存(或者磁盘)中删除,而不管消费者是否真正的消费到了消息当autoAck等于false时,r...

2019-05-18 23:02:11 1983

转载 rabbitmq消费消息的模式

rabbitmq消费消息的模式rabbitmq的消费模式分为两种: 推(Push)模式和拉(Pull)模式。推模式采用Basic.Consume进行消费,而拉模式则是调用Basic.Get模式推模式接收消息一般通过实现Consumer接口或者继承DefaultConsumer接口来实现拉模式通过channel.basicGet方法可以单条的获取消息GetResponse respons...

2019-05-18 23:01:26 2314

转载 zuul实现限流

zuul限流限流算法漏桶: leakey bucket,原理:桶的下方的小孔会以一个相对恒定的速率漏水,而不管入桶的水流量,这样就达到了控制出水口的流量令牌桶: token bucket,原理:以相对恒定的速率向桶中加入令牌,请求来时于桶中取令牌,取到了就放行,没能取到令牌的请求则丢弃限流粒度粗粒度网关限流单个服务细粒度user: 认证用户或者匿名,针对某个用户粒度进行...

2019-05-18 10:14:31 7491 4

转载 rabbitmq消息投递接收流程

rabbitmq消息投递接收流程摘自《rabbitmq实战指南》消息投递消息投递指的是生产发送消息的过程:生产者连接到rabbitmq broker,建立连接(Connection),开启一个信道(Channel)生产者声明一个交换器,设置交换器类型和是否持久化的属性生产者声明一个队列,设置如是否排它,是否持久化和是否自动删除属性生产者通过路由键(RoutingKey)将交换器和队...

2019-05-18 09:38:58 1805

转载 rabbitmq概念

rabbitmq基本概念摘自《rabbitmq实战指南》生产者和消费者Producer: 生产者,投递消息的一方Consumer: 消费者,接收消息的一方Broker: 消息中间件的服务节点队列Queue: 队列,是rabbitmq的内部对象,用于存储消息交换器、路由和绑定交换器Exchange: 交换器,生产者将消息发送到Excange,由交换器将消息路由到队列中,如...

2019-05-18 09:37:45 141

转载 范型的继承

范型的继承子类继承父类结果:保持子类的范型化子类不再范型化一般的范型继承范型父类:public class FatherFoo <T, E> { private T t; private E e; public T getT() { return t; } public void setT(T t) { ...

2019-05-18 08:13:34 255 1

转载 spring源码之InstantiationAwareBeanPostProcessor

spring源码之InstantiationAwareBeanPostProcessorBeanPostProcessor的子接口,添加了实例化之前(before-instantiation)的回调,和实例化之后(after instantiation)的回调,但是这些操作发生在显示的设置属性或者自动注入之前发生。一般用来阻止具体的目标bean默认实例化,例如给目标bean创建代理对象(如惰性...

2019-05-11 10:12:40 1886

转载 spring源码之BeanPostProcessor

spring源码之BeanPostProcessor工厂式的钩子方法,用来对于一个新的实例化之后的bean进行自定义的修改(custom modification),比如,校验标记接口(如 Serializable), 用代理类来封闭这个bean。spring内部的Aop实现也是通过BeanPostProcessor实现的BeanPostProcessor源码public interfa...

2019-05-11 10:10:44 304

转载 zuul网关上传文件

zuul网关上传文件在zuul网关工程加入实现上传功能的逻辑:@RestControllerpublic class UploadController { @PostMapping(value = "/upload") public String upload(@RequestParam(value = "file", required = true) Multipart...

2019-05-04 17:09:03 972

转载 ribbon不使用eureka,直连服务

ribbon不使用eureka,直连服务Greenwich.SR1版本在默认情况下,ribbon客户端会从eureka注册中心服务注册的信息列表,来达到动态负载均衡的功能,但有些时候可以需要直连某个服务,绕过eureka注册中心解决方案首先在ribbon中禁用eureka的功能:ribbon: eureka: enabled: false然后配置服务直连列表:rb-pr...

2019-05-04 09:48:00 3108

转载 ribbon的饥饿加载

ribbon的饥饿加载Greenwich.SR1版本ribbon在进行客户端负载均衡的时候并不是在启动的时候就加载上下文的,而是在实际请求的时候才会创建,所以第一次调用会比较慢,严重的时候会引起调用超时解决方案通过指定具体的ribbon客户端名称来开启饥饿加载,在启动的时候便加载所有配置项的上下文ribbon: eager-load: enabled: true cl...

2019-05-04 09:47:07 410

转载 ribbon负载均衡策略

ribbon负载均衡策略Greenwich.SR1版本类中文描述RandomRule随机策略随机选择serverRoundRobinRule轮询策略按顺序循环选择serverRetryRule重试策略在配置时间内选择server不成功,则一直尝试选择一个可用的serverBestAvailableRule最低并发策略逐个考察server,...

2019-05-04 09:46:34 290

转载 Feign结合Hystrix首次请求失败问题

Feign结合Hystrix首次请求失败问题问题描述同题…分析Hystrix默认超时时间是1秒,如果超出这个时间尚未做出反应m,就会进入fallback,由于Bean的装配和懒加载机制,Feign首次请求都会加载比较慢解决方案1.设置hystrix超时时间hystrix: command: default: execution: isolati...

2019-05-03 22:31:05 1004

转载 Feign不支持GET方式传递POJO

Feign不支持GET方式传递POJO问题描述同题…

2019-05-03 22:20:17 986 1

转载 Feign使用okhttpclient时报错:original request is required

Feign使用okhttpclient时报错问题描述Feign使用okhttpclient时报错:java.lang.IllegalStateException: original request is required:java.lang.IllegalStateException: original request is required at feign.Util.checkStat...

2019-05-03 10:37:27 5193

转载 Feign服务之间调用传递token

Feign服务之间调用传递token问题描述在进行认证鉴权的时候,不管是jwt不是security,当使用Feign时就会发现外部请求到A服务的时候,A服务是可以拿到token的,然而当服务使用Feign调用B服务时,token就会丢失,从而认证失败解决方案通过实现RequestInterceptor拦截器,在调用Feign服务的时候,在请求头中添加需要传递的token@Configur...

2019-05-03 09:59:53 7460

原创 spring boot整合dubbo使用多协议dubbo和rest

spring boot整合dubbo使用多协议dubbo和rest引入依赖略…定义接口@Path("hello")@Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})publ...

2019-05-01 16:09:51 6068 3

转载 idea新建的yml文件没有提示

idea新建的yml文件没有提示有时候新建的yml文件并没有提示,可以这样解决解决方案File -> Project Structure -> Facets,将新建的bootstrap.yml文件和相对应的工程关联即可:...

2019-05-01 14:27:31 16127 1

空空如也

空空如也

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

TA关注的人

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