ケナーボンの要約声明から始める:
「PyPI にミラーが必要な主な理由は、ミラーがあるからだと思われます。」
これを少し変更します。
それは、PyPI が実際に動作する方法である可能性があり、したがってミラーリングする必要があるため、実際のトラフィックに追加のビット (または 2 つ :-) を与える可能性があります。
現時点では、リポジトリで何を更新するかを知るために、メイン インデックスを操作する必要があると思います。パブリックにアクセス可能なフォルダー階層のタイムスタンプを介して、状態に簡単にアクセスできるわけではありません。したがって、悪い点は、rsync が方程式から外れていることです。良いことは、JSON、OAuth、XML-RPC、または HTTP インターフェイスを介してインデックスと通信できることです。
XML-RPC の場合:
$> python
>>> import xmlrpclib
>>> import pprint
>>> client = xmlrpclib.ServerProxy('http://pypi.python.org/pypi')
>>> client.package_releases('PartitionSets')
['0.1.1']
JSON の例:
$> curl https://pypi.python.org/pypi/PartitionSets/0.1.1/json
約ある場合。30.000 個のパッケージがホストされ [ 1 ]、一部は週に 50.000 ~ 300.000 回ダウンロードされます [ 2 ] (distribute、pip、requests、paramiko、lxml、boto、paramike、redis など)。少なくともアクセシビリティの観点からは、ミラーが本当に必要です。pip install NeedThisPackage
失敗したときにユーザーが何をするか想像してみてください。また、会社全体の PyPI ミラーは、他の方法ではルーティングできないネットワークのプロキシとして機能するのが非常に一般的です。最後に、virtualenv と友人によって有効になった素晴らしいマルチ バージョン チェックを忘れないでください。これらはすべて、IMO の正当なパッケージの潜在的に素晴らしい用途です ...
結局のところ、エージェントがダウンロードしたパッケージで実際に何をするかはわかりません。N 人のユーザーに実際にそれを使用させるか、次回は単に上書きさせるか...そして結局のところ、パッケージの作成者は使用の数と性質にもっと注意を払う必要があります。潜在的なユーザーの純粋な数;-)
参照: ゲストの数値は、https ://pypi.python.org/pypi (29303 パッケージ) およびhttp://pypi-ranking.info/week (週ごとの数値については、2013-03-23 を要求) からのものです。