sqlite 性能是否够用?看上去并发似乎还是很强

cavendi 2026-08-24 10:55 1

对 SQLite 的印象还停留在“本地轻量小玩具”或者“只能做客户端缓存”,但最近深入看了一些基准测试和生产实践(比如 PocketBase 这种纯基于 SQLite 的 BaaS ),性能表现有点强:




  • 零网络开销: 开启 WAL ( Write-Ahead Logging )模式后,读写互不阻塞。省去了传统外置 DB ( Postgres/MySQL )的跨网络通信开销,纯查询响应速度往往能直接碾压。




  • 写并发并没有想象中脆弱: 虽说是单写机制,但依靠内存级排队和极短的事务耗时,在一台几十块钱的廉价 VPS 上,走 HTTP API 依然能跑出 1 分钟 5 万+ 次的写入( 800+ 真实写入 TPS )。配合 CGO 编译驱动还能再翻 2-3 倍。




  • 读多写少的绝对统治力: 只要不是持续秒级打点的物联网或超大型分布式系统,绝大部分中小型 SaaS 、企业系统、高并发读的 Web 应用,单机 SQLite 跑起来既轻量又极其丝滑。




大家在生产环境里有大规模上 SQLite / PocketBase 的经验吗?在真实业务高并发下有没有踩到过什么隐蔽的锁死或瓶颈问题?现在写的后端功能基本起步 sqlite ,因为用户量不多,我感觉也是完全够用。


什么样下的体量,或者什么样的场景下,sqlite 才无法支撑呢


这是一个大佬的基准测试: https://github.com/pocketbase/benchmarks

最新回复 (6)
  • cavendi 楼主 08-24 13:51
    1
    怎么没有人讨论啊
  • Muze 08-24 14:10
    2
    做本地的博客文章管理,效果也还行,
  • jimages 08-24 14:20
    3
    一般来说,一般人的业务流量,跑不到 sqlite 的瓶颈,怎么快怎么来。后面扛不住了再搞复杂的。
  • xtreme1 08-24 14:27
    4
    一个是没有跨网络服务, 一个是用户管理和权限控制. 如果我写个 wrapper 还不如用其他现成的数据库
    如果不需要这些 99% 场景够用
  • newaccount 08-24 14:34
    5
    如果你的应用不用考虑负载均衡、数据库读写分离、硬盘坏了、可用区故障、实时慢 sql 统计、蓝绿更新打补丁,那就爱用啥用啥呗
  • rocmax 08-24 14:57
    6
    turso 就是基于 SQLite 的,如果每个处理只访问一个分片,那么就可以无限横向扩展。问题是一旦分片了,两个分片之间就没法确保事务。
* 帖子来源V2EX
返回