蚂蚁面试

作者: hedgehog1112 | 来源:发表于2019-12-25 19:21 被阅读0次

1、mysql乐观锁和悲观锁的区别?

乐观锁通过MVCC,版本实现,悲观锁select... for update加排它锁 读用乐观锁,写用悲观锁。

2、1.8对ConcurrentHashMap为什么这样优化?

https://www.jianshu.com/p/b1a8ca3554ca

锁粒度更小,并发扩容避免冲突严重时链表多长,查询效率从O(N)提高到O(logN))

3、redis主从机制了解么?怎么实现的?

https://www.jianshu.com/p/8b5fad2c1658

4、如果落到某个分片的数据很大怎么办?哈希取模有哪些弊端?

https://www.jianshu.com/p/3848d3075cfa

哈希取模、range,拆为多表;扩容缩容相对复杂 ,量少不均匀

5、Snowflake生成的ID是全局递增唯一么?怎么实现全局递增的唯一ID?

只是全局唯一,单机递增,TDDL一次取一批ID,再本地慢慢分https://www.jianshu.com/p/b170d1e7b072

6、系统目前的瓶颈在哪里?优化思路

7、服务治理怎么实现的?(说限流、压测、监控等实现)

8、说说Spring Bean 的生命周期吧

https://www.jianshu.com/p/6cdc73d05ee9

9、怎么避免产生浮动垃圾?强制young gc会有什么问题?Remembered Set底层是怎么实现的?

https://www.jianshu.com/p/671ab8535d82

https://www.jianshu.com/p/1bd38a470a28

相关文章

网友评论

    本文标题:蚂蚁面试

    本文链接:https://www.haomeiwen.com/subject/kzkxoctx.html