摘要:
1. Rust 简介 Rust 的历史 起源:Rust 语言最初由 Mozilla 研究员 Graydon Hoare 于 2006 年开始设计,并于 2009 年首次公开。 开发:Rust 是 Mozilla 实验室的一个项目,目的是创建一种能够保证内存安全同时又不牺牲性能的系统编程语言。 发布: 阅读全文
摘要:
依赖倒置原则(Dependency Inversion Principle, DIP)是面向对象设计原则之一,它是SOLID原则中的"D"。依赖倒置原则的核心思想是高层策略性业务规则不应该依赖于低层的具体实现细节,而两者都应该依赖于抽象。 依赖倒置原则主要包含两个基本点: 抽象不应该依赖于细节:系统 阅读全文
摘要:
V哥在 JUnit 框架源码学习时总结的13个非常值得学习的点,希望也可以帮助到你提升编码的功力,欢迎关注威哥爱编程,一起学习框架源码,提升编程技巧,我是 V哥,爱 编程,一辈子。 阅读全文
摘要:
Java RMI(Remote Method Invocation)是一种允许Java虚拟机之间进行通信和交互的技术。它使得远程Java对象能够像本地对象一样被访问和操作,从而简化了分布式应用程序的开发。一些应用依然会使用 RMI 来实现通信和交互,今天的内容我们来聊聊 RMI 的那些事儿。 一、先 阅读全文
摘要:
Netty 是一个高性能、异步事件驱动的网络应用框架,它基于 Java NIO 构建,广泛应用于互联网、大数据、游戏开发、通信行业等多个领域。以下是对 Netty 的源码分析、业务场景的详细介绍: 源码概述 Netty 的核心组件:Netty 的架构设计围绕着事件驱动的核心思想,主要包括 Chann 阅读全文
摘要:
JVM(Java虚拟机)是Java程序运行的基础环境,它提供了内存管理、线程管理和性能监控等功能。吃透JVM诊断方法,可以帮助开发者更有效地解决Java应用在运行时遇到的问题。以下是一些常见的JVM诊断方法: 使用JConsole: JConsole是一个可视化监控工具,可以连接到本地或远程的JVM 阅读全文
摘要:
原子性的意义 原子性特别是在并发编程领域,是一个极其重要的概念,原子性指的是一个操作或一组操作要么全部执行成功,要么全部不执行,不会出现部分执行的情况。这意味着原子性操作是不可分割的,它们在执行过程中不会被其他操作中断或干扰。 原子性的意义在于它保证了数据的一致性和程序的正确性。在多线程或多进程的环 阅读全文
摘要:
Redis 是一个开源的内存数据结构存储系统,它可以用作数据库、缓存和消息中间件。Redis 的数据结构非常丰富,其中跳跃表(skiplist)是一种重要的数据结构,它被用来实现有序集合(sorted sets)。 跳跃表是一种概率型数据结构,它通过多层链表来实现快速的查找操作。跳跃表的结构类似于多 阅读全文
摘要:
在Java中,Executors 类提供了多种静态工厂方法来创建不同类型的线程池。在学习线程池的过程中,一定避不开Executors类,掌握这个类的使用、原理、使用场景,对于实际项目开发时,运用自如,以下是一些常用的方法,V哥来一一细说: newCachedThreadPool(): 创建一个可缓存 阅读全文
摘要:
Nginx是一个高性能的HTTP和反向代理服务器,它在全球范围内被广泛使用,因其高性能、稳定性、丰富的功能以及低资源消耗而受到青睐。今天V哥从5个方面来介绍 Nginx 性能调优的具体策略,希望对兄弟们有帮助,废话不多说,马上开整。 1. 系统层面: 调整内核参数:例如,增加系统文件描述符的限制、T 阅读全文