【发布时间】:2018-08-04 10:21:19
【问题描述】:
我的 discord bot 与外部 mysql 服务器通信以获取特定的用户数据,我想知道以下 2 个选项中哪个更有效:
1:每次执行命令/代码时向服务器请求数据
2:在启动时将整个表加载到列表中,并在执行命令/代码时从那里获取用户数据
如果我选择选项 2,需要多少 cpu?
意见不胜感激!
注意:我的机器人目前在大约 22 个服务器上,有 12000 个成员
编辑:机器人用来交流的代码是here
【问题讨论】:
-
Java 和 MySQL 代码在哪里?
-
如果用户数据可能被刷新,则每次加载或缓存 10/5/1 分钟/秒。
-
数据多久更改一次?我询问存储在 MySQL 服务器中的数据。观察:缓存是计算机科学中的一个难题。通过预加载数据,您正在缓存它,并承担管理这些缓存的困难。因此,除非出于性能原因,否则不要预加载。查找首字母缩略词 YAGNI 并认真对待。
-
@O.Jones 每次用户手动更新数据时,数据都会发生变化。所有更改均由程序进行