logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

分布式锁深度剖析:ZooKeeper vs etcd 底层原理、实现差异与选型实战

本文对比分析了ZooKeeper和etcd在分布式锁实现中的核心差异。从底层架构来看,ZooKeeper采用ZAB协议和树形数据模型,适合传统Java生态;etcd基于Raft协议和KV存储,在云原生场景表现更优。关键差异包括:ZooKeeper依赖会话机制实现锁过期,etcd通过Lease租约实现;etcd的Watch机制支持持续监听,避免事件丢失;性能方面etcd在高并发场景下延迟更低。文章还

#分布式#zookeeper#etcd
SpringBoot 自动配置两大核心:配置文件 + 导入选择器

SpringBoot自动配置机制由两部分组成:配置文件(spring.factories/.imports)记录自动配置类名单,AutoConfigurationImportSelector负责读取并筛选这些配置类。前者是静态数据存储,后者是动态执行逻辑。在2.7及之前版本使用spring.factories键值对格式,3.0+版本改用更简洁的.imports文件,每行一个类名。二者协同工作实现自

#spring boot#后端#java
Java SPI vs Spring SPI

SPI(Service Provider Interface)是一种实现接口与实现解耦的服务扩展机制,无需修改源码即可动态加载新功能。主流技术如JDBC、Dubbo、SpringBoot等都采用SPI。Java原生SPI通过固定目录结构(META-INF/services/)和严格命名规则(文件名=接口全类名)实现服务发现,开发者只需定义接口、编写实现类并配置SPI文件,即可通过ServiceLo

#java#spring
正向代理和反向代理的本质区别

正向代理与反向代理并非只是视角差异,二者定位、用途截然不同。正向代理服务客户端,部署在靠近用户一侧,客户端明确知晓代理存在,主要用于隐藏自身 IP、突破访问限制,VPN、内网代理都属于此类。反向代理为服务端服务,部署在服务器集群前端,客户端会将代理当作真实服务,常用来实现负载均衡、隐藏后端架构、防护攻击,Nginx、CDN 是典型应用。二者通信链路相似,但核心职责与应用场景完全区分开来。

#计算机网络
揭开 CDN 加速背后的技术面纱:GSLB 调度与 Squid/Nginx 缓存系统详解

CDN的核心机制包括全局负载均衡(GSLB)和缓存系统。GSLB通过DNS智能解析,基于用户地理位置、网络运营商和节点状态等20多个维度参数,动态选择最优边缘节点。其实现方式主要有CNAME、负载均衡器作为权威DNS服务器或代理DNS服务器三种。缓存系统则由全球分布的边缘节点构成,通过缓存代理技术存储内容副本。两者协同工作,GSLB负责调度"去哪",缓存系统负责"给什么",共同实现高效内容分发。

#计算机网络
MySQL 参数 completion_type 深入浅出:搞懂事务提交后的“隐藏动作”

MySQL的completion_type参数控制事务结束后的行为,与autocommit不同。它有三个取值:0(默认)表示事务结束后不做任何操作;1(CHAIN)表示自动开启相同隔离级别的新事务;2(RELEASE)表示提交后释放连接。文章通过"占桌子吃饭"的比喻形象说明三者区别,并配合代码示例展示实际效果,帮助开发者正确理解和使用该参数,避免混淆completion_type和autocomm

#mysql
理解预编译 SQL:防注入原理、局限性

预编译SQL(Prepared Statement)是一种先将带占位符的SQL模板发送给数据库编译优化,后续执行时只需传递参数的技术。其核心优势包括:性能提升(避免重复编译)、防止SQL注入(参数与代码分离)以及提高代码可维护性。SQL注入是通过恶意输入篡改SQL语句的攻击手段,典型场景如登录绕过(使用注释符或恒真条件),可能导致数据泄露、破坏甚至服务器入侵。预编译SQL能有效防御此类攻击。

#sql
MyBatis 二级缓存脏读真实原因

本文深入剖析MyBatis在多表联查和跨Mapper更新场景下的缓存脏读问题。通过部门表和部门人数表的关联案例,揭示一级缓存和二级缓存在不同Namespace隔离下的数据不一致风险。文章详细解析MyBatis标准缓存查询顺序(二级缓存→一级缓存→数据库),并指出关键同步机制:必须执行commit/close/flush操作才能将一级缓存同步到二级缓存。最后通过完整业务执行流程演示缓存脏读的产生过程

#mybatis#java
计算机网络 | 网络层的两种核心服务:虚电路 vs 数据报服务

本文系统分析了网络层的两种服务模型:面向连接的虚电路服务和无连接的数据报服务。虚电路服务通过预先建立连接保证可靠传输,但故障影响较大;数据报服务则采用"尽力而为"的转发机制,每个分组独立传输,可靠性由上层协议保证。文章指出因特网选择数据报服务的设计哲学,主要出于简化网络设计、提高传输效率的考虑,同时解释了IP协议"不可靠"的本质及其与TCP协议的协同工作机制

#计算机网络
动态 CDN 核心原理:两种加速模式、防盗链机制与边缘数据同步

本文介绍了动态CDN的两种核心模式及其应用场景。针对电商、金融等实时数据场景,传统CDN无法缓存动态数据,动态CDN通过边缘计算模式(生鲜超市模式)和路径优化模式(冷链运输模式)解决这一问题。前者在边缘节点处理实时计算,后者通过骨干网优化传输路径。文章还阐述了TCP参数优化、连接复用等加速手段,以及流媒体CDN特有的预处理分片和防盗链机制(Referer检查和时间戳签名),确保数据实时性和安全性。

#计算机网络
    共 14 条
  • 1
  • 2
  • 请选择