我的头脑正在阅读有关数据库的内容。我知道你选择哪一个取决于具体的用例。 所以这是我的:
当前的MySQL设置如下:
如果玩家做出选择,插入内容如下:
INSERT INTO choices VALUES saveid=:saveid, choice=:choice
因此可以通过
重建数组SELECT * FROM choices WHERE saveid=:saveid
我希望这有点可以理解。 我估计:
大多数情况下,DB应该是轻载,因为插件很小
数据存储必须可靠!如果我们开始经常丢失他们的存档游戏,我认为玩家不会坚持使用我们。虽然我认为Redis每秒刷新磁盘就足够了,因为我们不会在这里处理关键任务。如果游戏忘记了最后一个或两个玩家,那就不要忘记整个游戏。
您能否就我的用例建议使用DB? 我已经开始使用MySQL了,现在我已经读过CouchDB,MongoDB,Riak,Cassandra。我认为Redis是不合适的,因为一旦数据集超出你的RAM,那一个似乎会严重降级。但我对一切都持开放态度。 我也对人们说:坚持使用MySQL或转到PostgreSQL。
我也会接受对我设置存储方式的批评。如果你说:选择Cassandra并像这样存储,我会听。
这是一个健全性检查,因为现在是我最后一次能够在游戏上线之前更改数据库,我想做的最后一件事就是在3个月内换掉数据库,因为它已经缩放不好。
哦,是的,App是用Javascript编写的,与服务器的通信是通过PHP进行的。
答案 0 :(得分:0)
我不认为您需要过多担心数据库 - 除非您确定从第一天开始就拥有庞大的用户群(网络应用程序通常不会在一夜之间成名)。
继续使用你所知道的(MySQL)会好得多,但是将所有数据库命令保存在一个单独的包装器类中(无论如何你应该这样做)。 如果这样做,只要您使用标准SQL并且不执行特定于该数据库的任何操作,转换到另一个数据库就不那么难了。