This commit is contained in:
		
						commit
						e7dc3c73e3
					
				
							
								
								
									
										24
									
								
								dip.go
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								dip.go
									
									
									
									
									
								
							@ -75,35 +75,33 @@ func (group *DIPGroup) Choose(addr string) {
 | 
			
		||||
		} else {
 | 
			
		||||
 | 
			
		||||
			i := 0
 | 
			
		||||
			for ; i < 3; i++ {
 | 
			
		||||
			for ; i < 2; i++ {
 | 
			
		||||
 | 
			
		||||
				imokURL := "http://" + dhost.Host + ":8800/pppoe/imok"
 | 
			
		||||
				if _, err := requests.NewSession().Get(imokURL).Execute(); err != nil {
 | 
			
		||||
				ses := requests.NewSession()
 | 
			
		||||
				ses.SetConfig(requests.CRequestTimeout, 4)
 | 
			
		||||
 | 
			
		||||
				if _, err := ses.Get(imokURL).Execute(); err != nil {
 | 
			
		||||
					log.Println(err)
 | 
			
		||||
 | 
			
		||||
					if i == 2 {
 | 
			
		||||
						// 下个需要切换的DHost错误
 | 
			
		||||
						group.Current.ActiveTime = now + 15
 | 
			
		||||
						delete(group.Ready, ip)
 | 
			
		||||
						return // 不执行下面的 切换操作 for ip, dhost := range group.Ready
 | 
			
		||||
					}
 | 
			
		||||
				} else { // 如果ping 通下个切换的主机就切换
 | 
			
		||||
 | 
			
		||||
					for ii := 0; ii < 3; ii++ {
 | 
			
		||||
						restartURL := "http://" + group.Current.Host + ":8800/pppoe/restart"
 | 
			
		||||
						if _, err := requests.NewSession().Get(restartURL).Execute(); err != nil {
 | 
			
		||||
						if _, err := ses.Get(restartURL).Execute(); err != nil {
 | 
			
		||||
							log.Println(err)
 | 
			
		||||
						} else {
 | 
			
		||||
							break // 可以切换 ii := 0; ii < 3; ii++
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
 | 
			
		||||
					break //  for ; i < 3; i++ {
 | 
			
		||||
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
			if i == 3 {
 | 
			
		||||
				// 下个需要切换的DHost错误
 | 
			
		||||
				delete(group.Ready, ip)
 | 
			
		||||
				continue // 不执行下面的 切换操作 for ip, dhost := range group.Ready
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		group.Current = dhost
 | 
			
		||||
 | 
			
		||||
@ -201,7 +201,6 @@ func (swi *Switch) switchActives(w http.ResponseWriter, req *http.Request) {
 | 
			
		||||
	for addr, group := range swi.Worker.ForLoop {
 | 
			
		||||
 | 
			
		||||
		addrmap := make(map[string]interface{})
 | 
			
		||||
		content[addr] = addrmap
 | 
			
		||||
 | 
			
		||||
		isappend := int64(0)
 | 
			
		||||
		var hosts []string
 | 
			
		||||
@ -212,6 +211,7 @@ func (swi *Switch) switchActives(w http.ResponseWriter, req *http.Request) {
 | 
			
		||||
			hosts = append(hosts, dhost.Host)
 | 
			
		||||
		}
 | 
			
		||||
		if isappend > 1 {
 | 
			
		||||
			content[addr] = addrmap
 | 
			
		||||
			addrmap["group"] = hosts
 | 
			
		||||
			addrmap["city"] = group.City
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user