活到老学到老  

记录遇到问题的点点滴滴。

Composer 国内全量镜像

7年前发布  · 1461 次阅读
  Composer 

Composer 网络机制

当我们使用 Composer 来安装插件的时候, Composer 发起的请求可以分为以下两种:

  1. 解析 package 依赖, 跟 packagist.org 连接, 利用 packagist 上所有 package 的数据库, 解析代码依赖;
  2. 下载安装包, 针对单个 package 对应的 cvs 地址 ( 大部分为 github ) , 下载对应版本的代码;

comproxy.cn ( 解析 package 依赖的 proxy )

使用的是 Composer Proxy 项目搭建, 实现原理是在访问 packagist.org 的中间加了个 proxy, 缓存了 json 文件, 下图有助于理解:

上图的请求, 是在执行了命令 composer install 后发起的, 可以分为两部分

  • 前一部分是 proxy 过的, 解析 package 信息的请求;
  • 后一部分是从 github 下载的代码的请求;

pkg.phpcomposer.com 全量镜像

使用 Toran 项目来构建, 原理是缓冲 解析 package 依赖安装包的下载 .

总结

可以看出, Toran 的缓存要比 Composer Proxy 更加彻底, 速度要快很多, 因为所有的请求都来自于国内的服务器.

 

方法二:翻墙解决速度慢

还有一种方式可以结合本网站提供的免费Shadowsocks

免费开通Shadowsocks 

Linux 终端下间接使用Socks5代理的几种方法(privoxy,tsocks,proxychains)