|
我来说说电商数据库的状况吧:
1,实时性非常高,slave不能有点点延时,如果有30秒延时了,监控同事的电话就打过来了,经常在半夜接收到监控同事的call。
2,主库的批量操作会影响到从库的同步延时,比如批量执行10000个update或者delete之类的,我们一再强调开发人员要规范,但是互联网it程序员,变动太频繁,经常人进人出,有时候赶项目进度,他们sql就随意按照自己的习惯写,也不遵守规范了,所以经常出现不走索引,批量update、delete,造成主库cpu飙升,然后监控同事就报警了。规范文档也写了,培训会议也开了,但是项目紧急人进人出,测试人员就是黑盒测试没有白盒测试,所以很难知道里面有没有批量操作,我去分析slow-log,有的时候还可以看到,大部分是检测不到的。
这个问题不知道从事互联网行业的mysql dba同仁们怎么协调的呢?
3,记得有一次,跟朋友打篮球,我一个帅气的三步上篮,眼看快进,结果电话响了,我一惊,完了,漂亮的姿势stop,赶紧接电话,谢天谢地,db没事,就是slave延时了。赶紧一身臭汗打的回去处理掉。
4,对于小电商公司,如何使用集群cluster呢?还有那么多执行sql在1到2秒之间的慢查询sql,where后面,10多个and,怎么优化?我优化来优化去,也不能优化到0.5秒以下,都是在1秒左右徘徊的,天天去找开发人员业务人员简化流程简化逻辑,后来他们都被我烦死了,说不就2秒吗,反正现在客户也没有投诉,就先放着呗,咱们还有新项目的开发在催着做呢!
5,关于订单的实物一致性,批量下订单的,用事务,死锁的厉害,php好像事务这块处理不是很强,不知道有电商的朋友高并发下订单这里是用php做的吗,如果是,如何处理事务呢?
|
|