求解答 關於Redis 多個串連、何時關閉 的問題

來源:互聯網
上載者:User
關鍵字 php redis
剛接觸redis不久,看了網上的一些資料有很多地方還沒有搞明白,現在有兩個問題有點疑惑,希望大家能協助解答一下。

1.關於Redis多串連的問題。
(1)多串連是指:不同項目之間與Redis建立的串連? 還是 同一個項目可以與Redis建立多個連
接?
(2)在一個項目中需要儲存 使用者資訊、裝置資訊。 那麼用不用建立2個串連,一個用來儲存使用者資訊,一個用來儲存裝置資訊,還是只建立一個串連即可? 哪一種方式好呢? 現在我是只建立一個串連,儲存所有的資料。

2.關於Redis合適關閉的問題。
情境:Server與Client建立Socket長串連,Server收到Client的資料,先儲存到Redis裡面,最後在儲存到MySQL。
問題:
(1)那麼問題來了,我是每次往Redis裡面存資料都重新開啟,操作完後再關閉。還是一直開著就行,長時間的一直串連,不用關閉,只在程式異常或者退出時再關閉? 個人認為應該是一直保持著串連吧,因為要頻繁的IO,所以頻繁的串連、關閉不適合。
(2)合理的方式應該是何時關閉Redis串連呢?

回複內容:

剛接觸redis不久,看了網上的一些資料有很多地方還沒有搞明白,現在有兩個問題有點疑惑,希望大家能協助解答一下。

1.關於Redis多串連的問題。
(1)多串連是指:不同項目之間與Redis建立的串連? 還是 同一個項目可以與Redis建立多個連
接?
(2)在一個項目中需要儲存 使用者資訊、裝置資訊。 那麼用不用建立2個串連,一個用來儲存使用者資訊,一個用來儲存裝置資訊,還是只建立一個串連即可? 哪一種方式好呢? 現在我是只建立一個串連,儲存所有的資料。

2.關於Redis合適關閉的問題。
情境:Server與Client建立Socket長串連,Server收到Client的資料,先儲存到Redis裡面,最後在儲存到MySQL。
問題:
(1)那麼問題來了,我是每次往Redis裡面存資料都重新開啟,操作完後再關閉。還是一直開著就行,長時間的一直串連,不用關閉,只在程式異常或者退出時再關閉? 個人認為應該是一直保持著串連吧,因為要頻繁的IO,所以頻繁的串連、關閉不適合。
(2)合理的方式應該是何時關閉Redis串連呢?

我看你還有一個標籤是PHP,不知道你是不是在PHP下使用Redis的,如果是,我想上面的問題都不應該是你該考慮的問題,應該Redis擴充已經幫你設定好了最佳的解決方案。

逐個解決你說的問題:

  1. 多連結不是你提的兩種情況,而是指一個項目與一個Redis建立多個連結,應該伺服器大多是並發處理的,如果只開一個連結就會形成多個請求排隊等待連結的情況,所以目前都會才有多連結(串連池)的設計。

  2. 不要把每個連結綁定到實際需求中,這種算耦合。並且現在Redis庫設計時絕大多數都實現了串連池,你在使用時連結對你來說已經算是不可見的,你就沒必要再操這份心做幹下層驅動所乾的事情了。

  3. 正如你說的,最佳的方式是一直保持連結,也就是常說的長連結,而塊驅動也已經幫你寫好了,你所使用的預設就是長連結,所以並不需要再去處理何時關閉串連的問題了。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.