凌国,微信 iOS 基础优化组组长,长期专注于移动客户端的架构优化、稳定性优化和性能优化。2010 年毕业进入腾讯,随微信一起成长。早期参与了摇一摇、朋友圈等功能的开发,后转向 iOS 客户端的性能优化与稳定性维护,先后主导了卡顿监控系统、ID-KEY 监控系统等移动客户端运营体系的搭建,以及一系列基础组件的创建。
随着微信用户量的增长,微信移动客户端的消息收发愈发频繁,DB 并发性能成为移动端性能的瓶颈,DB 损坏也成为影响用户口碑的一大因素;此外,FMDB 等繁琐易错的 DB 接口也影响了业务的快速迭代。为了解决这些痛点,微信移动开发团队通过学习 SQLite 源码,深入优化,取得了一定的成效。并且在此基础上抽象出了数据库组件,提供高并发能力和用户友好的面向对象接口。本话题主要分享微信开发团队在 DB 优化方向上进行的探索历程。