first add
This commit is contained in:
		
						commit
						31e2e597a8
					
				
							
								
								
									
										21
									
								
								go.mod
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								go.mod
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,21 @@
 | 
			
		||||
module github.com/phyer/siaga
 | 
			
		||||
 | 
			
		||||
go 1.21
 | 
			
		||||
 | 
			
		||||
require (
 | 
			
		||||
	github.com/bitly/go-simplejson v0.5.0
 | 
			
		||||
	github.com/go-redis/redis v6.15.9+incompatible
 | 
			
		||||
	github.com/sirupsen/logrus v1.8.1
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
require (
 | 
			
		||||
	github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869 // indirect
 | 
			
		||||
	github.com/kr/pretty v0.3.0 // indirect
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
require (
 | 
			
		||||
	github.com/onsi/ginkgo v1.16.5 // indirect
 | 
			
		||||
	github.com/onsi/gomega v1.18.1 // indirect
 | 
			
		||||
	github.com/stretchr/testify v1.5.1 // indirect
 | 
			
		||||
	golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e // indirect
 | 
			
		||||
)
 | 
			
		||||
							
								
								
									
										126
									
								
								main.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										126
									
								
								main.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,126 @@
 | 
			
		||||
package main
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"github.com/sirupsen/logrus"
 | 
			
		||||
	"phyer.click/sardine/core"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func main() {
 | 
			
		||||
	cr := core.Core{}
 | 
			
		||||
	cr.Init()
 | 
			
		||||
 | 
			
		||||
	remoteList, err := core.GetRemoteRedisConfigList()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		logrus.Panic("GetRemoteRedisConfigList err: ", err)
 | 
			
		||||
	}
 | 
			
		||||
	founded := false
 | 
			
		||||
	for k, v := range remoteList {
 | 
			
		||||
		cliOk := false
 | 
			
		||||
		cli, err := cr.GetRedisRemoteCli(v)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			logrus.Warning("GetRedisCli err: ", err)
 | 
			
		||||
		}
 | 
			
		||||
		pong, err := cli.Ping().Result()
 | 
			
		||||
		if pong == "PONG" && err == nil {
 | 
			
		||||
			cliOk = true
 | 
			
		||||
		} else {
 | 
			
		||||
			fmt.Println("redis", k, "状态不可用:", err)
 | 
			
		||||
		}
 | 
			
		||||
		if !cliOk {
 | 
			
		||||
			continue
 | 
			
		||||
		}
 | 
			
		||||
		fmt.Println("redis", k, "状态可用:", err)
 | 
			
		||||
		founded = true
 | 
			
		||||
		cr.RedisRemoteCli = cli
 | 
			
		||||
 | 
			
		||||
		allCandleAdd := core.ALLCANDLES_PUBLISH
 | 
			
		||||
		allMaXAdd := core.ALLMAX_PUBLISH
 | 
			
		||||
		ce := v.ChannelPreName
 | 
			
		||||
		if len(ce) > 0 {
 | 
			
		||||
			allCandleAdd = ce + "|" + allCandleAdd
 | 
			
		||||
			allMaXAdd = ce + "|" + allMaXAdd
 | 
			
		||||
		}
 | 
			
		||||
		// 目前只有phyer里部署的tunas会发布tickerInfo信息
 | 
			
		||||
		go func(vv *core.RedisConfig) {
 | 
			
		||||
			allowed := os.Getenv("SARDINE_ACCEPTTICKER") == "true"
 | 
			
		||||
			if !allowed {
 | 
			
		||||
				return
 | 
			
		||||
			}
 | 
			
		||||
			core.LoopSubscribe(&cr, core.TICKERINFO_PUBLISH, vv)
 | 
			
		||||
		}(v)
 | 
			
		||||
		time.Sleep(5 * time.Second)
 | 
			
		||||
		go func(vv *core.RedisConfig) {
 | 
			
		||||
			allowed := os.Getenv("SARDINE_ACCEPTCANDLE") == "true"
 | 
			
		||||
			if !allowed {
 | 
			
		||||
				return
 | 
			
		||||
			}
 | 
			
		||||
			core.LoopSubscribe(&cr, allCandleAdd, vv)
 | 
			
		||||
		}(v)
 | 
			
		||||
		go func(vv *core.RedisConfig) {
 | 
			
		||||
			allowed := os.Getenv("SARDINE_ACCEPTMAX") == "true"
 | 
			
		||||
			if !allowed {
 | 
			
		||||
				return
 | 
			
		||||
			}
 | 
			
		||||
			core.LoopSubscribe(&cr, allMaXAdd, vv)
 | 
			
		||||
		}(v)
 | 
			
		||||
		go func(vv *core.RedisConfig) {
 | 
			
		||||
			allowed := os.Getenv("SARDINE_ACCEPTSERIES") == "true"
 | 
			
		||||
			if !allowed {
 | 
			
		||||
				return
 | 
			
		||||
			}
 | 
			
		||||
			core.LoopSubscribe(&cr, core.ALLSERIESINFO_PUBLISH, vv)
 | 
			
		||||
		}(v)
 | 
			
		||||
		//----------------------
 | 
			
		||||
		go func(vv *core.RedisConfig) {
 | 
			
		||||
			// core.(&cr, core.ALLSERIESINFO_PUBLISH, vv)
 | 
			
		||||
			core.InvokeRestQueue(&cr, vv)
 | 
			
		||||
		}(v)
 | 
			
		||||
		break
 | 
			
		||||
	}
 | 
			
		||||
	if !founded {
 | 
			
		||||
		logrus.Panic("no remote redis connected")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.LoopMakeMaX(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.LoopCheckRemoteRedis(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.CandlesProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.MaXsProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.TickerInfoProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.CoasterProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.SeriesProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.SegmentItemProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.ShearForceProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
	go func() {
 | 
			
		||||
		core.WriteLogProcess(&cr)
 | 
			
		||||
	}()
 | 
			
		||||
 | 
			
		||||
	// ip := "0.0.0.0:6061"
 | 
			
		||||
	// if err := http.ListenAndServe(ip, nil); err != nil {
 | 
			
		||||
	// }
 | 
			
		||||
	// allMaxs: {1634413398759-0 map[ma7|candle5m|LUNA-USDT|key:{"ts":1634412300000,"value":36.906796182686605}]}
 | 
			
		||||
	// allCandles: {1634413398859-0 map[candle2H|XRP-USDT|key:{"channel":"candle2H","data":"eyJjIjoxLjExNzk1LCJmcm9tIjoicmVzdCIsImgiOjEuMTIyNzksImwiOjEuMTA4ODUsIm8iOjEuMTE3MzUsInRzIjoxNjM0MjkyMDAwMDAwLCJ2b2wiOjUwMDc5OTEuNDM5MDg1LCJ2b2xDY3kiOjU1OTE2MjUuNzI4NDc2fQ==","instId":"XRP-USDT"}]}
 | 
			
		||||
 | 
			
		||||
	time.Sleep(1000000 * time.Hour)
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user