mysql 写计数器需要注意的问题详解数据库
2023-06-13 09:20:09 时间
MySql计数器,如网站点击数,如何实现高性能高并发的计数器功能 由于并发的时候 不能同时写入一行数据 所以要分开写
先创建表
CREATE TABLE `article_view`(
`article_id` int(11) NOT NULL,
`pond` tinyint(4) NOT NULL COMMENT 池子,就是用来随机用的,
`view` int(11) NOT NULL,
PRIMARY KEY (`article_id`, `pond`)
)ENGINE=InnoDB;
小访问量的随机池子100个肯定多了,三五个足矣。每次访问的时候,随机一个数字(1-100)作为pond,如何该pond存在则更新view+1,否则插入,view=1。借助DUPLICATE KE
INSERT INTO `article_view` (`article_id`, `pond`, `view`) VALUES (123, RAND()*100, 1) ON DUPLICATE KEY UPDATE `view`=`view`+1
统计的时候
SELECT SUM(`view`) FROM `article_view` WHERE `article_id`=123
2 还有就是用消息队列的 一般用消息队列比较靠谱(特别有百万数据的时候)
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/4027.html
mysql相关文章
- MySQL数据库中获取当前时间的方法(mysql数据库获取当前时间)
- MySQL Status Sort_merge_passes 数据库状态作用意思及如何正确
- 使用Cmd通过MySQL进行数据库操作(cmdmysql)
- MySQL中创建视图的操作指南(mysql如何创建视图)
- MySQL从Shell管理数据库(mysql拿shell)
- 如何删除MySQL数据库中的索引(删除mysql索引)
- 解决MySQL事务回滚问题(mysql回滚操作)
- 创建MySQL新账号:一步一步操作指南(mysql新建账号)
- Mysql监视器:提升数据库性能的终极武器(mysql监视器)
- 查找MySQL中被锁定的表(mysql查询被锁的表)
- 深度探索 MySQL 索引优化工具(mysql索引工具)
- 查询MySQL中的表关联查询实战(mysql两张表关联)
- 快速查询MySQL数据库信息的方法:列出数据库架构(mysql怎么列出数据库)
- 使用MySQL进行链接和连接操作(mysql做链接)
- MySQL数据库完全指南:行之有效的解决方案(mysql大全)
- 设计之构建可靠应用MySQL:构建可靠应用的数据库规范设计(mysql 数据库规范)
- 使用MySQL计算中位数聚合数据(mysql 中位数聚合)
- CMD如何使用连接MySQL数据库(cmd怎么连接mysql)
- 如何在MySQL中创建数据库(mysql中创建建库)
- MySQL实现一主多从备份方案,数据安全有保障(mysql一主多从备份)
- Mysql与Zookeeper集成如何提高数据系统的可靠性(mysql zk)
- MySQL数据库多视角分析(mysql不同数据库视图)
- Mysql 数据库丢失别慌来了解一下 MySQL 不见的可能原因及解决办法(mysql不见)
- 数据库如何解决mysql不能连接到数据库问题(mysql不能连接到)
- MySQL优化全攻略-相关数据库命令