前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >我更新了博客看板娘 - wuuconix's blog

我更新了博客看板娘 - wuuconix's blog

作者头像
wuuconix
发布2023-01-30 15:35:54
发布2023-01-30 15:35:54
3920
举报
文章被收录于专栏:wuuconixwuuconix

背景

最近博客的图片用上了又拍云CDN,网站加载速度快了不少。网站整体在1~2s之间就能完成加载,除了我的shizuku看板娘。

平常加载她需要6~7s的时间,而且每次切换页面,比如进入文章之类的操作,这个加载过程还会再进行一次,让人等的难受。

下图红色框起来的区域就是她的加载过程,我们看到,她从2s开始加载,一直加载到了6s

经过测试,我发现是我用的hexo插件 hexo-helper-live2d 出了问题。它把看板娘的静态资源都放在unpkg.com上供用户访问。然而这个cdn在国内的延迟很大。

以下是unpkgjsdeliver的对比。

可以看到同样是国外cdn的jsdelivr 在国内许多城市的延迟在100ms以内,而unpkg则几乎全部接近200ms。

然后更离谱的情况发生了,我发现 hexo-helper-live2d 这个项目在github已经归档了,已经变成只读的了。

用着一个已经被遗弃的项目,加载速度能快就有鬼了2333

live2d-cdn的创建

在github简单搜了一下,目前比较流行的live2d项目是 stevenjoezhang/live2d-widget

里面包含两种得到资源的方式。

  1. 利用 fghrsh/live2d_api 在自己服务器上跑一个php程序当后端接口。称为api方式。
  2. 指定url链接,直接获取看板娘的需要静态资源。一般我们都会把资源放在cdn上获取最大速度,称为cdn方式。

大学以来CTF的经历让我对php的印象不是很好,而且个人认为没有必要用后端接口,看板娘需要的就是它的静态资源文件,cdn方式完全可以得到目的。

于是我便简单魔改了一下代码,删除了原项目中 使用api的代码。

然后原项目因为怕涉及到版权问题,没有给live2d的模型。在找了一圈后,我发现 imuncle/live2d 这个仓库里面提供了许多模型。

看了100多个模型,最后选择了小埋,我便把模型直接放到仓库里了。经过一番代码的调整,最后这个项目就完成了。

wuuconix/live2d-cdn: 自用。仅包含cdnPath的live2d-widget。内置模型。 (github.com)

效果展示

可以看到,现在整个网页包括小埋的加载都只用了2.2s。十分迅速。

而且由于 stevenjoezhang/live2d-widget 的创新,给看板娘加上了waifu-tool

当鼠标指针移动到她身上的时候会出现一些功能按键。大家自己体验吧2333。实际效果很赞。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月5日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • live2d-cdn的创建
  • 效果展示
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档