我们选用 better-sqlite3 这个库操作数据库。 最方便的一点是,它是同步的。对比于原sqlite3类库更适合配合 koa2 一起使用。代码会变得更简单易读。 为什么选用 better-sqlite3 而 不直接选用 sqlite3 Node.js中SQLite3最快最简单的库。 高性能,高效率和安全性 易于使用的同步API (比异步API更快......是的,你读得正确) 支持用户定义的函数,聚合和扩展 64位整数(在您需要它们之前不可见) 下图是个性能对比,能看出来性能 better-sqlite3 image.png 安装 npm install --save better-sqlite3 使用 const db = require('better-sqlite3')('foobar.db', options username, appType,tokenString); } } } module.exports = TokenDao; 参考 https://github.com/JoshuaWise/better-sqlite3
server + 服务端打包 Prisma Prisma ORM 发布了 6.7.0 版本,该版本极大提升了开发体验,主要是一下一些方面的改进: 数据库支持变化 新的 SQLite 驱动适配器: 引入对 better-sqlite3
它具有受 better-sqlite3 启发的 API,但是使用本机代码编写以提高速度。 query = db.query("select 'Bun' as runtime;"); query.get(); // => { runtime: "Bun" } Bun 可以比 Node.js 上的 better-sqlite3
SQLite 也要原生支持了 之前用 SQLite,要装 sqlite3 或 better-sqlite3。 这俩包都需要编译原生模块,升级 Node.js 版本经常出问题。
adding a --save) flag: $ npm install pg $ npm install pg-native $ npm install sqlite3 $ npm install better-sqlite3
的云函数调用一下: 'use strict'; exports.main_handler = async (event, context) => { const Database = require('better-sqlite3
它的 API 受到流行的 better-sqlite3 的启发,但 bun:sqlite 保证了 3 到 6 倍更好的性能。
的云函数调用一下:'use strict';exports.main_handler = async (event, context) => { const Database = require('better-sqlite3
性能&内存控制默认Docker镜像采用better-sqlite3引擎,内存稳定(~100-120MB),解决早期long-running部署内存泄露问题。
externalModels = ["os", "fs", "path", "events", "child_process", "crypto", "http", "buffer", "url", "better-sqlite3
3000 methods: [GET, HEAD, PATCH, POST, PUT, DELETE] credentials: true database: client: better-sqlite3