- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3 企业级NPM 服务在阿里的实践key
企业级 NPM 服务在阿里的实践
何翊宇(不四)
dead-horse
deadhorse_busi
2B码农死⼩⻢
数据魔方
淘宝时光机
我的支付宝
天猫首页
• 淘宝收藏夹
• 淘宝指数
• 天猫移动版首页
• …
什么是 NPM?
模块管理工具
模块中心仓库
模块查询网站
为什么需要私有NPM?
• 快速稳定的中心仓库服务
• 共享私有模块
• 保证对所有模块的可控性
• 文档的集中展示
git
• 需要开放所有仓库的访问权限
• 不支持 semver 版本化区间
• 代码可能随意被覆盖
到底需要什么?
• 一个快速 、稳定 ,可以发布私有模块的中心仓库
• 模块查询,文档浏览的网站
• 定制化、更友好的客户端
动手!
基于 CouchDB
full sync
NPM Couch
publish install publish
install install
request publish
User Admin
• 无法自动同步(网络原因)
• couchDB 不稳定,难维护
• 难以定制化实现权限接入等其他功能
• 缺少模块搜索和文档托管页面
package.json *.tgz
P o w e r e d by
保持 NPM 接口不变
MySQL + CDN
可水平扩展
CNPM v0
full sync CNPM
NPM
v0
install
publish request sync publish
install install
request publish
User Admin
全量同步
• 每隔十分钟 自动同步一次
• 手动通过 cnpm sync 命令行工具同步
• 安装不存在的版本,自动触发同步
• web 页面点击同步按钮
遗留问题
• 发布的私有模块与公共模块冲突
• 无法准确知道模块由谁发布
• NPM@2 客户端工具支持带有命名空间
• CNPM registry 增加了命名空间支持
• 所有的私有模块只允许发布到指定命名空间
• CNPM 支持接入自定义用户系统
• npm 的请求可以接入企业内部用户系统
• npm adduser 实名认证
CNPM v1
full sync CNPM
NPM
您可能关注的文档
最近下载
- 胰岛素抵抗和代谢综合征课件.pptx VIP
- 胰岛素抵抗和代谢综合征.ppt VIP
- GB/T 17747.1-2011_天然气压缩因子的计算 第1部分:导论和指南.pdf
- 《基础护理学》第7章 休息与活动(含答案).docx
- 城市中心区综合性公园使用现状调查研究————以成都市人民公园为例.docx
- 产品档案管理制度及流程.pdf
- 中华民族一家亲,同心共筑中国梦.pptx VIP
- “社工+志愿者”联动模式的思考及对策研究--以惠州市河背社区志愿者项目为例.docx
- 国家开放大学,地域文化,人文武隆形考一 (3).pptx VIP
- (黑龙江省)新课标高中信息技术会考试题 学科整合 试题及答案..doc VIP
文档评论(0)