gpt4 book ai didi

c++ - 设计问题: Updating database from a low latency C++ application

转载 作者:太空狗 更新时间:2023-10-29 20:30:27 24 4
gpt4 key购买 nike

我正在用 C++ 开发低延迟应用程序。我还需要更新处理和所有状态更改的数据库。为了节省调用数据库更新所涉及的延迟,我在我的应用程序中使用本地数据结构(内存中)。

但我还需要更新数据库。我应该使用单独的线程来更新数据库吗?我如何才能节省数据库延迟并仍然使数据库保持最新。

最佳答案

为了最小化延迟,您肯定需要一个数据库线程(我将其称为 DBT)。
但是,如果更新频繁,您将希望缓冲更改,并让 DBT 在将更新推送到实际数据库之前尽可能合并所有更新。如果 player.x = 1,则 player.x = 2,DBT 可以跳过第一个。如果更新速度非常快,并且数据集不是很大,您可以考虑定期完全转储而不是运行更新。例如,每 60 秒“保存”一次您正在做的事情,而不是向数据库发送每个已完成操作的列表。答案在很大程度上取决于你在做什么。这里没有放之四海而皆准的答案。

关于c++ - 设计问题: Updating database from a low latency C++ application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7070366/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com