studaeo
本站致力于IT相关技术的分享
Tornado 结合 Milvus 与 SSE 构建实时向量相似性推送管道的实践 Tornado 结合 Milvus 与 SSE 构建实时向量相似性推送管道的实践
项目的需求很明确:当一个新商品上架时,系统需要立即通知那些正在浏览与该商品高度相似的其它商品的用户。常规的轮询方案在实时性和服务器负载上都无法接受,而WebSocket对于这种单向的服务器推送场景来说,显得过于笨重。我们的目标是构建一个轻量
2023-10-27
构建基于PostgreSQL逻辑复制与Tornado的GraphQL实时订阅网关 构建基于PostgreSQL逻辑复制与Tornado的GraphQL实时订阅网关
项目开发中一个棘手的常规问题是如何将后端数据源的变更实时推送给前端客户端。传统的轮询机制不仅延迟高,而且在客户端数量增多时会给服务器带来巨大的资源浪费。我们需要的是一个由数据变更驱动的、反应式的推送架构。 最初的构想很简单:在业务代码的数据
2023-10-27
在 tRPC 中间件层实现 Couchbase 的透明读写分离与会话一致性保障 在 tRPC 中间件层实现 Couchbase 的透明读写分离与会话一致性保障
一个服务的性能瓶颈最初显现时,往往是在数据库层面。我们的一个核心元数据服务,其 Couchbase 集群的主节点(Write Master)CPU 负载开始频繁告警。分析流量后发现,超过85%的操作是读请求,但它们全部被路由到了负责写入的主
2023-10-27
利用 Serverless 与 PWA 构建基于 SQLite 的离线优先数据同步层 利用 Serverless 与 PWA 构建基于 SQLite 的离线优先数据同步层
要构建一个真正意义上的离线优先(Offline-First)应用,最大的挑战并非在客户端缓存静态资源,而在于如何处理离线期间的数据变更,并在网络恢复时与云端进行可靠同步。传统的方案是在客户端和服务端各维护一套复杂的状态机,但这往往导致代码臃
2023-10-27
构建基于 RabbitMQ 的高韧性任务系统及其 Vue 与 MobX 实时状态可视化前端 构建基于 RabbitMQ 的高韧性任务系统及其 Vue 与 MobX 实时状态可视化前端
我们面临一个棘手的工程问题:一个处理密集型计算任务的后端系统,其核心依赖于一个不稳定的第三方 API。这些任务通过 RabbitMQ 分发给一组 Node.js worker。当第三方 API 抖动或宕机时,我们的 worker 会持续重试
2023-10-27
为 Rust Vercel Functions 构建基于 Consul 和 Vercel KV 的热缓存服务发现机制 为 Rust Vercel Functions 构建基于 Consul 和 Vercel KV 的热缓存服务发现机制
一个看似简单的需求,将一个 Rust 编写的 Vercel Function 连接到部署在内部环境的某个 gRPC 服务。服务地址由 Consul 统一管理。最初的实现直接而粗暴:函数每次执行时,都通过 Consul 的 HTTP API
2023-10-27