本周我们专注于性能优化,没有进行任何功能更新。所以可能看起来有点无聊。
PageSpeed Insights 分数显示了本周的工作情况。
本周之前
本周之后
此外,当您打开页面时,您可以清楚地感受到速度的变化。
以下是我们本周所做的一些具体优化。
减小帖子列表数据的大小#
xLog 以前直接使用 Crossbell Indexer 获取帖子列表,导致一些额外的不必要数据。现在我们使用 xLog 自己的 API,删除了不必要的数据,并使用 Redis 缓存。
我们还添加了分页功能,因此首页默认只加载前 10 个帖子,直到用户点击加载更多按钮。
Markdown 解析模块的延迟加载#
我们发现 Markdown 解析模块非常庞大,因此我们进行了延迟加载。我们还通过服务器端滑动来解析 Markdown,从而消减了首页对该模块的依赖。这大大减小了首页上的 js 大小。
更精细的缓存#
我们一直在服务器端使用 Redis 缓存来处理所有请求,以减轻缓慢的索引器带来的影响。
然而,某些请求仍然耗时较长,例如通过帖子 slug 查找帖子 id,因此我们针对这些需求优化了缓存逻辑。
您可以在 GitHub 上查看我们的代码更详细的变动。
就像往常一样,如果您有任何建议或期望,或者只是想随便聊聊,欢迎加入我们的社区或在下方留言。干杯!🍻