- 博客(20)
- 收藏
- 关注
原创 Nginx 生产环境,常用指令详解
Nginx (Engine-X) 是一款高性能的 HTTP 和反向代理服务器,同时也可以作为邮件代理服务器、通用 TCP/UDP 代理服务器。本文档将系统地介绍 Nginx 在生产环境中最常用和关键的指令,帮助您更好地理解和配置 Nginx。Nginx 拥有强大的变量系统,可以根据请求动态生成内容或改变处理流程。Nginx 经常作为反向代理服务器,将客户端请求转发给后端服务。用于修改请求 URI 或将客户端重定向到新的 URL。用于记录服务器的访问和错误信息,便于监控和故障排查。
2025-11-19 09:56:47
979
原创 【G1垃圾收集器——使用的区别】
它不再是连续的年轻代和老年代,而是将整个堆划分为一系列大小相等的独立区域(Region)。: G1通过牺牲一部分固定的堆空间,从根本上解决了CMS的内存碎片问题,为需要高性能、高可用和可预测延迟的现代Java应用提供了坚实可靠的内存管理方案。以下是在生产环境中使用 G1 GC 时,应该重点关注和设置的JVM参数。总结了G1垃圾收集器的核心概念、工作流程、关键参数以及与其他GC的设计哲学差异。G1的运作并非单一模式,而是一个动态的、分阶段的流程。,简称IHOP)时,G1会启动一个更复杂的回收周期。
2025-09-23 17:17:51
810
原创 nacos+spring cloud gateway下,偶现:获取当前网关服务实例为空
1. 升级spring-cloud-starter-alibaba-nacos-discovery为2021.0.6.0,新版本默认关闭nacoswatch@ConditionalOnProperty(value = "spring.cloud.nacos.discovery.watch.enabled", matchIfMissing = false),或者在2021.0.4.0版本,配置关闭nacoswatch。只会注册一种,能正常收到推送。重启网关,启动过程中,注册完成前,获取实例host为空。
2025-08-21 11:15:16
213
原创 【常用的二进制操作+位运算常见陷阱】
位运算常见陷阱表格总结位运算常见陷阱陷阱类型典型错误代码/现象正确写法/注意点说明/备注符号位右移a >> n(负数高位补1)Java中无符号右移用a >>> n>>带符号,>>>无符号(Java)位移超界a << 32位移量不能≥类型位数Java中a << 32等价于a << 0运算符优先级a & 1 == 1位运算优先级低于比较运算负数与掩码-1 & 0xFF得到255明确是否需要无符号结果常用于字节转无符号整型类型提升c`掩码写错1 << 32位移量要小于类型位数。
2025-07-17 17:29:10
435
原创 【Java字符编码与存储学习记录】
Java char类型是固定两个字节,UTF-8编码汉字是三个字节,为什么字符类型变量被赋值为汉字还可以使用?
2025-07-16 11:40:38
377
原创 ansible ssh免登录配置,主机间免登录
1. 配置好ansible的host文件,并配置通用账号密码,这里使用root。2. 使用ssh-key生成公钥和私钥。
2023-08-23 14:17:11
882
原创 spring-data-redis下 lettuce的pipeline正确配置,(符合redis的pipeline 定义)
redis的pipeline 定义:一次发送批量操作,再统一解析全部返回结果。减少RTT,提高性能。
2023-07-03 14:39:27
711
1
原创 redis cluster下的keys,scan,pipeline使用
如果配置为 false,则将所有命令缓存起来,手动调用 flushCommands 的时候,将缓存的命令一起发到服务端,这样其实就是实现了 Pipeline。使用 PIPELINE 之后,我们可以看出,其实它的原理,就是客户端先将所有命令拼接在一起然后本地缓存起来,之后统一发到服务端,服务端执行所有命令之后,统一响应。需要使用回调的连接connection对象进行 Redis 调用,不能直接使用 redisTemplate 调用,否则 pipeline 不生效。redis客户端:lettuce。
2023-06-30 15:21:22
3151
原创 Java JNI在windows下调用原生方法的dll的坑
在 java 中引用时,不能带上 lib和 .so生成文件: 生成的 .so,注意命名规则 libXXX.so,lib 和 .so 不能省略。执行调用成功。生成文件为:执行失败!debug:去找动态库的时候,并没有lib前缀!去掉dll文件的lib前缀 执行成功! 以上,不同操作系统有差别。
2023-05-05 13:53:39
212
原创 Java核心-Java内存分配原理
JAVA内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域: ◆寄存器:我们在程序中无法控制 ◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 ◆堆:存放用new产生的数据 ◆静态域:存放在对象中用static定义的静态成员 ◆常量池:存放常量 ◆非RAM存储:硬盘等永
2022-04-15 15:14:51
213
原创 分布式锁,redis简单分布式锁实现
redis部署模式:一、单机模式二、主从模式三、哨兵模式四、集群模式详细讲解:Redis进阶一之浅析redis各种部署方案 - Lucky帅小武 - 博客园
2021-09-30 11:44:37
242
原创 SSH 登录错误超时次数自动加入ip黑名单
ssh 防止被暴力破解,自动拉黑IP脚本上代码。secure_ssh.sh#! /bin/bashcat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /home/secure/black_list.txtfor i in `cat /home/secure/black_list.txt`do IP=`echo $i |awk -F= '{print $.
2021-09-28 15:05:19
1716
原创 springboot redis延迟消息队列实现
延迟消息队列,下面说一下一些业务场景实践场景订单支付失败,每隔一段时间提醒用户用户并发量的情况,可以延时2分钟给用户发短信总结就是:间隔一段时间后的,定时、重试、超时任务可选方案1、Rabbitmq 延时队列通过 RabbitMQ 消息队列的 TTL和 DXL这两个属性间接实现的。2、DelayQueue 延时队列3、Quartz定时任务4、时间轮5、Redis 延迟队列Redis 的特殊数据结构 ZSet 满足延迟的特性Redis延时队列的实现主要通过zadd 添加
2021-09-23 13:08:19
1390
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅