游戏资源存储

时间:2012-05-22 18:19:47

标签: php mysql database

所以我有以下表townResources,我存储每个城镇ID的每个资源值。我对大量用户的性能影响有点保留。我正在考虑将资源的余额移动到城镇表,以及将其存储在.php文件中的资源的一般值:)。

这里有townreources表:

CREATE TABLE IF NOT EXISTS `townresources` (
  `townResourcesId` int(10) NOT NULL AUTO_INCREMENT,
  `userId` int(10) NOT NULL,
  `resourceId` int(10) NOT NULL,
  `townId` int(10) NOT NULL,
  `balance` decimal(8,2) NOT NULL,
  `resourceRate` decimal(6,2) NOT NULL,
  `lastUpdate` datetime NOT NULL,
  PRIMARY KEY (`resourceId`,`townId`,`townResourcesId`,`userId`),
  KEY `townResources_userId_users_userId` (`userId`),
  KEY `townResources_townId_towns_townId` (`townId`),
  KEY `townResourcesId` (`townResourcesId`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 COMMENT='Stores Town Resources' AUTO_INCREMENT=9 ;

对我而言,这是最好的选择吗?:)

2 个答案:

答案 0 :(得分:1)

您最好的选择是先测试一下。多少用户&你想支持哪些城镇?三倍......创建测试数据并查看性能是否在界限范围内。

答案 1 :(得分:1)

如果遇到性能问题,应该考虑使用redis或memcache缓存数据。