Redis
 sql >> डेटाबेस >  >> NoSQL >> Redis

रेडिस कनेक्शन/बफर-आकार की सीमा पार हो गई

मैं सर्विसस्टैक का उपयोग करके बफर आकार की सीमा को पार करने के समान मुद्दे को डुप्लिकेट करने में सक्षम था। तनाव परीक्षण करने के लिए कोड यहां है - कम से कम 20 मिनट के लिए आवेदन के 20 उदाहरण चलाएं। https://github.com/ServiceStack/ServiceStack.Redis/commit/b01582f9c873f375794c04d46aad400590ca5bf3

पहली त्रुटि जो आप देख सकते हैं वह है "रेडिस इंस्टेंस से कनेक्ट नहीं हो सका" जैसा कि रेडिस द्वारा वर्णित है जो व्यस्त लोड में कनेक्ट करने में असमर्थ है, लेकिन यदि आप आंतरिक अपवाद का विस्तार करते हैं तो आप देखते हैं "सॉकेट पर एक ऑपरेशन नहीं किया जा सका क्योंकि सिस्टम में पर्याप्त बफर की कमी थी स्थान या क्यूंकि एक कतार भरी हुई थी"

मेरी समस्या विंडो 7 पर हुई, लेकिन विंडो सर्वर 2008 आरसी पर नहीं। तो मैं यह देखना शुरू करता हूं कि यह ओएस समस्या थी या नहीं। सर्विसस्टैक पर डेमिस को ईमेल करने के बाद, यह निष्कर्ष निकाला गया कि सर्विसस्टैक सॉकेट्स को सही ढंग से बंद कर रहा था। OS को देखते हुए, समस्या TcpTimeWaitDelay और MaxUserPort को सेट करने के साथ ठीक की गई थी।

अधिक संदर्भ। TcpTimeWaitDelay to 45 सेकंड

और MaxUserPorthttp://mashijie.blogspot.com/2009/05/change-default-setting-of-tcp-ports.html

मैंने पोर्ट रेंज को 1025-64511

. में समायोजित किया


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Azure Redis सत्र स्थिति त्रुटि समयबाह्य EVAL प्रदर्शन कर रहा है, inst:1, क्यू:2

  2. Azure Redis कैश के साथ सत्र राज्य कई उदाहरणों पर काम नहीं कर रहा है

  3. नोड जेएस रेडिस क्लाइंट कनेक्शन पुनः प्रयास करें

  4. मैं चाबियाँ कैसे निकालूं?

  5. मैसकल, रेडिस और मोंगो में एक वितरित लेनदेन को कैसे कार्यान्वित करें