而既然有统一的 build system,一旦发现某个集群节点需要执行的程序所依赖的某个模块变化了,同步这个模块(例如一个 .so 或者 .jar 文件)到此节点既可。完全不需要先打包再同步。...], deps=["B", "C"], ...)
python_library(name="B", srcs=["B.py"], deps=["D"], ...)
python_library(name...但是如果 A.py 更新了,我们没法识别老的 A.py 并且替换为新的,而是得重新解压所有 .tar.gz 文件,得到一个新的文件夹。而重新解压所有的{B,C,D,E,F}.tar.gz很慢。...如果要在某个集群节点上启动 container,则需要把”包“传输到此节点上,除非这个节点曾经运行过这个程序,已经有包的 cache。...Python 语言本身没有 jar 包,所以 Blaze 和 Bazel 发明了 PAR 文件格式(英语叫 subpar),相当于为 Python 设计了一个 jar。开源实现在这里。