2015-10-29 16 views
6

पर विफलता क्या है, मैं वसंत और वसंत सुरक्षा का उपयोग कर रहा हूं और RedisHttpSessionConfiguration के साथ वसंत-सत्र-डेटा-रेडिज़ का उपयोग करना चाहता हूं ताकि लाल रंग पर सत्र आईडी संग्रहीत कर सकें (इसलिए ग्राहक अपने सत्रों को खो नहीं सकते जब वेबपैप विफल हो जाता है और दूसरे सर्वर पर स्विच हो जाता है)।रेडिस पर वसंत सत्र - रेडिस

मेरा प्रश्न, क्या होता है जब रेडिस सर्वर डाउन हो जाता है? क्या रेडिस बैक अप होने तक स्मृति में सत्र संग्रहीत करके काम जारी रखेगा? क्या इसे इस तरह कॉन्फ़िगर करने का कोई तरीका है?

मैं एडब्ल्यूएस एलिस्टी कैश पर रेडिस का उपयोग कर रहा हूं, और Failover को DNS पर प्रतिस्थापन प्राथमिक नोड कॉन्फ़िगर करने से पहले कई मिनट लग सकते हैं।

+0

तो उत्तर नहीं है। यदि रेडिस नीचे चला जाता है तो वसंत-सेशन-डेटा-रेडिस विफल रहता है और अपवाद फेंकता है। क्या किसी को एक कार्यान्वयन के बारे में पता है जो नहीं करता है? स्मृति मानचित्र में शायद बैकअप डेटा के साथ? – Berethor

+0

मैं वही सोच रहा था। इस पर कोई खबर, कृपया अद्यतन करें। –

उत्तर

0

जहाँ तक मैं देख सकता हूं, आपको CacheErrorHandler (javadoc) का कार्यान्वयन प्रदान करने की आवश्यकता होगी।

आप Configuration उदाहरण प्रदान करके ऐसा कर सकते हैं, जो CachingConfigurer लागू करता है, और errorHandler() विधि को ओवरराइड करता है।

उदाहरण के लिए:

@Configuration 
@Ena1bleCaching 
public class MyApp extends SpringBootServletInitializer implements CachingConfigurer { 

    @Override 
    public CacheErrorHandler errorHandler() { 

    return MyAppCacheErrorHandler(); 
    } 

} 

वास्तव में कैसे आप तो निर्बाध सेवा प्रदान करेगा मेरे लिए स्पष्ट नहीं है - अपने विफलता कैश में वर्तमान सत्र को डुप्लिकेट के बिना, यह असंभव लगता है।

यदि आप लोचदार कैश का उपयोग कर रहे हैं, तो क्या एडब्ल्यूएस आपके लिए एक प्रतिकृति सेटअप को संभालना संभव नहीं है, ताकि अगर कोई नोड चला जाता है, तो दूसरा ले जा सकता है?