logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【数据结构与算法】常用数据结构(二)

大家好,我是白晨。本次又为大家带来的是常用数据结构的模拟实现,主要用于在算法比赛中快速实现一种常用模拟实现。那为什么不用STL呢?首先,STL为了保证其接口的通用性以及要严格符合一个数据结构的定义,在使用时可能不是非常方便;其次,模拟实现的数据结构在运行速度方面是要快于STL的容器的。上篇文章常用数据结构(一)我们介绍了单链表、双链表、栈、队列以及堆这五种最常用的数据结构的模拟实现,本次白晨将在上

文章图片
#数据结构#算法#c++ +2
【数据结构】链表全解析

前言在上篇顺序表文章末尾(【数据结构】顺序表),我们留了几个问题,主要是道出了顺序表的不足之处,例如,插入数据困难,要不断申请空间,而且会有空间浪费。那么,有没有一种结构,可以较好的解决这几个问题呢?这就要提到我们今天的主角——链表。1.链表的概念链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的 。与顺序表不同,使用链表存储的数据元素,其物理存储

文章图片
#链表#数据结构#散列表 +2
【数据结构】栈与队列全解析(一篇文章让你从入门到进阶)

☀️ HELLO,大家好,我是白晨❤️呀!????今天又到了我们一起来学习的时间啦????,苦心人、天不负,卧薪尝胆,三千越甲可吞吴,一起加油吧????????。前言在顺序表和链表中我们讲述了数据结构最基本的两种结构,今天我们就要在这两种数据结构的基础上来继续认识另外两种数据结构——栈和队列。为了内容的完整性以及可读性(主要是有进阶内容),我将前一篇文章栈结构全解析也搬到了这里。废话不多说,正文见

文章图片
#数据结构#链表#c语言 +2
【RPC】第 1 篇:全景篇 — 一次 RPC 调用的完整旅程

本文介绍了RPC调用的基本原理和完整流程。RPC框架通过封装远程通信细节,使程序可以像调用本地方法一样调用远程服务。核心架构包含三个角色:服务提供方(Provider)负责实际业务逻辑,服务调用方(Consumer)通过代理发起调用,注册中心(Registry)维护服务地址信息。一次完整的RPC调用包含以下步骤:Consumer启动时创建代理对象;调用方法时代理拦截请求;查询注册中心获取服务地址;

文章图片
#rpc#网络协议#java +4
【PRC】第 2 篇:Netty 通信层 — NIO 模型 + 自定义协议 + 心跳

本文摘要: Netty通信层采用NIO模型解决BIO的线程阻塞问题,通过EventLoop实现高效事件驱动。自定义二进制协议包含6个关键字段:Length解决TCP粘包问题;Magic作为安全校验;Type区分消息类型;Version支持协议演进;SACType编码序列化/压缩方式;Body存储实际数据。其中Length前置的设计配合Netty的LengthFieldBasedFrameDecod

文章图片
#nio#php#开发语言 +4
【RPC】第 4 篇:服务发现 — Zookeeper + 缓存容错

服务发现与容错机制设计摘要 本文探讨了微服务架构中的服务发现机制及其容错设计。核心要点包括: 动态寻址机制:通过Zookeeper实现服务注册与发现,避免硬编码服务地址,解决服务扩容/迁移问题。 三层架构设计: Zookeeper层:作为中央注册表存储服务地址 ZookeeperServiceRegistry:封装ZK操作 DefaultServiceRegistry:提供缓存和容错能力 智能容错

文章图片
#rpc#服务发现#zookeeper +4
【RPC】第 5 篇:连接管理 — 连接池 + 请求生命周期

文章摘要 本文探讨了RPC框架中的连接管理和请求生命周期。连接池通过复用TCP连接避免了每次请求的三次握手开销,提升性能。ConnectionManager负责维护连接表,实现连接的创建、复用和健康检查。多路复用通过requestId实现请求与响应的匹配。InFlightRequestManager管理请求全生命周期,包括两级限流(全局并发限流和服务速率限流)、超时控制和响应处理,确保系统稳定性和

文章图片
#rpc#qt#网络协议 +4
【RPC】第 7 篇:限流器 — 令牌桶 + CAS 无锁实现

本文介绍了RPC框架中实现限流器的两种方式:基于信号量的全局并发限流和基于令牌桶算法的单连接速率限流。全局并发限流通过Semaphore控制同时处理的请求总数,快速拒绝超限请求;单连接限流采用无锁令牌桶算法,使用AtomicLong记录下一个令牌可用时间点,巧妙避免了锁竞争。文章重点分析了一个关键bug:错误的时间窗口计算会导致限流失效,通过对比正确和错误的实现方式,揭示了"Math.m

文章图片
#rpc#网络协议#网络 +4
【RPC】第 8 篇:熔断器 — 滑动窗口 + 三态自动机

本文介绍了熔断器在分布式系统中的工作原理及实现机制。熔断器通过三态自动机(CLOSED/OPEN/HALF_OPEN)实现服务故障的自动隔离与恢复,避免系统雪崩。核心采用滑动窗口统计最近10秒的请求数据,通过环形数组实现时间窗口的滚动更新,确保统计数据的时效性。当慢请求比例超过阈值时触发熔断,经过冷却期后通过探测请求验证服务恢复情况,实现服务的渐进式恢复。这种设计既避免了持续重试导致的系统恶化,又

文章图片
#rpc#网络协议#网络 +4
Claude Code指南

《Claude Code 使用指南》摘要 Claude Code是一款专注于复杂工程任务的AI编程工具,与传统代码补全工具不同,它通过终端CLI形式提供自主执行大型重构、跨文件修改等高级功能。核心优势包括终端原生工作流、跨IDE兼容性和CI/CD集成能力。 安装支持macOS/Linux/WSL和Windows系统,关键步骤是通过cc-switch工具配置API和模型。典型工作流程包含Plan模式

文章图片
#经验分享
    共 17 条
  • 1
  • 2
  • 请选择