1

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

这里有 townresources 表:

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 ;

就我而言,最好的选择是什么?

4

2 回答 2

1

您最好的选择是先进行测试。您想支持多少用户和城镇?三倍……创建测试数据并查看性能是否在界限内。

于 2012-05-22T18:35:39.240 回答
1

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

于 2012-05-22T18:38:26.977 回答