让主管通过http_proxy列表运行

时间:2016-02-18 17:33:01

标签: go supervisord

我目前有一个golang程序,我有一个像这样的超级配置文件

[program:yout_go]
command = /bin/sh -c 'http_proxy=user:password@123.123.123.123 /home/www/program -env prod'
directory = /home/www/
enviroment=PATH='/home/www/env/bin:/usr/bin'
user = user
autorestart = true
stderr_logfile = /var/log/program/err.log
stdout_logfile = /var/log/program/out.log

目前我通过1个代理运行它,但我想让它运行更多代理。

我有什么方法可以做到这一点?例如从代理列表中提取http_proxy或者我是否必须通过它来运行goprogram?

1 个答案:

答案 0 :(得分:2)

Go http包使用HTTP_PROXYHTTPS_PROXYNO_PROXY环境变量,就像其他程序一样,并查找单个网址。

如果您想轮换多个代理,则需要向http.Transport提供自定义Proxy功能,而不是依赖默认http.ProxyFromEnvironment