通过关闭Python垃圾回收(Garbage Collection,GC)机制(通过回收和释放未使用的数据来回收内存),Instagram的性能可以提高10%。是的,你没有听错!通过禁用GC,我们可以减少内存占用并提高CPU LLC缓存命中率。如果你想知道为什么,那么就来阅读Chenyang Wu和Min Ni为此撰写的{aa43aa}。
作者Chenyang Wu是Instagram的软件工程师,Min Ni是Instagram的技术经理。
Instagram的web服务器以多进程的模式运行在Django上,主进程分叉创建几十个工作进程,用来接收传入的用户请求。对于应用程序服务器,我们使用带前置模式的uWSGI来利用主进程和工作进程之间的内存共享。
来源: