天天看點

influxdb記憶體過大和占用過多端口

1、influxdb占用記憶體過多

主要是索引方式導緻的,直接使用tsi1即可,如下配置可解決此問題

## 禁用向官方報告
    reporting-disabled = true
    [meta]
      dir = "/var/lib/influxdb/meta"
    [data]
      dir = "/var/lib/influxdb/data"
      ## 設定索引版本
      index-version = "tsi1"
      engine = "tsm1"
      trace-logging-enabled = false
      wal-dir = "/var/lib/influxdb/wal"
    [monitor]
      store-enabled = false
    [http]
      flux-enabled = true
      log-enabled = false
           

2、通過用戶端“github.com/influxdata/influxdb/client/v2”通路服務端會導緻服務端端口占用過多

這個主要是每次調用後服務端連結會進入wati_timeout狀态而不是直接關閉,是以時間長後會導緻無法通路服務端。此時在client.go中添加3行代碼,如下所示

tr := &http.Transport{
		TLSClientConfig: &tls.Config{
			InsecureSkipVerify: conf.InsecureSkipVerify,
		},
		Proxy:               conf.Proxy,
		DialContext:         conf.DialContext,
		IdleConnTimeout:     conf.IdleConnTimeout,	// 設定空閑連結逾時
		MaxIdleConns:        conf.MaxIdleConns,		// 設定最大idle連接配接數
		MaxIdleConnsPerHost: conf.MaxIdleConnsPerHost,// 設定最大idle連接配接數
	}