问题描述
公司整体服务从经典环境迁移到vpc,npm私有仓库也需要迁移,对原来的服务器做了镜像,迁移完成后,通过网页访问,页面空白,无数据展示,查看接口返回的数据,接口响应确实为空
问题排查
-
数据未迁移成功?
开始以为数据没有迁移成功,让运维看了下磁盘数据,数据存在,且和原仓库数据保持一致,所以非数据问题
-
配置有问题?
verdaccio 通过配置文件指定数据存储目录,没有数据可能是因为配置的目录和实际目录不匹配,对比后发现没有异常,所以排除配置问题
- 查看源码定位问题
很懵逼的时候只能查看源码了,接口中都用到了storage
,通过跟踪调用,最终看到,使用了.sinopia-db.json
存储包索引数据,并且在项目启动后会将该数据load到内存,通过lunr
简历内存索引,提供快速的检索功能