我的程序(游戏服务器)经常从表中删除许多记录,然后也将许多记录插入到表中。用例是:
- 一个角色可能有很多物品,每个物品都有它的属性。
- 一旦一个角色被加载到游戏中,他的项目就会存储在内存中。
- 当角色存在游戏时,所有旧记录(角色加载到游戏之前)将被删除,程序会将角色的新项目插入数据库。
- 一个角色平均有 100 个项目(100 个项目记录和 100 个其他项目属性记录)
当 CCU 达到 1k 左右时,mysql 控制这些读/写会变得非常慢。
我尝试了很多方法来优化 MySQL,但它们还不够好。我的临时解决方法是为 MySQL 数据文件夹使用 SSD 磁盘。
我的问题是:我应该使用其他 DBMS(目前正在考虑使用 MongoDB ...)吗?我应该选择什么?