gpt4 book ai didi

mysql - 使用 memaced 减少数据库写入

转载 作者:行者123 更新时间:2023-11-29 08:55:26 25 4
gpt4 key购买 nike

我想将我的统计跟踪系统转换为不直接写入数据库,因为我们遇到了瓶颈。

我们目前在网站的某些方面使用 memcached,我想用它来存储统计数据并定期将它们提交到 mysql 数据库。

然而,问题在于项目的数量(以百万计),这些项目可能会在 cronjob 运行之间收集统计数据,并将其提交到数据库中。除了运行 SELECT * FROM data 并检查每个内存缓存键是否存在,然后更新表之外......还有其他方法可以做到这一点吗?

最佳答案

(我并不是说下面是福音,这只是我的直觉。正如后面所说,我不知道你的系统的细节:)并且显然没有冒犯的意思等等:))

我建议不要为此使用 memcached。 Memcached 旨在快速检索您之前获得的值,而不是存储值。最大的区别是您的缓存已满,您将丢失数据。

通常情况下,您的缓存中没有数据,并从源重新收集数据,但在这种情况下这是不可能的。仅此一点就足以成为我试图劝阻你的理由。

现在你说主要问题是你遇到的 mysql 连接限制。如果你做简单的事情(就像我们在评论中讨论的那样:插入延迟),这只是增加限制的情况。您可能应该有足够的权力让您的脚本/用户访问数据库一次并说“这最终应该被添加”,然后离开。如果您的用户甚至无法为此打开 1 个连接,那么存在严重的资源问题,您可能无法通过添加额外的缓存层来解决?

显然很难说没有任何系统、软件和硬件的规范,但我的建议是看看你是否可以通过增加限制来让他们打开连接,并稍微调整一下服务器变量,而不是使用 memcached 作为中间层来对系统进行猴子修补。

关于mysql - 使用 memaced 减少数据库写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10077495/

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