npmvs:用来比较 npm 包下载量,All in 云函数开发,vue3+nestjs,随后开源

404 阅读2分钟

用处

查看,对比 npm 包下载量 ;调研、选择替代 npm 包

地址: vs.abfree.com/ 

数据来源

npms.io / github openapi / npmjs.com

技术选型

  • 前端: vue3 + antdv
  • 后端: nestjs + prisma + mysql + redis

sql 存了相关性推荐的数据 因为 npms 和 github 的接口访问过慢,加上会被限频,redis 用来缓存请求结果

部署方式

  • 静态文件用了云托管,自动构建+cdn 发布
  • 后端用了 docker 做打包,然后使用云函数运行镜像

云函数开发体会

背景: 最开始使用的是轻量云服务器+pm2 做后端部署,但是如果访问量太大,不好扩容,宽带太大了也消费不起 所以后面想上 docker+k8s,虽然后面只需要增加主机增加 pod 就可以扩容,但是技术栈有点深,不能保证稳定性. 后面发现云函数可以直接上镜像,直接用了 起初使用云函数是上传代码,各种环境 /包问题,直接放弃了,有了镜像环境后,轻松了很多,说下直接好处吧

  • 不用担心扩容问题
  • 按量付费 因为没人访问,目前每天几分钱(也不怕流量攻击,有告警和费用阈值)
  • 直接写 dockerfile 构建,自动发布镜像部署,少了很多部署心智负担
  • 云函数和 api 网关都自带版本控制,可以利用路由 /权重做灰度
  • 云函数和 redis mysql 内网打通,不担心其他的技术栈扩展

整体来说,比以前自己动手轻松了很多很多,也退掉了其他的云服务器 现阶段确实挺省钱的,哈哈

还需要优化的地方

  • npm 包替代性推荐
  • npm 包每周推荐

大家看下有什么建议,或者讨论技术

关于开源

开源还是要开的,现阶段前后端代码还没脱敏,等脱敏了直接放在 npmvs 上

参考

产品参考这个网站,但是觉得这个网站太慢了,所以 www.npmtrends.com/