随着社会网络的不断变化处理缓存



使用Python的Django (w/Rest框架)创建一个类似Twitter或Instagram的应用程序

考虑到社交网络不断变化的性质,处理缓存内容(JSON数据、图像等)的最佳方法是什么?如何仍然显示更新状态,用户创建一个新的帖子,喜欢/评论一个帖子,或删除一个帖子,同时仍然缓存内容的快速性能?

如果每次用户执行操作时都要刷新/重新创建缓存,那么不值得使用缓存,因为更新的频率太快,使缓存无法使用。处理这个问题有哪些技巧?

请随意分享您在实现解决方案时学到的方法和一些智慧。任何建议都将非常感谢。:)

一种技术是在它们所引用的媒体内容上键入url。例如,如果您托管图像,那么使用url /images/<sha>中图像文件的sha散列。

你可以在这些url上设置未来的缓存过期头。如果图片发生了变化,那么你也要更新引用它的URL,并且对不再缓存的图片发出请求。

您可以将此技术用于常规数据库模型以及图像和其他媒体,只要在对象的任何字段更改时重新计算对象的哈希值即可。

最新更新