软件设计的五个基本原则

摘要: SOLID 1. Single Responsibility Principle(单一职责原则) single responsible很好理解,一个类,接口只能负责一个功能(职责),而不是不同功能杂糅在一起,使得可读性,可维护性降低 2. Open Closed Principle(开闭原则) op 阅读全文
posted @ 2021-02-25 12:02 mindSucker 阅读(404) 评论(0) 推荐(0) 编辑

Filter Pattern

摘要: 1.什么是Filter Pattern? Filter Pattern 也可以叫Intercepting Filter Pattern(拦截过滤器模式),这个范式可以让你在执行原有逻辑(核心逻辑)之前和之后额外执行一系列逻辑,像这样: 2.这个范式能给我们的代码带来什么好处? Filter Patt 阅读全文
posted @ 2021-01-28 21:06 mindSucker 阅读(96) 评论(0) 推荐(0) 编辑

关于Redisson MultiLock 的改良

摘要: 1. 背景:什么时候需要联锁(MultiLock)? 当我们需要对多个实例进行锁定,禁止别人同时修改任意一个锁定的实例,我们就需要一个联锁(MultiLock); 比如业务上,我需要同时操作1000条单据,处理过程是原子的,无法拆分;那么我们就必须使用上联锁(当然乐观锁也可以是一种选择); 2. 我 阅读全文
posted @ 2021-01-05 16:03 mindSucker 阅读(2077) 评论(0) 推荐(1) 编辑

最短路径算法-dijkstra

摘要: 首先dijkstra是一个人,一位计算机上古时期的先驱;而dijkstra是他用来向观众解释什么计算机想到的一个算法,如何计算两个地点的最短距离;当然这个最短距离,是有一个前提的,首先你要有一个已知各个点之间距离的路网; 比如这个图,我们如何去寻找A点到E点的最短距离?显然,正常人的直觉就是“这不是 阅读全文
posted @ 2021-01-05 11:40 mindSucker 阅读(93) 评论(0) 推荐(0) 编辑

windows cmd命令

摘要: 查看该端口被那个PID所占用 Netstat –ano|findstr “<端口号>” 查看该PID对应的进程名称 tasklist|findstr “<PID号>” 阅读全文
posted @ 2021-01-05 11:38 mindSucker 阅读(45) 评论(0) 推荐(0) 编辑

PAT 1010 Radix

摘要: Given a pair of positive integers, for example, 6 and 110, can this equation 6 = 110 be true? The answer is yes, if 6 is a decimal number and 110 is a 阅读全文
posted @ 2020-12-18 10:23 mindSucker 阅读(51) 评论(0) 推荐(0) 编辑

zipkin - brave - 随笔

摘要: Brave核心lib Brave是一个lib用于捕获,以及上报关于分布式操作的性能的信息到Zipkin。大多数用户不会直接时候Brave,而是把应用Brave到对应的框架上; 这个模块包含tracer(可以用来创建,并加入span),当然也包含一个lib去在不同的网络边界传播trace contex 阅读全文
posted @ 2020-11-13 16:24 mindSucker 阅读(601) 评论(0) 推荐(0) 编辑

docker备忘录

摘要: docker 安装redis pull image create redis.conf and data folder # Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 #deamonize no # 你可以绑定单一接口,如果没有绑定,所有接口都会监听到来的连 阅读全文
posted @ 2020-09-30 14:18 mindSucker 阅读(123) 评论(0) 推荐(0) 编辑

GUAVA-RateLimit

摘要: RateLimit目前这个工具类还在@Bate阶段,在官方wiki文档中,还找不到; 1.当我们使用rateLimiter,我们能够实现什么? RateLimiter rl = RateLimiter.create(double permitsPerSecod); 通过如上的方法我们可以知道,Rat 阅读全文
posted @ 2020-09-28 11:55 mindSucker 阅读(177) 评论(0) 推荐(0) 编辑

JDK各版本发展史

摘要: JDK1.0 1.1 1996年Java有了第一个正式版本的运行环境。代表技术包括:Java虚拟机,Applet,AWT;1997年,Jar格式,JDBC,JavaBeans,RMI诞生; JDK1.2 1998年,SUN将Java技术体系拆分成三个方向,桌面引用开发J2SE,企业级开发J2EE,手 阅读全文
posted @ 2020-09-08 20:15 mindSucker 阅读(787) 评论(0) 推荐(0) 编辑