• 一个重要的网站需要一个网络服务器来接收请求和一个数据库来写入或读取数据。但是,如果每秒收到数百万个请求,这种简单的设置只有在优化数据库或更改整体数据库策略后才能扩展。那是对的吗?数据库最终达到了活动连接数的限制,并且难以管理并发请求。
  • 当为微服务使用异步通信时,通常使用消息代理。代理确保不同微服务之间的通信可靠和稳定,消息在系统内得到管理和监控,并且消息不会丢失。您可以选择一些消息代理,它们的规模和数据功能各不相同。 这篇博文将比较三种最流行的代理:RabbitMQ、Kafka
  • Mastodon与Twitter相似:可以发布toots(短消息),这些消息对我们的追随者可见;我们可以提升(转发)帖子或收藏(喜欢)它们。 显著的区别:Twitter是一个集中的平台,Mastodon有许多独立的实例。每个Mast icon
  • 通常情况下,RDBMS 数据库将成为您不断增长的应用程序中的主要可伸缩性瓶颈。这是由于 RDBMS 对水平扩展的天然抵制。已经出现了几种策略来缓解这个问题,包括只读副本、分区、分片以及将一些工作负载卸载到 NoSQL 数据库。在这篇动手实践的文章中,我们将研究另一种可供 Spring icon
  • 当涉及到Redis时,一种非常方便的数据结构是GeoHash数据结构。本质上它是一个排序集,根据经度和纬度生成一个分数。 我们将使用 Compose 启动一个 Redis 数据库: icon
  • Go语言·的package pubsub 提供了一种简单且可移植的方式来与发布/订阅系统进行交互。这个项目驱动是基于pubsub的Redis 驱动程 icon
  • Facebook在队列中使用了自适应LIFO的概念: - 它们在正常情况下使用FIFO顺序 - 他们在高负荷下改用后进先出顺序 理由呢?通过在高负载下保持FIFO顺序,用户可能已经放弃了他们的请求。 icon
  • 问题:我的应用程序是一个Tonic服务器,它与redis对话以回复客户的请求。它运行在tokio运行时间上。 不知何故,在一个有64个核心的服务器上,无论我如何努力向服务器发送负载,我都无法将cpu推到40%以上。我看了看网络,它没有接近饱和状态。 icon
  • Redis 模块是Redis的高级功能,允许我们实现特定的自定义数据类型。本质上,模块是一个动态库,可以在启动时或根据命令按需加载到 Redis 中 MODULE LOAD 。模块可以用多种语言编写,包括 C 和 Rust。 我们自己使用 Redi icon
  • 随着缓存的引入,分布式系统中的一致性问题出现了,因为数据同时存储在两个地方:数据库和Redis。 到目前为止,我们看到的所有缓存解决方案,如果没有在应用程序级别引入版本控制,都无法解决数据不一致场景。目前还没有成熟的解决方案来保证最终一致性 icon
  • 以下是 5 个Redis使用案例: 1.缓存最常见的用例是利用 Redis 进行缓存。这有助于保护数据库层不超载。Redis 可为缓存数据提供快速查找时间,有助于提高应用程序性能。 2.会话存储使 icon
  • 随着 DoorDash 的微服务架构不断发展,服务间流量也在不断增长。每个团队管理自己的数据并通过 gRPC 服务公开访问权限,gRPC 服务是一个用于构建可扩展 API 的开源远程过程调用框架。 由于对下游服务的调用,大多数业务逻辑都是 I/O icon
  • 在这篇博文中,我们将探讨GoLang、Redis和 Gocraft的强大组合,以及它们如何将您的Web 开发项目提升到一个新的水平。 GoLang是一种流行的编程语言,以其速度、并发性和效率而闻名,通常需要后台进程在不阻塞主线程的情况下处理任务。 后台作业是在主程序继续运行时 icon
  • Redis 是一种开源内存数据结构存储,可用作缓存、消息代理或持久键值数据库。在本文中,我们将探讨如何将 Redis 与 Golang 应用程序集成,利用 Redis 的强大功能来实现高效的数据存储和检索。 先决条件 确保您的计算机上安装了 icon
  • 幂等性API意味着无论使用相同的请求体/参数成功调用该API多少次,数据/系统状态都将是相同的。 在本文中,我们将提出一种同样关注 API 性能的幂等性机制。 实现幂等 API 是建立安全重试机制的解决方案之一, icon
  • Reddit论坛希望显示其庞大数量帖子的浏览计数问题。 2017 年,天真地将一组唯一 ID 存储为 long(每个 8 字节),但马上迅速增加内存和磁盘的使用量,在该实现中,一个 1000 万浏览量的帖子就有 80MB内存消耗。 icon
  • 在 RevenueCat,我们每天处理超过 12 亿个请求。只有在以下情况下您才能有效地做到这一点: 您可以在许多 Web 服务器之间分配负载。 您可以使用缓存来加速对热数据的访问并保护后端系统和数据存储的容量。 icon
  • 缓存是一种技术,可以存储不经常变化的频繁查询数据,并减少请求的延迟。我们可以在软件应用程序的不同层使用这种技术。 在本文中,讨论在 Spring Boot 中使用 ConcurrentHash 和 Redis 缓存数据库结果 icon