论哪个数据库实例处理查
Posted: Tue Apr 22, 2025 8:56 am
要使用 Session API,首先需要使用withSession方法创建一个会话(步骤 A)。该withSession方法接受一个书签作为参数,或者说约束。提供的约束指示 D1 将会话的第一个查询转发到哪里。使用 Session APIfirst-unconstrained允许任何副本服务器处理第一个查询,而不受其最新性的任何限制。使用Session APIfirst-primary确保会话的第一个查询将被转发到主服务器。
提供显式书签会指示 D1,无询,都必须至少与提供的书签保持同步(如果是副本数 巴哈马电报号码数据 据库,则主数据库根据定义始终保持最新)。显式书签使我们能够从先前创建的会话继续执行,并保持跨用户请求的顺序一致性。
创建会话后,像平常使用 D1 一样进行查询。会话对象可确保您所做的查询彼此之间顺序一致。
// C. Session read query.
const { results } = await session.prepare('SELECT * FROM Orders').all()
例如,在上面的代码示例中,用于列出订单的会话读取查询(步骤 C )将返回至少与用于创建会话的书签(步骤 A)一样最新的结果。
更有趣的是,先执行添加新订单的写入查询(步骤 D),然后执行列出所有订单的读取查询(步骤 E)。由于这两个查询都在同一个会话中执行,因此可以保证读取查询会观察到包含写入查询的数据库副本,从而保持顺序一致性。
提供显式书签会指示 D1,无询,都必须至少与提供的书签保持同步(如果是副本数 巴哈马电报号码数据 据库,则主数据库根据定义始终保持最新)。显式书签使我们能够从先前创建的会话继续执行,并保持跨用户请求的顺序一致性。
创建会话后,像平常使用 D1 一样进行查询。会话对象可确保您所做的查询彼此之间顺序一致。
// C. Session read query.
const { results } = await session.prepare('SELECT * FROM Orders').all()
例如,在上面的代码示例中,用于列出订单的会话读取查询(步骤 C )将返回至少与用于创建会话的书签(步骤 A)一样最新的结果。
更有趣的是,先执行添加新订单的写入查询(步骤 D),然后执行列出所有订单的读取查询(步骤 E)。由于这两个查询都在同一个会话中执行,因此可以保证读取查询会观察到包含写入查询的数据库副本,从而保持顺序一致性。