mirror of
https://github.com/statbate/shiny-potato.git
synced 2026-08-11 03:12:42 +00:00
update
This commit is contained in:
parent
e5a0cb01f9
commit
9df4cb21b3
3 changed files with 39 additions and 36 deletions
|
|
@ -93,8 +93,8 @@ func initClickhouse() {
|
|||
|
||||
func socketHandler() {
|
||||
|
||||
var(
|
||||
err error
|
||||
var (
|
||||
err error
|
||||
conn net.Conn
|
||||
)
|
||||
|
||||
|
|
|
|||
32
app/save.go
32
app/save.go
|
|
@ -69,11 +69,24 @@ func saveDB() {
|
|||
index := make(map[string]int64)
|
||||
|
||||
ticker := time.NewTicker(10 * time.Second)
|
||||
defer ticker.Stop()
|
||||
|
||||
cleanCache := time.NewTicker(12 * time.Hour)
|
||||
defer cleanCache.Stop()
|
||||
|
||||
index = map[string]int64{"hours": int64(hours), "tokens": getSumTokens(), "last": time.Now().Unix()}
|
||||
|
||||
for {
|
||||
select {
|
||||
case <-cleanCache.C:
|
||||
l := len(data)
|
||||
now := time.Now().Unix()
|
||||
for k, v := range data {
|
||||
if now > v.Last+60*60*48 {
|
||||
delete(data, k)
|
||||
}
|
||||
}
|
||||
fmt.Println("Clean map:", l, "=>", len(data))
|
||||
case <-ticker.C:
|
||||
if len(bulk) > 0 {
|
||||
tx, err := Mysql.Begin()
|
||||
|
|
@ -156,27 +169,17 @@ func saveDB() {
|
|||
if minutes >= 5 && now > index["last"]+30 {
|
||||
seconds += minutes * 60
|
||||
msg, err := json.Marshal(struct {
|
||||
Chanel string `json:"chanel"`
|
||||
Index float64 `json:"index"`
|
||||
Chanel string `json:"chanel"`
|
||||
Index float64 `json:"index"`
|
||||
}{
|
||||
Chanel: "stripchat",
|
||||
Index: float64(index["tokens"]) / float64(seconds) * 3600 * 0.05 / 1000,
|
||||
Chanel: "stripchat",
|
||||
Index: float64(index["tokens"]) / float64(seconds) * 3600 * 0.05 / 1000,
|
||||
})
|
||||
if err == nil {
|
||||
socketServer <- msg
|
||||
}
|
||||
index["last"] = now
|
||||
}
|
||||
|
||||
if randInt(0, 10000) == 777 { // 0.001%
|
||||
l := len(data)
|
||||
for k, v := range data {
|
||||
if now > v.Last+60*60*48 {
|
||||
delete(data, k)
|
||||
}
|
||||
}
|
||||
fmt.Println("Clean map:", l, "=>", len(data))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -184,6 +187,7 @@ func saveDB() {
|
|||
func saveLogs() {
|
||||
bulk := []saveLog{}
|
||||
ticker := time.NewTicker(10 * time.Second)
|
||||
defer ticker.Stop()
|
||||
for {
|
||||
select {
|
||||
case <-ticker.C:
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@ import (
|
|||
"bytes"
|
||||
"fmt"
|
||||
"github.com/gorilla/websocket"
|
||||
"os/exec"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"os/exec"
|
||||
"regexp"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
|
@ -108,11 +108,11 @@ func announceCount() {
|
|||
rooms.Count <- 0
|
||||
l := <-rooms.Count
|
||||
msg, err := json.Marshal(struct {
|
||||
Chanel string `json:"chanel"`
|
||||
Count int `json:"count"`
|
||||
Chanel string `json:"chanel"`
|
||||
Count int `json:"count"`
|
||||
}{
|
||||
Chanel: "stripchat",
|
||||
Count: l,
|
||||
Chanel: "stripchat",
|
||||
Count: l,
|
||||
})
|
||||
if err == nil {
|
||||
socketServer <- msg
|
||||
|
|
@ -123,15 +123,14 @@ func announceCount() {
|
|||
func getToken(room string) string {
|
||||
|
||||
cmd := exec.Command("/home/stat/python/test.py", "https://stripchat.com/api/front/v2/config/data?requestPath="+room)
|
||||
stdout, err := cmd.Output()
|
||||
stdout, err := cmd.Output()
|
||||
|
||||
if err != nil {
|
||||
fmt.Println(err.Error())
|
||||
return "cant exec py"
|
||||
}
|
||||
if err != nil {
|
||||
fmt.Println(err.Error())
|
||||
return "cant exec py"
|
||||
}
|
||||
|
||||
|
||||
//fmt.Println(string(stdout))
|
||||
//fmt.Println(string(stdout))
|
||||
|
||||
re := regexp.MustCompile(`"websocketUrl":"*(.*?)\s*"`)
|
||||
m := re.FindSubmatch(stdout)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue