在x个实例上并行执行任务

我需要执行一个数据集处理任务。 这是一个简单的PHP脚本来预热memcached机器。 数据集包含密钥(约2400万)

如果我要从一台机器上执行热身脚本,则需要将近三天才能完成。 但是如果我要“分裂”并运行6个不同的过程,那将需要我一天的时间。

如果我知道我的networking中的所有其他机器的IP地址,并有ssh访问,是否有一种方法来并行这个任务?

看看pssh , cluster ssh ,…

  1. 设置ssh公钥authentication
  2. 创build你的机器的列表:

    ip1:port1 user1 ip2:port2 user2 ip3:port3 user3 
  3. 将脚本分发到所有服务器并进行并行化:

     $ pssh -h <host_file> -P /path/to/php/script