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

रेडिस - एक्सपायर्ड इंडेक्स डिलीट नहीं होते हैं

मैं :phantom की चाबियों को हटाने का समाधान ढूंढ सकता हूं और :idx

रेडिस कॉन्फ़िगरेशन क्लास में, निम्नलिखित को रखा जाना चाहिए:

@Configuration
@EnableRedisRepositories(enableKeyspaceEvents = EnableKeyspaceEvents.ON_STARTUP, basePackages = {
    "com.aaaaa.bbbbb.persistence.model.repository" }, keyspaceNotificationsConfigParameter = "")

जब आप "keyspaceNotificationsConfigParameter" एट्रिब्यूट को खाली स्ट्रिंग पर सेट करते हैं, तो CONFIG कमांड जो AWS Redis में काम नहीं करती है, निष्पादित नहीं होती है, लेकिन इस तरह, समाप्ति इवेंट लिसनर को इंस्टेंट किया जाता है।

यह विशेषता एक डिफ़ॉल्ट मान (Ex) लाती है, जो CONFIG कमांड को निष्पादित करने का कारण बनती है।

यह निम्न स्प्रिंग कोड द्वारा होता है:

public void init() {
    if (StringUtils.hasText(keyspaceNotificationsConfigParameter)) {
        RedisConnection connection = listenerContainer.getConnectionFactory().getConnection();

        try {
            Properties config = connection.getConfig("notify-keyspace-events");

            if (!StringUtils.hasText(config.getProperty("notify-keyspace-events"))) {
                connection.setConfig("notify-keyspace-events", keyspaceNotificationsConfigParameter);
            }

        } finally {
            connection.close();
        }
    }
    doRegister(listenerContainer);
}

यह शर्त कैसे पूरी नहीं होती है

if (StringUtils.hasText(keyspaceNotificationsConfigParameter)) {

CONFIG कमांड निष्पादित नहीं होता है।

मुझे लगता है कि खाली स्ट्रिंग वाली विशेषता सेट करने के आधार पर स्प्रिंग को इसमें सुधार करना चाहिए, न कि उस प्रवाह को बनाना चाहिए।

केवल एक चीज जिसकी भी जरूरत है वह यह है कि AWS ElastiCache (Redis) में एक मान "सूचना-कीस्पेस-ईवेंट" पैरामीटर पर सेट होता है, जैसे कि AKE, जिसका अर्थ है कि सभी घटनाओं को अधिसूचित किया जाएगा।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. रेडिस कनेक्ट ECONNREFUSED 127.0.0.1:6379

  2. रेडिस टेम्पलेट का उपयोग करके रेडिस से सभी कुंजी कैसे प्राप्त करें

  3. रेडिस लुआ वास्तव में इसका उपयोग कब करें?

  4. रेडिस में पाइपलाइन का उपयोग करते समय 100,000 रिकॉर्ड के साथ इतना धीमा क्यों है?

  5. रेडिस - कस्टम रूपांतरण कैसे कॉन्फ़िगर करें