- 博客(163)
- 收藏
- 关注
原创 BigInteger 和 long 的区别
特性longBigInteger范围有限 (-2⁶³ 到 2⁶³-1)理论上无限(受内存限制)类型基本数据类型对象类型性能快慢内存使用少 (8字节)多 (取决于数值大小)运算符支持支持 +, -, *, / 等运算符必须使用方法 (add(), subtract() 等)典型用途常规整数计算密码学、大数计算、精确计算选择哪种类型取决于你的具体需求。对于大多数常规编程任务,long 就足够了。只有在处理非常大的数字或需要精确计算时才需要使用 BigInteger。
2025-04-03 18:11:47
199
原创 Java中的整除思想
2的幂次方任意数值多线程操作单线程计算极大数值常规数值整除判断需求基数性质位运算优化%运算符判断并发环境需求不可变数值对象基础元语运算数值规模BigDecimal处理基础类型运算。
2025-04-02 21:37:19
713
原创 Java中深度优先搜索(DFS)与广度优先搜索(BFS)的深入对比
// 递归实现(图结构)void dfs(Node node) { if (node == null || visited.contains(node)) return; visited.add(node); // 访问节点逻辑 for (Node neighbor : node.neighbors) { dfs(neighbor); &
2025-04-02 21:19:38
668
原创 Integer缓存池
Integer a = 127;Integer b = 127;System.out.println(a == b); // true ✅Integer c = 128;Integer d = 128;System.out.println(c == d); // false ❗Integer e = -128;Integer f = -128; System.out.println(e == f); // true ✅1.2 JLS规范中的明文规定// 根据Java语言规范
2025-03-27 20:29:09
588
原创 透彻解析HTTP与HTTPS
ERROR: [Mermaid] Parse error on line 5: ...[链路层] --> Ethernet# 透彻解析HTTP与HTTPS:从明文传输 -----------------------^ Expecting 'SEMI', 'NEWLINE', 'EOF', 'AMP', 'START_LINK', 'LINK', got 'UNICODE_TEXT'
2025-03-24 20:22:25
1354
原创 十种负载均衡实现方式全景拆解
(F5 BIG-IP硬件结构原理图)基于ASIC芯片的硬件加速支持100Gbps+吞吐量的流量清洗SSL/TLS卸载专用加密卡BGP动态路由集成# F5 TMSH配置示例members {
2025-03-24 20:15:05
868
原创 分布式系统与微服务的本质差异
ERROR: [Mermaid] Parse error on line 1: mindmap root((架构范式 ^ Expecting 'open_directive', 'NEWLINE', 'SPACE', 'GRAPH', got 'ALPHA'
2025-03-23 09:42:56
566
原创 事务回滚核心技术
事务回滚机制是保障数据一致性的终极防线,需要深入理解从存储引擎到分布式系统的多层实现逻辑。在云原生时代,新型架构对传统回滚机制提出了新的挑战,构建柔性事务能力将成为关键竞争力。问题表现:- 00:30集中取消订单时系统响应陡增- 事务回滚耗时从平均50ms升至2000ms根因定位:1. 热点账户的全局锁争用2. Undo Log表未做分片处理3. 默认重试策略导致雪崩效应优化方案:- 账户ID取模分片Undo Log表- 引入退避算法的重试机制- 增加本地临时回滚日志缓冲。
2025-03-22 15:30:40
714
原创 Seata分布式事务实现原理
Seata通过创新的AT模式降低了分布式事务的使用门槛,结合灵活的多模式支持,已成为云原生时代分布式事务的首选方案。深入理解其核心实现原理,是构建高可靠事务系统的关键。
2025-03-22 15:26:18
718
原创 Spring Cloud微服务架构深潜
Spring Cloud作为微服务领域的经典实现,在技术生态成熟度与开发效率方面仍保持显著优势。但在云原生时代,需要与新技术栈形成互补组合。理解其核心价值与局限,才能做出最优架构决策。
2025-03-21 19:41:18
769
原创 Nacos配置中心核心实现原理全景解析
Nacos配置中心通过巧妙的长轮询机制和分布式一致性协议,在微服务架构中实现了"配置即代码"的理想状态。理解其底层实现原理,将助力开发者构建更灵活可靠的分布式系统。
2025-03-21 19:37:10
648
原创 RocketMQ事务消息核心原理深度剖析:如何保障分布式事务一致性?
RocketMQ事务消息通过创新的二阶段提交机制,在保证高性能的同时实现了高可靠的事务一致性。"业务逻辑+消息系统"的组合拳,为构建复杂分布式系统提供了新范式。
2025-03-20 11:29:40
732
原创 消息队列深度解析
消息队列是构建现代分布式系统的核心枢纽。选择适合的技术方案,结合可靠的架构设计,将使系统具备更好的扩展性和容错能力。欢迎在评论区交流你的项目实践经验!文中所有示意图均采用优快云官方图床。
2025-03-20 11:22:09
695
原创 深入解析Java跨平台原理
源代码编译方式直接编译为机器码Windows的可执行文件.exeLinux的可执行文件.elfmacOS的可执行文件.machJava独特的中间格式字节码文件.classJVM虚拟机。
2025-03-18 22:18:16
889
原创 深入浅出垃圾回收算法
38%25%17%20%内存管理常见问题分布内存泄漏野指针重复释放碎片化自动检测无效内存对象安全回收内存资源优化内存空间利用率。
2025-03-18 22:01:40
672
原创 Redis跳表
有序数据结构平衡树族跳跃链表族AVL树红黑树B+树Redis跳表LevelDB跳表实现复杂度比红黑树低5倍天然支持范围查询便于并发控制(无需全局重平衡)
2025-03-16 20:54:00
766
原创 Redis九大核心数据类型
int len;// 已使用长度int free;// 剩余空间char buf[];// 字节数组最大支持512MB数据支持数值自动计算可存储二进制数据。
2025-03-16 20:47:19
887
原创 Redis集群实现原理
客户端代理层分片1分片2分片3从节点1从节点2从节点3从节点4从节点5从节点616384个哈希槽(Hash Slot)主从复制架构Gossip协议网络。
2025-03-16 20:40:31
242
原创 深入解剖Java内存模型(JMM)
/ 2002年著名问题代码int a = 0;a = 1;// (1)// (2)assert a == 1 : "魔幻时刻来临!// 可能断言失败:在JSR-133规范发布前,该断言可能抛出令人费解的错误。
2025-03-16 20:35:36
588
原创 原子性、可见性、有序性深度解密
i < 10000;// 经典错误姿势// 同时启动10个线程执行increment()// 最终结果永远不可能是10*10000=100000:输出98231(每次运行结果不确定)
2025-03-16 20:26:00
664
原创 Happens-Before的九重契约
/ (1)// (2)// (3)// 可能输出0!:即使(1)在(2)之前执行,reader线程可能看到flag=false但value=0。
2025-03-16 20:23:07
766
原创 Java锁性能优化
秒杀系统吞吐量突然从2万QPS骤降到2000 QPS:通过Arthas的monitor命令发现耗时异常// 错误实现:高频调用的商品库存校验方法// 每次访问都会触发全局锁竞争:采用分段锁设计使总QPS恢复8.5万。
2025-03-16 20:14:58
674
原创 深挖Java动态代理的七大终极秘密
想象这样一个场景:你需要为UserService添加访问日志,但不想污染业务代码,该怎么办?动态代理的黑魔法就此展开!public interface UserService { void createUser(String name);}public class UserServiceImpl implements UserService { public void createUser(String name) { &nb
2025-03-15 22:40:13
641
原创 深入理解JDK与JRE的核心区别与实战应用
这些问题都源于对Java环境体系的不熟悉,本文将带你揭开JDK和JRE的神秘面纱!定义:Java应用的运行时容器 核心组件:JREJava虚拟机核心类库其他支持文件rt.jar:包含Java SE标准类库charsets.jar:字符集支持安全策略文件:java.policy定义:Java开发者的瑞士军刀 核心组件:包含JDKJREjavac编译器调试工具调试器反编译器监控工具开发文档C头文件PATH变量的本质区别:# JDK环境配置示例(Linux/Mac)export JAVA_HO
2025-03-15 22:34:10
735
原创 深入解析Java字符串三剑客:String、StringBuffer、StringBuilder
特性String可变性❌✅✅线程安全✅(天然)✅(同步锁)❌性能最低中等最高初始化方式字面量/newnew + 初始容量new + 初始容量内存占用易产生碎片预分配机制预分配机制核心区别记忆三要素可变性 → String不可变线程安全 → 仅StringBuffer安全性能比较 → StringBuilder > StringBuffer > String面试超纲加分点自动装箱对字符串拼接的影响Java 9之后的紧凑字符串优化字符编码对字节数组存储的影响。
2025-03-15 22:29:39
793
原创 Java 面向对象编程与面向过程编程
面向过程编程是一种编程范式,侧重于一步一步地处理一个个过程或步骤来解决问题。它通过函数或子程序的形式组织代码,每个函数完成一个具体的任务。面向对象编程是一种编程范式,侧重于对象和类的抽象及其之间的交互来解决问题。它强调封装、继承和多态等特性,通过对象来组织代码。面向过程编程和面向对象编程各有优势,选择哪一种编程范式取决于具体的应用场景和需求。对于小规模的简单程序,面向过程编程更为直接和高效;而对于大型复杂系统,面向对象编程能够提供更好的代码组织和复用机制。
2025-03-15 22:20:18
677
原创 阿里巴巴Arthas终极指南:从线上诊断到热更新的实战艺术
Command(name = "mysearch", help = "自定义文件搜索命令")@Override// 实现搜索逻辑能力维度推荐命令使用频率快速诊断dashboardthread★★★★★深度分析watchstack★★★★☆紧急修复redefine★★☆☆☆性能调优profilermemory★★★☆☆工程师箴言"Arthas不是万能药,但它是Java工程师必须掌握的听诊器。
2025-03-10 21:39:32
691
原创 深入理解CSRF攻击:原理、案例与全方位防御指南
安全层级防御措施实施要点客户端设置Strict/Lax模式服务端CSRF Token+校验随机化+绑定会话业务逻辑敏感操作二次验证密码/短信验证码监控异常请求报警检测缺失Token的请求安全箴言"没有绝对的安全,只有分层的防御体系。" —— 匿名安全工程师。
2025-03-10 21:18:51
755
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人