goproxy是使用golang实现的一个基本的负载均衡服务器,支持缓存(使用redis);反向代理,目前支持6种模式:
随机分发;
IP HASH两种模式;
轮询(Round Robin)法;
加权轮询(Weight Round Robin)法;
Power of Two Choices (P2C)算法;
边界一致性哈希算法(Consistent Hashing with Bounded Loads)。
另外,对转发的请求有较大的控制度,可以控制代理特定的请求,屏蔽特定的请求,甚至可以重写特定的请求。 另外,有时候项目需要用到第三方的服务并对返回的数据进行自定义修改,调用第三方的API,利用proxy server可以很容易的控制第三方API返回的数据并进行自定义修改。