加载中
为监控而生的多级缓存框架 layering-cache

简介 layering-cache是在Spring Cache基础上扩展而来的一个缓存框架,主要目的是在使用注解的时候支持配置过期时间。layering-cache其实是一个两级缓存,一级缓存使用Caffeine作为本地缓存,...

缓存穿透、缓存击穿和缓存雪崩实践

我们使用缓存的主要目是提升查询速度和保护数据库等稀缺资源不被占满。而缓存最常见的问题是缓存穿透、击穿和雪崩,在高并发下这三种情况都会有大量请求落到数据库,导致数据库资源占满,引起...

2018/12/29 10:25
2.5K
系统重构笔记

重构概念 在不改变软件可观察行为的前提下,对软件内部结构的一种调整,提高其可理解性,降低修改成本。 重构节奏 测试、小修改、测试、小修改......正是这种节奏让重构得以快速安全而安全的...

2018/12/25 00:26
26
CompletableFuture get方法一直阻塞或抛出TimeoutException

问题描述 最近刚刚上线的服务突然抛出大量的TimeoutException,查询后发现是使用了CompletableFuture,并且在执行future.get(5, TimeUnit.SECONDS);时抛出了TimeoutException异常,导致接口响...

2018/12/16 00:13
36
Rabbit MQ 延迟队列

问题描述 在订单系统,当用户下单后需要在10分钟内完成支付,否则取消订单。 解决方案 如果我们使用定时任务来做,那这个失效时间对不准确,当时可以提高定时任务的执行频率来减小这个误差。...

2018/06/08 20:45
41
Slf4j MDC机制

MDC 简介 MDC ( Mapped Diagnostic Contexts ),它是一个线程安全的存放诊断日志的容器。 Logback设计的一个目标之一是对分布式应用系统的审计和调试。在现在的分布式系统中,需要同时处理很...

2018/06/03 21:46
55
基于SLF4J MDC机制实现日志的链路追踪

问题描述 最近经常做线上问题的排查,而排查问题用得最多的方式是查看日志,但是在现有系统中,各种无关日志穿行其中,导致我没办法快速的找出用户在一次请求中所有的日志。 问题分析 我们没...

2018/06/03 15:29
580
基于Docker的部署

Docker是使用Dokerfile文件来编译自己的镜像的。 Dockerfile Dockerfile主要有如下的指令。 1.FROM 指令 FROM指令指明了当前镜像继承的基镜像。编译当前镜像时会自动下载基镜像,如: FROM u...

Spring Boot RabbitMQ实践

背景 我们现在有两个主要的系统一个是活动系统一个是奖品系统,活动系统会调用奖品系统发放奖励。 最开始两个之间只通过http直接调用,优点:开发成本低,没有多余组件引入;发放奖励实时返回...

Spring Boot 日志配置(LogBack,LockBack异步日志)

Spring Boot支持Java Util Logging、Log4J、Log4J2和LockBack作为日志框架,无论使用哪种日志框架,Spring Boot都为当前使用的日志框架的控制台及文件输出做好了配置。 默认使用LockBack日志...

加密算法 AES MD5 SHA1

加密算法通常分为对称性加密算法和非对称性加密算法,对于对称性加密算法,信息接收双方都需事先知道密匙和加解密算法且其密匙是相同的,之后便是对数据进行 加解密了。非对称算法与之不同,...

Docker加速器 DaoCloud

由于众所周知的原因,从Docker Hub难以高效地下载镜像。 除了使用VPN或代理之外,最为有效的方式就是使用Docker国内镜像。 DaoCloud是首个提供国内免费Docker Hub镜像的团体,可以使用DaoCl...

解决Springboot使用Redis反序列化遇到的类型转换异常

转至:https://chenzhihao.cc/archives/526 异常现象 在使用Springboot 配合 Redis做缓存处理的时候,单元测试中对象的序列化和反序列化操作均正常,但是项目Runing后,接口操作出现类型转换...

JMeter做压力测试,先调用第一接口,拿到返回值后去调用第二个接口(入门级)

1、打开界面建立线程组,并取一个名称 2、线程组下创建一个http请求,并进行配置 3、指定动态参数 名字必须和上面第二步接口中${XXX}符号里面的名称保持一致 4、添加一个响应断言 5、添加一个...

2018/02/07 17:17
168
Github Pages 开启 HTTPS 与 CDN 图片加速

20170621更新:最好不要使用360的网站卫士,访问加速实在是太差,还不如直接访问源网站的速度快。囧!!!! 由于Github Pages自带的域名支持开启HTTPS服务,自定义域名则不支持开启HTTPS服务...

nopad++ 安装插件 (nopad++ installation of plugin manager failed)

nopad++ installation of plugin manager failed The latest version of the plugin manager is 1.3.5 (see Notepad++ Plugin Manager) Try a manual install of the plugin manager: Close ...

2018/02/07 17:13
566
spring security实现注解式权限管理时不成功,注解@Secured 无效

<security:global-method-securityjsr250-annotationssecurity:global-method-securityjsr250-annotations="enabled" pre-post-annotations="enabled" secured-annotations="enabled" /> ...

2018/02/07 17:12
115
IDEA 配置多个SSH key

1. 切换到.ssh目录 2. 在.ssh目录下新建一个config文件 3. 编辑该文件加入服务器和配置文件的对应关系,如: Host github.com           Hostname github.com       User ...

2018/02/07 17:12
15
RabbitMQ 快速入门

前面我们介绍了RabbitMQ的基本概念,RabbitMQ基础概念详细介绍。在这里我们做一个简单的例子进行快速入门。 新建Spring Boot项目 引入依赖包 <parent>   <groupId>org.springframework.boot<...

RabbitMQ基础概念详细介绍

AMQP简介 AMQP,即 Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦和通讯。 AMQP的主要特征...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部