标签: 分布式系统

8 个内容

笔记(8)

**MySQL命名锁(GET_LOCK)优势**:与TCP连接绑定,自动释放,无需续期,优于Redis锁。 **关键缺陷**:高可用主从切换时锁内存丢失,导致分布式锁失效、并发冲突。 **补救方案**:结合乐观锁(事务版本号),读数据取version,更新时WHERE校验version,仅一行生效,确保数据安全。

Elliot Yang·
75 浏览

本文探讨了云原生架构中 Goroutine 与多实例部署的关系。针对单进程下 Goroutine 数量过多导致的性能瓶颈问题,提出多实例部署方案,实现物理资源隔离、故障隔离和水平扩展。同时,讨论了分层并发模型、流量调度策略,以及协程泄漏检测、冷启动和分布式追踪等挑战,并展望了未来演进方向。

Elliot Yang·
136 浏览

Model Context Protocol (模型上下文协议) 是一套上下文管理规范,用于在机器学习工作流中传递和维护模型推理所需的上下文信息,实现状态保持、信息继承和资源复用。它面临分布式同步、序列化选型等挑战,并在对话系统和推荐系统等场景中得到应用。

Elliot Yang·
108 浏览

MCP服务器是实现跨云资源统一管理的核心组件。通过资源抽象层、策略引擎和状态同步机制,实现异构云资源管理和调度。关注多云网络互联、分布式状态管理和策略即代码,并需考虑安全合规和架构选型,平衡标准化与灵活性。

Elliot Yang·
154 浏览

WebDAV是HTTP/1.1的扩展,通过扩展方法和头部,实现远程文件版本控制和协作编辑。核心方法包括PROPFIND、PROPPATCH、MKCOL等,支持锁机制和属性管理。面临性能和安全挑战,但仍应用于企业文档管理和跨平台同步。其HTTP原生兼容性是优势,未来或与QUIC协议整合。开发者可选择成熟服务端实现,并关注锁竞争等监控指标。

Elliot Yang·
410 浏览

CRDT 是一种用于分布式系统的无冲突数据结构,基于交换律、结合律和幂等律,无需中心协调即可实现最终一致性。分为状态型(CvRDT)和操作型(CmRDT),各有优缺点。工业实现面临数据膨胀、因果维护等挑战,需采用混合逻辑时钟、向量时钟等方案解决。未来发展趋势包括机器学习驱动、硬件加速和形式化验证。

Elliot Yang·
136 浏览

RESTful API的资源更新机制中,`PUT`用于完整替换资源,而`PATCH`用于部分修改。`PUT`需发送完整资源表示并具有幂等性,`PATCH`则需指定修改指令集和格式。实践中,JSON Merge Patch和JSON Patch提供不同粒度的修改方案。分布式系统需考虑最终一致性挑战,可采用批量PATCH和乐观锁定等策略优化。GraphQL和OpenAPI为API设计提供了新思路,需注意字段冲突和版本兼容等问题。

Elliot Yang·
94 浏览

Node.js中使用RabbitMQ或Kafka限制并发:RabbitMQ通过`prefetch(1)`限制每个消费者的并发数;Kafka通过控制消费者实例数量和消息处理逻辑(如共享计数器配合Redis)限制总并发数,避免系统过载。

Elliot Yang·
343 浏览