fastapi 请求过多一般缓存方案是什么?

fastapi 请求过多一般缓存方案是什么?

fastapi 请求过多一般缓存方案是什么?

本地开了 fastapi , 本身要处理的 post 请求过多,要对数据库写入

想到做请求缓存队列,

一般 fastapi 缓存方案是什么?


回答:

写太多:

  • 扩容 DB 硬扛,水平扩容或者垂直扩容
  • 写缓冲就用外部 message queue,比如 rabbitmq、kafka。别想着用进程内的 queue,一 kill 就丢数据,就完蛋

读太多:读缓存就用外部的 redis 或者进程内的各种数据结构,不怕 kill


回答:

这种一般称之为缓冲

方案的话,一般两种:写队列,写内存。思想是一样的,无非就是提高吞吐以适应接口,但同时还需要考虑数据的可靠性。

一般会使用外部中间件,如Redis,先写Redis请求直接返回。有专门的线程做数据同步,Redis->DB。或使用消息队列,如RabbitMQ、Kafka,写入成功后响应请求,然后有专门线程做数据同步。

以上是 fastapi 请求过多一般缓存方案是什么? 的全部内容, 来源链接: utcz.com/p/939034.html

回到顶部