MySQL数据库三个关键性能指标TPS\QPS\IOPS

TPS:每秒事务数。
InnoDB 引擎。
系统拥塞模块决定TPS。
计算:(Com_commit + Com_rollback) / 工作时间。
2 02 0年,电商系统测试TPS峰值达到5 00。

QPS:每秒的问题数。
InnoDB MyISAM 引擎。
测量交通处理。
计算:问题/工作时间。
在 2 02 1 年的一项实验中;某新闻网站QPS峰值达到1 万。

IOPS:每秒磁盘 I/O 操作数。
测量存储性能。
计算:1 000 /(Tseek + Trotation)。
在 2 02 2 年的试验中,一些监控系统在 SSD 上实现了 1 5 ,000 IOPS。

实用提醒:选择FIO作为监控工具,根据业务特点选择指标。

sql怎么查看当前日期

mysql取系统当前时间的函数

说实话,当我第一次接触MySQL时,我并不太理解这些功能。
我记得刚开始写代码的时候,我直接将NOW(​​)结果插入到DATE字段中,数据库直接给我报错了。
当时我的脸就绿了。
后来,老板老王敲了敲我的桌子,指着屏幕说:“小张,你看看现在返回了什么,DATE是多少?”我恍然大悟。

有趣的是,现在回想起来,这些功能都非常好用。
例如,我上次做项目时,需要记录每个用户登录的时间戳。
我只是使用 JUST() 将其保存到 DATETIME 字段,而没有考虑太多。
但有一个细节你需要注意。
如果数据库时区设置不正确,NOW()返回的时间可能与您的系统时间不匹配。
我记得有客户抱怨过,说系统总是显示错误的当前时间,后来发现是时区参数错误,修改后就解决了。

CURDATE() 和 CURTIME() 更简单、更粗暴,是日期和时间的直接“裸”版本。
上次写报表查询,只需要看看今天有多少订单,简单用CURDATE()条件过滤一下,性能还不错。
但如果您开发一个跨时区的应用程序,则应更加仔细地对待 CURTIME() 返回的本地时间。
不要将它与 now() 混淆。

邦个人没有测试过PostgreSQL或SQL Server的版本差异,但按理说这些主流数据库的核心功能都是相似的。
我记得数据有X秒的延迟,但是我建议你查看具体数据库的文档,因为不同的系统可能会有细微的差异。