随手记面试录
1、微服务多的话,很难治理,比如部门间相互依赖,发版问题如何实现?
根据具体情况,一般都是指定发版计划,厘清服务依赖关系,主要是多同步,多沟通,一般都是拉一个群交流。
2、10个用户同时去更新数据库表中最后一条记录,如何保证不会互相覆盖?
乐观锁:可以加一个version字段,也就是通过cas。
意向锁是 InnoDB 自动加的,不需要用户干预。
对于INSERT、UPDATE和DELETE,InnoDB 会自动给涉及的数据加排他锁;
对于一般的SELECT语句,InnoDB 不会加任何锁,事务可以通过以下语句显式加共享锁或排他锁。
共享锁:SELECT … LOCK IN SHARE MODE;
排他锁:SELECT … FOR UPDATE;
3、正则表达式 /ab?c/能匹配的最多字符串?
?代表零次或1次。
4、一个数据库的表,写操作很频繁,大概有一亿数据量,从mysql数据库设计层面考虑如何优化?
这么大的数据量很定要分表&