- 博客(778)
- 收藏
- 关注

原创 docker使用及基础常用命令,保存起来当手册用,containerd常用命令
很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程.,容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。有些容器必须要以前台交互式模式运行,而有些容器不需要比如说redis、mysql,后台守护式运行之后,redis就会在容器中启动,并不会退出。attach 直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器的停止。exec 是在容器中打开新的终端,并且可以启动新的进程,用exit退出,不会导致容器的停止。
2023-04-07 17:40:19
866

原创 Kubernetes(k8s)使用及操作文档
https://kubernetes.io/zh/docs/reference/kubectl/overview/https://kubernetes.io/zh/docs/reference/kubectl/overview/#%E8%B5%84%E6%BA%90%E7%B1%B B%E5%9E%8Bhttps://kubernetes.io/zh/docs/reference/kubectl/overview/#%E6%A0%BC%E5%BC%8F%E5%8C%9 6%E8%BE%93%E5%87%BA
2022-07-10 21:11:52
1450

原创 nginx安装与配置详解
目录一、安装Nginx:二、使用Nginx:简单与单台Tomcat整合三、详细使用(nginx就是去配置其文件而已),如下所示:一、安装Nginx:1 : wget下载: http://nginx.org/download/nginx-1.4.2.tar.gz2 : 进行安装: tar -zxvf nginx-1.6.2.tar.gz3 : 下载锁需要的依赖库文件: yum install pcre yum install pcre-dev...
2021-02-18 09:15:21
6293
12

原创 mysql常用操作汇总大全
1.本地登录MySQL命令://root是用户名,输入这条命令按回车键后系统会提示你输入密码2.指定端口号登录MySQL数据库将以上命令:mysql-uroot-p改为6即可,注意指定端口的字母P为大写,而标识密码的p为小写。MySQL默认端口号为33063.指定IP地址和端口号登录MySQL数据库命令格式为:mysql-hip-uroot-p-P3306例如:mysql-h127.0.0.1-uroot-p-P3306。
2020-12-17 17:33:47
2468
1
原创 微软无界鼠标(Mouse without Borders)安装及使用:多台电脑共用鼠标键盘
在办公中,我们经常会遇到这种场景,自己带着笔记本电脑外加公司配置的台式机。由于两台电脑,所以就需要搭配两套键盘鼠标。对于有限的办公桌面来说,显得杂乱和拥挤。对于这种情况,微软车库里有这么一个比较方便好用的工具微软无界鼠标(Mouse without Borders)注意,最好两台电脑是内网环境!
2025-08-02 08:15:49
220
原创 Mockito:Java单元测试Mock框架
在进行单元测试时,如果依赖的服务尚未开发完成,或依赖的对象不方便构造,这时我们就需要模拟( Mock)对象。
2025-07-31 23:30:00
1071
原创 jimfs:Java内存文件系统,脱离磁盘IO瓶颈利器
Jimfs由Google发布,实现了接口,支持模拟不同操作系统的文件系统特性(如 Windows/Linux 路径风格)。主要用于单元测试(避免磁盘 IO 影响速度和状态)、临时数据处理(短期缓存、中间计算结果)和环境隔离(多任务互不干扰)等场景。</</</</
2025-07-28 23:30:00
308
原创 Apache Commons VFS:Java内存虚拟文件系统,屏蔽不同IO细节
Apache Commons VFS的特点,它支持多种文件系统,例如本地文件、CIFS、FTP、FTPS、SFTP等等。它的使用方式很灵活,可以很容易地集成到你的Java项目中。而且,VFS还很关注性能和稳定性,这在处理大量文件或大型项目时尤为重要。VFS提供了一个虚拟文件系统的概念,它允许应用程序访问文件和目录,而不必关心底层文件系统的具体实现。这意味着,无论文件是存储在本地文件系统、网络文件系统还是分布式文件系统上,应用程序都可以使用相同的方式来访问它们。
2025-07-28 23:30:00
455
原创 classgraph:Java轻量级类和包扫描器
注意!ScanResult 实现了 AutoCloseable 接口,必须使用 try-with-resources 语法或手动调用 close() 方法释放资源,否则可能导致内存泄漏(尤其是在频繁扫描的场景中)。// 正确用法// 使用 result注意!避免无限制扫描整个类路径(默认行为),这会导致扫描速度慢且消耗大量内存。</</</</classgraph 的扫描过程本身不会初始化类,只有当你显式加载类并执行触发初始化的操作时,类才会被初始化。
2025-07-25 23:45:00
1583
原创 reflections:Java非常好用的反射工具包
目前项目已经出于不活跃状态,JDK8还是支持的,但是JDK11以上就会有问题。Reflections 会扫描并索引您项目类路径的元数据,允许在运行时反向传递查询类型系统。核心功能扫描预定义的URLs: Reflections可以扫描项目的类路径、特定的目录或者JAR文件,来查找特定的类型或者带有特定注解的元素。查询元数据信息: 一旦扫描完成,Reflections允许你查询这些元数据信息,例如获取所有带有特定注解的类或者方法。索引化视图。
2025-07-25 23:15:00
427
原创 javaparser:Java代码静态解析,生成抽象语法树
JavaParser 是一个用于处理 Java 源代码的开源库。它允许我们将 Java 源代码解析成抽象语法树(AST)。一旦完成这一步,我们就可以分析解析后的代码、对其进行操作,甚至编写新代码。著名的java效率包lombok的底层实现原理就是基于对java的AST的修改。截止目前,支持JDK21。
2025-07-24 23:30:00
732
原创 jansi:酷炫小巧的控制台彩色输出库,可用于命令行工具
Jansi 是一个开源库,它为 Java 提供了跨平台的彩色输出功能。Jansi是一个小型 Java 库,它允许您使用ANSI 转义码来格式化您的控制台输出,即使在 Windows 上也可以使用。虽然常用的日志打印功能也带有彩色,但是jansi色彩更丰富。可用于命令行工具。但是作用确实不大。。。
2025-07-24 03:00:00
418
原创 jMolecules:DDD项目开发规范化神器
jMolecules提供一系列库,帮助开发者用纯Java实现领域模型,明确架构概念,减少技术依赖和样板代码。支持领域驱动设计(DDD)、分层架构、洋葱架构和六边形架构等多种风格,并允许工具集成以生成文档和验证结构。注解和接口可表达领域构建块及事件概念,便于开发和自动化验证。支持与Spring、Data JPA、MongoDB等技术的无缝集成,确保代码即插即用。
2025-07-23 23:30:00
1141
原创 盘点Java界比较火的命令行程序开发工具:JCommander、picocli、SpringShell、JLine3
简单参数解析 →JCommander(快速上手)。复杂参数或多命令 →picocli(功能全面)。增强交互体验(如补全、历史) →JLine3(搭配其他解析工具)。Spring 项目或需要完整框架 →(整合一切,开箱即用)。写一个简单的文件处理工具(只需解析-input和-output参数)→ 用 JCommander。写一个类似git的多命令工具(git commitgit push)→ 用 picocli + JLine3。
2025-07-23 23:30:00
583
原创 ArchUnit:Java架构测试神器
ArchUnit 是一个免费、简单且可扩展的库,用于检查 Java 代码的架构。也就是说,ArchUnit 可以检查包和类、层和切片之间的依赖关系,检查循环依赖关系等等。它通过分析给定的 Java 字节码,将所有类导入到 Java 代码结构中来实现这一点。ArchUnit 的主要重点是使用任何普通的 Java 单元测试框架自动测试架构和编码规则。
2025-07-23 23:15:00
295
原创 python小工具:测内网服务器网速和延迟
4、由于网络抖动,可以多次测试求平均值。2、端口能通,防火墙是关闭的。1、两台服务器之间网络通畅。3、需要python环境。
2025-07-22 23:30:00
306
原创 MyBatis拦截器插件:实现敏感数据字段加解密
日常开发中,经常有一些敏感数据,直接写入数据库的话,很容易泄露。本文基于mybatis拦截器插件,实现敏感数据的加解密。
2025-07-22 23:00:00
510
原创 ElasticSearch:商品SKU+SPU实现join查询,设计及优化
同时一个商品的SPU会包含多个商品SKU,以手机为例,一款iPhone12手机就是SPU,如果消费者需要购买该手机的时候,还需要选择手机颜色、内存容量,在商家这边还要查看商品的库存是否足够。的单位, 可以是以件、盒、托盘等为单位,SKU是物理上不可分割的最小存货单元。红框上面的部分是商品的SPU(Standard Product Unit 标准产品单位),SPU是商品信息聚合的最小单位,是一组。这里会选择对应店铺的名称,填入商品编号、商品名称、上架状态、定时上架时间、商品标签、商品图片等信息。
2025-07-19 22:30:00
1010
1
原创 MySQL安全修改表结构、加索引:ON-Line-DDL工具有哪些
由Percona公司开发的开源工具,用于在不影响线上服务的前提下完成表结构变更。它通过创建临时表,利用触发器复制数据等方式,将原表数据复制到新表,最后替换原表,从而实现在线修改表结构。该工具完全避免锁表,适用于大表操作,还支持回滚机制,保障数据安全,但在高并发写入场景下可能存在性能问题。由Github维护的MySQL online DDL工具。它同样使用了镜像表的形式,但放弃了使用低效的trigger,而是从binlog中提取需要的增量数据来保持镜像表与源表的数据一致性。
2025-07-17 23:45:00
510
原创 Apache Camel:企业级消息集成神器(未验证)
Apache Camel 是一个开源的企业集成框架,核心目标是简化不同系统、应用、服务之间的消息传递和数据交换,解决分布式系统中的 “集成复杂性” 问题。它基于 “企业集成模式(EIP,Enterprise Integration Patterns)” 设计,提供了统一的编程模型,让开发者可以专注于业务逻辑,而非底层协议或数据格式的适配。
2025-07-17 23:30:00
232
原创 开发者的福音:GitHub加速器-Watt Toolkit(原名Steam++)
Watt Toolkit(原名Steam++)是一个开源跨平台的多功能 Steam 工具箱。
2025-07-15 15:54:31
297
原创 arthas:Java 应用问题诊断利器
Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。Arthas 在生产环境应用时需要谨慎,某些命令比如:trace(深调用链)、heapdump、watch(复杂表达式 / 高频触发),持续字节码修改、大量数据传输,可能导致 CPU 飙升、内存占用增加。
2025-07-14 19:23:01
1130
原创 两台电脑通过网线直连形成局域网,共享一台wifi网络实现上网
两台windows电脑A和B,想通过**微软无界鼠标(Mouse without Borders)**实现一套键盘鼠标控制两台电脑,但是由于wifi信号并不是很好,想通过网线直连将两台电脑形成。2、一根网线(直通线即可,不需要交叉线,现在的电脑都有自动校正功能)(1)电脑A连接wifi,保证能够正常上网。(2)电脑A和B通过网线,直接连接。电脑B打开百度验证一下互联网是否通畅。1、两台windows电脑A和B。(4)有线网络连接需要设置IP。A和B的防火墙需要关闭。,并且两台电脑都能够。
2025-07-11 16:12:46
313
原创 Java使用RocketMQ,RocketMQ各类消息使用详解
本文是基于版本做的案例,RocketMQ5版本貌似还不够成熟,暂不考虑使用。顺序消息是一种对消息发送和消费顺序有严格要求的消息。对于一个指定的Topic,消息严格按照先进先出(FIFO)的原则进行消息发布和消费,即先发布的消息先消费,后发布的消息后消费。在 Apache RocketMQ 中支持分区顺序消息,如下图所示。我们可以按照某一个标准对消息进行分区(比如图中的ShardingKey),同一个ShardingKey的消息会被分配到同一个队列中,并按照顺序被消费。
2025-07-08 15:56:15
1007
原创 Chrome谷歌浏览器插件ModHeader,修改请求头,开发神器
ModHeader顾名思义就是让我们可以自定义HTTP请求头或者是重写响应头,包括新增请求头/响应头或者覆盖Chrome浏览器设置的请求头的默认值,同时还可以根据URL Pattern来只对特定网站生效。有条件的同学可以直接在谷歌浏览器中搜索插件进行安装,没有条件的同学可以搜搜别的平台。打开Chrome浏览器 -> 点击右上角三个点 -> 扩展程序 -> 管理扩展程序‘管理扩展程序’ 页面的右上角 ‘开发者模式’ 开关打开极简插件下载到的是压缩包,必须先解压缩!解压后有2个文件。
2025-07-04 13:30:58
1106
原创 Java属性映射神器:MapStruct使用教程
MapStruct 是一个 Java Bean mapper,用于Java Bean 之间的转换。MapStruct 基于约定优于配置的设计思想,相较于常用的 BeanUtils.copyProperties 它更高效、优雅。使用 MapStruct,我们只需要定义映射接口,该库在编译时会自动生成具体实现代码。//解释:自定义Source转换Target规则,MapStruct会自动调用sourceConvertToTarget方法来替代他自己生成的方法//此时自定义规则才会生效。
2025-07-01 15:23:30
1655
原创 redis8.0新特性:Top-K获取最高排名的数据
Top-K 是一种概率数据结构,允许您查找数据流中最常见的项目。Top K 是 Redis 开源版中的一种概率数据结构,用于估计数据流中排名最高的 K 个元素。在此语境中,“排名最高”是指“附加有最高数字或分数的元素”,其中分数可以是该元素在流中出现的次数计数,因此该数据结构非常适合查找流中出现频率最高的元素。一个非常常见的应用是检测网络异常和 DDoS 攻击,Top K 可以回答以下问题:来自同一地址或同一 IP 的请求流量是否突然增加?
2025-06-26 15:53:37
564
原创 redis8.0新特性:t-digest计算数据百分位
t-digest 是一种概率型数据结构,用于估计数据流的百分位数。t-digest 是 Redis 开源版中的一种 sketch 数据结构,用于使用紧凑的 sketch 估计数据流或大型数据集的百分位数。它可以回答以下问题:数据流中有多大比例的值小于给定值?数据流中有多少值小于给定值?数据流中小于 p 百分比值的最高值是什么?(即 p 百分位数值是多少?t-digest 是一种数据结构,它可以在无需存储和排序集合中的所有数据点的情况下估计百分位点。
2025-06-26 14:21:24
1289
原创 redis8.0新特性:布谷鸟过滤器(Cuckoo Filter)详解
布谷鸟过滤器是一种概率数据结构,用于检查元素是否存在于集合中布谷鸟过滤器,就像布隆过滤器一样,是 Redis 开源版中的一种概率数据结构,它可以以非常快速且节省空间的方式检查元素是否存在于集合中,同时还支持删除操作,并在某些场景下表现优于布隆过滤器。对比维度布隆过滤器布谷鸟过滤器数据更新特性仅支持插入和查询,删除需特殊变体(如计数布隆)原生支持高效插入、查询和删除空间效率中等,误判率相同时空间占用比布谷鸟高约40%高,相同误判率下空间利用率更高适合数据类型静态或低频更新数据动态频繁更新数据。
2025-06-25 16:48:17
1138
原创 redis8.0新特性:布隆过滤器(Bloom Filter)详解
布隆过滤器的概念就不重复啰嗦了(数据不存在则一定不存在,数据存在不一定不存在)。redis8.0以前使用布隆过滤器是很麻烦的,基本上需要基于BitMap/BitSet自定义封装。Redis8.0将布隆过滤器功能内置了,使用redis客户端可以直接使用布隆过滤器了。
2025-06-25 14:25:02
652
原创 redis8.0新特性:Vector Set向量集用法详解(预览版本)
向量集(Vector Set,Beta 版)专为 AI 和机器学习设计,支持存储和查询高维向量嵌入(如文本、图像特征向量)。结合 Redis 查询引擎,可实现向量相似性搜索(VSS)和语义检索,直接服务于推荐系统、图像识别等场景。向量集支持以下命令:VADD - 将元素添加到向量集,如果集合不存在则创建新集合。VCARD - 检索向量集中的元素数量。VDIM - 检索向量集中的向量维度。VEMB - 检索与向量集元素关联的近似向量。VGETATTR - 检索向量集元素的属性。
2025-06-25 09:47:03
665
原创 redis8.0新特性:原生JSON支持详解
group=json关于在JSON命令中使用字符串:若要将字符串指定为要追加的数组值,请用一组额外的单引号将带引号的字符串括起来。示例:‘“silver”’JSONPATH语法:Redis JSON 使用 $ 表示根节点,支持嵌套路径,例如:$[0].name(访问数组第一个元素的 name 字段)
2025-06-24 18:44:15
1794
原创 windows10安装docker-简单无坑
windows控制面板》程序和功能》启用或关闭Windows功能》找到Hyper-V》全部勾选后,点击“确定”,等待安装即可。(1)搜索-服务,检查docker是否是启动状态,或者改为自动。最终,发现自己的WSL2安装的有问题,一定要安装2版本!方式2、通过控制面板“设置”启用 Hyper-V 角色。选择“Hyper-V”,然后单击“确定”。选择相关设置下右侧的“程序和功能”。重启完毕之后,弹出的框点击确定即可。(2)检查Hyper-V是否安装。下载完双击即可,没什么好说的。
2025-06-23 21:36:40
737
原创 Apollo:配置中心使用与介绍
Apollo(阿波罗)是一款可靠的分布式配置管理中心,诞生于携程框架研发部,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。Java客户端不依赖任何框架,能够运行于所有Java运行时环境,同时对Spring/Spring Boot环境也有较好的支持。
2025-06-20 17:19:15
665
原创 MaxKey 单点登录认证系统:十分完善的身份管理和认证产品
MaxKey单点登录认证系统是业界领先的IAM-IDaas身份管理和认证产品,谐音为马克思的钥匙,寓意它能够像一把万能钥匙(最大钥匙)一样,解锁复杂的企业安全需求,提供简洁而高效的解决方案。产品支持OAuth 2.x/OpenID Connect、SAML 2.0、JWT、CAS、SCIM等标准协议,提供安全、标准和开放的用户身份管理(IDM)、身份认证(AM)、单点登录(SSO)、RBAC权限管理和资源管理等。
2025-06-20 10:30:39
398
java==比较int值问题
2022-08-19
java覆写jar包代码不生效
2022-08-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人