C#实现Nginx平滑加权轮询算法
本文实例为大家分享了C#实现Nginx平滑加权轮询算法的具体代码,供大家参考,具体内容如下
代码很简单,算法很经典!
1.定义实体类
publicstructServerConfig { //初始权重 publicintWeight{get;set;} //当前权重 publicintCurrent{get;set;} //服务名称 publicstringName{get;set;} }
2.算法
publicstaticintNextServerIndex(ServerConfig[]serverConfigArray) { intindex=-1; inttotal=0; intsize=serverConfigArray.Count(); for(inti=0;i3.调用
staticvoidMain(string[]args) { varsv=newServerConfig[]{ newServerConfig{Name="A",Weight=4}, newServerConfig{Name="B",Weight=2}, newServerConfig{Name="C",Weight=1} }; intindex=0; intsum=sv.Sum(m=>m.Weight); for(inti=0;i以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。