领域服务的竖向裁切, 横向裁切 - 模块化架构

摘要: 1. 背景: 在复杂多变的业务场景中,在开发完一个项目后,往往需要为多个业务方提供共性的业务能力,但是不同的业务方又会有个性的需求,如何在保证软件的核心能力的稳固的同时,同时低成本地支持拓展性? 2. 可行方式: 通常通过业务抽象实现是可以对多变但同质业务进行支持,只是有些时候通过抽象无法解决,或者 阅读全文
posted @ 2024-05-27 19:37 mindSucker 阅读(15) 评论(0) 推荐(0) 编辑

单元测试的思考与实践

摘要: 1. 什么是单元测试 通常来说单元测试,是一种自动化测试,同时包含一下特性: 验证很小的一段代码(业务意义 或者 代码逻辑 上不可再分割的单元),能够更准确的定位到问题代码的位置 能够快速运行(单元测试的意义,在于快速且周期性的验证原有代码的准确性),提高项目开发效率 以隔离的方式 (isolate 阅读全文
posted @ 2024-04-03 16:32 mindSucker 阅读(27) 评论(0) 推荐(0) 编辑

本地扫描maven项目依赖jar的license信息

摘要: 添加plugin <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>license-maven-plugin</artifactId> <version>2.4.0</version> <configuration> <!--指定输出 阅读全文
posted @ 2024-03-18 10:26 mindSucker 阅读(146) 评论(0) 推荐(0) 编辑

通过Base64来复制文本传递文件

摘要: 1. 使用场景 在某些情况下,需要对一些文件进行文本复制的方式来传输。比如线上生产的环境,限制传输文件,但是又继续上传文件。 2. 如何绕过限制 - Base64转码 通过Base64转码,把二进制文件,转换为文本,通过copy文本,在目标环境新建文本文件,然后粘贴文本,最终通过Base64 dec 阅读全文
posted @ 2024-01-18 11:59 mindSucker 阅读(47) 评论(0) 推荐(0) 编辑

如何通过Telnet连接Redis Server

摘要: #### 1. 为什么要用Telnet连接Redis Server? 在生产环境中,很多时候,是没有redis客户端的,尤其是在k8s的场景中,为了轻量化镜像的大小,包括jdk,redis-cli都是不会默认安装的。那么这个时候,我们希望在线上环境连接Redis就会比较麻烦了,这个时候通过Telne 阅读全文
posted @ 2023-09-06 11:18 mindSucker 阅读(826) 评论(0) 推荐(0) 编辑

PromQL的一个QPS语句的分析

摘要: 这里以一个请求count指标为例,该指标是随时间增长的瞬时向量,如何用这个指标计算QPS,可以参照如下: req_sum_total 瞬时向量,value and timestamp,当然返回的数据是一个集合 req_sum_total{Project =~ "vlm.+", uri!~"/stat 阅读全文
posted @ 2023-04-19 19:00 mindSucker 阅读(595) 评论(0) 推荐(0) 编辑

Java DelayQueue包装类

摘要: public class DelayQueueWrapper<T> { private TimeUnit timeUnit; private final Long capacity; private long currentSize; private DelayQueue<DelayQueueTar 阅读全文
posted @ 2023-02-20 17:26 mindSucker 阅读(10) 评论(0) 推荐(0) 编辑

Mac实现截图OCR输出文字功能

摘要: 1.为什么要这个功能 工作中会经常遇到需要识别一个图片中的文本内容,需要快速的OCR识别,从而提高工作效率; 2.如何实现 snipaste + pngpaste + tesseract snipaste 用于截图 pngpaste 用于读取剪贴板内容 tesseract 用于对输入的图片做OCR识 阅读全文
posted @ 2023-02-10 18:20 mindSucker 阅读(391) 评论(0) 推荐(0) 编辑

Kafka Reblance & max.poll.interval.ms 重复消费问题

摘要: #### 1. 什么是kafka Reblance? 消费组是MQ中一个非常重要的概念,一个消费组监听一个Topic时,Kafka服务端会给消费组中的每一个实例,进行队列分配,每一个实例指定消费一个或多个队列(分区),当然如果消费实例数量如果超出了队列数量,那么会出现消费实例不监听任何队列的情况。 阅读全文
posted @ 2022-12-30 15:42 mindSucker 阅读(714) 评论(0) 推荐(0) 编辑

ideavimrc 示例

摘要: 我自己的idea vim配置,用熟悉了以后还真的挺方便的 比较常用的有 ManageRecentProjects,快速切换多个project,经常会遇到同时打开多个project,来回切换方便多了 HideAllWindows,隐藏所有窗口,即放大当前窗口,快速专注,更进一步,进入专注模式Toggl 阅读全文
posted @ 2022-11-09 15:49 mindSucker 阅读(61) 评论(0) 推荐(0) 编辑