Python将引入不变对象等本周互联网大厂博文推荐
💡
原文中文,约1900字,阅读约需5分钟。
📝
内容提要
Instagram引入了Immortal Objects,实现真正的并行性。Meta使用预分叉Web服务器架构来缓存对象,但私有内存增加,共享内存减少。为解决问题,引入了Immortal对象,增加对象的不变性。Depop与Tecton合作提供特征存储。
🎯
关键要点
- Instagram引入了Immortal对象,实现真正的并行性。
- Meta使用Python (Django)作为Instagram的前端服务器,依赖多进程架构和asyncio处理并发。
- 预分叉Web服务器架构用于缓存对象,但导致私有内存增加和共享内存减少。
- 通过分析Python堆,发现大多数对象在运行时是不可变的,但仍通过引用计数和垃圾收集操作修改。
- 引入Immortal对象(PEP-683),创建不变对象,增加对象的不变性。
- Depop与Tecton合作提供特征存储,支持机器学习模型的特征管理。
- Tecton提供比开源工具Feast更多的增值功能,确保特征定期更新。
➡️