摘要: 消息队列:1,为什么使用消息队列,消息队列有什么优点和缺点?https://mp.weixin.qq.com/s/-7SD1BfxUct7TgIjxPvDSg2,如何保证消息队列高可用,保证消息不被重复消费?https://mp.weixin.qq.com/s/-7SD1BfxUct7TgIjxPv 阅读全文
posted @ 2019-01-12 14:00 webwangbao 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-09-10 20:04 webwangbao 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 前言 设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。 缓存穿透 缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时, 阅读全文
posted @ 2018-07-11 08:54 webwangbao 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 1,概念: 在多线程环境中,我们经常会遇到多个线程访问同一个共享资源的情况,这个时候必须考虑如何维护数据一致性,常见的方式是加锁处理。只有拿到锁的线程才可以访问共享资源,通过锁就可以让线程对共享资源的访问都是顺序的,避免出现一些数据不一致的问题。 在使用锁的过程中同样也有风险,最为常见的就是死锁现象 阅读全文
posted @ 2018-07-09 10:10 webwangbao 阅读(10344) 评论(2) 推荐(1) 编辑
摘要: https://www.imooc.com/article/29354,非常详细的一篇关于RPC框架thrift介绍以及整合SpringBoot 阅读全文
posted @ 2018-07-03 15:24 webwangbao 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 1,该笔记主要是记录自己学习Springboot整合RabbitMq过程,推荐一篇学习RabbitMq非常好的博客:http://blog.720ui.com/2017/rabbitmq_action_01_helloworld/ 2,RabbitMq简介:AMQP,即Advanced Messag 阅读全文
posted @ 2018-07-02 20:14 webwangbao 阅读(654) 评论(0) 推荐(0) 编辑
摘要: 1,前端参数不可信,对于后端开发人员来说应该是一条铁律,所以对于前端参数的校验,必不可少,而统一的前端参数校验工具,对我们进行参数校验起到事半功倍的效果 2,统一参数校验工具ValidParamUtils 3,自定义参数异常 4,使用自定义的统一参数校验工具 阅读全文
posted @ 2018-07-02 15:56 webwangbao 阅读(1642) 评论(0) 推荐(0) 编辑
摘要: 1,概述:在一些高并发的场景中,比如秒杀,抢票,抢购这些场景,都存在对核心资源,商品库存的争夺,控制不好,库存数量可能被减少到负数,出现超卖的情况,或者 产生唯一的一个递增ID,由于web应用部署在多个机器上,简单的同步加锁是无法实现的,给数据库加锁的话,对于高并发,1000/s的并发,数据库可能由 阅读全文
posted @ 2018-06-30 15:37 webwangbao 阅读(45365) 评论(1) 推荐(4) 编辑
摘要: guava限流工具使用 非常详细的一篇使用博客:https://www.cnblogs.com/yeyinfu/p/7316972.html 1,原理:Guava RateLimiter基于令牌桶算法,我们只需要告诉RateLimiter系统限制的QPS是多少,那么RateLimiter将以这个速度 阅读全文
posted @ 2018-06-29 13:04 webwangbao 阅读(1876) 评论(0) 推荐(0) 编辑
摘要: AOP切面日志的使用方式 阅读全文
posted @ 2018-06-26 17:31 webwangbao 阅读(1060) 评论(0) 推荐(0) 编辑