diff --git a/src/create-queues.js b/src/create-queues.js
index 6347c6b0c8ca28269f9cbe597c78050bef698b49..db0df82d78391a1dc9dd219030d1e50ce5099e11 100644
--- a/src/create-queues.js
+++ b/src/create-queues.js
@@ -12,8 +12,10 @@ export default function createQueues () {
       repeat: { every: Number(process.env.CACHE_TTL) },
       removeOnComplete: true
     })
-  }
 
-  // not a queue but though, used by redis
-  registerLatestVersionListener(subClient)
+    // not a queue but though, used by redis
+    registerLatestVersionListener(subClient)
+  } else {
+    setInterval(updateVersionProcessor, Number(process.env.CACHE_TTL))
+  }
 }
diff --git a/src/version.js b/src/version.js
index 4c8223008f39e5c76a7c7b02e20619ba0a8f50a3..652877ccfd3bb67d48969da07e8cf8089e7e825b 100644
--- a/src/version.js
+++ b/src/version.js
@@ -56,8 +56,6 @@ export function registerLatestVersionListener (client) {
     client.on('message', (channel, message) => {
       if (channel === key) latestVersion = message
     })
-  } else {
-    setInterval(updateVersionProcessor, Number(process.env.CACHE_TTL))
   }
 }
 
@@ -67,7 +65,9 @@ export async function updateVersionProcessor () {
     fetchLatestVersion()
   ])
   if (storedVersion === fetchedVersion) return fetchedVersion
-  redis.pubClient.publish(getRedisKey({ name: 'updateLatestVersion' }), fetchedVersion)
-  await redis.client.set(getRedisKey({ name: 'latestVersion' }), fetchedVersion)
+  if (redis.isEnabled()) {
+    redis.pubClient.publish(getRedisKey({ name: 'updateLatestVersion' }), fetchedVersion)
+    await redis.client.set(getRedisKey({ name: 'latestVersion' }), fetchedVersion)
+  }
   return fetchedVersion
 }