CREATE TABLE `user_info` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `balance` decimal(10,2) DEFAULT '0.00' COMMENT '余额', `role` int(1) DEFAULT '0' COMMENT '用户角色 0:普通 1:系统', `version` int(11) DEFAULT '0' COMMENT '版本', PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=20409 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户信息';--系统用户INSERT INTO `user_info`(`id`, `balance`, `version`, `role`) VALUES (1, 10000.00, 0, 1);--普通用户INSERT INTO `user_info`(`id`, `balance`, `version`, `role`) VALUES (2, 100.00, 0, 0);......这张表有系统用户这条记录,其他用户在交易时,都会对这个系统用户balance 操作读写。在大量普通用户同时交易的场景下就会高并发对这条系统记录读写. 有什么其他优化方案吗? |