摘要:
转自: https://segmentfault.com/a/1190000002715832 平时接触的开源产品如Redis、ACE,事件模型都使用的Reactor模式;而同样做事件处理的Proactor,由于操作系统的原因,相关的开源产品也少;这里学习下其模型结构,重点对比下两者的异同点; 反应 阅读全文
摘要:
转自: https://www.jb51.net/article/151974.htm 同事win10启动Spring Boot工程只要3秒左右,我的启动要30秒。开始以为是CPU差距太大,后来才觉得不是这样! 解决方案 1. hostname命令查看自己的 hostname $ hostname 阅读全文
摘要:
转自:https://www.cnblogs.com/owenma/p/8723551.html 问题的解读 对于上面三个例子,相信大家一定看出来了,我们的终端用户在使用不同的计算机产品时对于数据一致性的需求是不一样的: 1、有些系统,既要快速地响应用户,同时还要保证系统的数据对于任意客户端都是真实 阅读全文
摘要:
转自:https://www.jianshu.com/p/be2dc7c878dc 在java中,对于任意一个java对象,它都拥有一组定义在java.lang.Object上监视器方法,包括wait(),wait(long timeout),notify(),notifyAll(),这些方法配合s 阅读全文
摘要:
转自: 背景 分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务。如下图,对于同步调用,当库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。并且这种不可用可能沿请求调用链向上传递,这种现象被称为雪崩 阅读全文
摘要:
转自:https://www.jianshu.com/p/d1f22a555065 这是围绕 Sentinel 的使用场景、技术对比和实现、开发者实践等维度推出的系列文章的第三篇。 第一篇回顾: Dubbo 的流量防卫兵 | Sentinel如何通过限流实现服务的高可用性 - 传送门 第二篇回顾: 阅读全文
摘要:
转自:https://www.cnblogs.com/meet/p/5116430.html 一、命令模式介绍 命令模式:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或记录请求日志。以及支持可撤销的操作。 说白了,就是将一系列的请求命令封装起来,不直接调用真正执行者的 阅读全文
摘要:
转自: https://www.jianshu.com/p/685f074a32be HashMap遍历元素的顺序。 一,HashMap元素的底层存储顺序 我们都知道HashMap是“无序”的,也就是说不能保证插入顺序。但是,HashMap其实也是有序的,一组相同的key-value对,无论他们插入 阅读全文
摘要:
转自: https://www.cnblogs.com/zhuyeshen/p/12082839.html 索引是一种数据结构,用于帮助我们在大量数据中快速定位到我们想要查找的数据。索引最形象的比喻就是图书的目录了。注意这里的大量,数据量大了索引才显得有意义,如果我想要在 [1,2,3,4] 中找到 阅读全文
摘要:
转自: https://www.jb51.net/article/184718.htm 分布式锁三种实现方式: 1. 基于数据库实现分布式锁; 2. 基于缓存(Redis等)实现分布式锁; 3. 基于Zookeeper实现分布式锁; 一, 基于数据库实现分布式锁 1. 悲观锁 利用select … 阅读全文