Socket.io redis如何存储和清除数据

时间:2015-06-22 11:07:23

标签: redis socket.io socket.io-redis

我正在使用socket.io在heroku上托管一个应用程序。它使用套接字,我使用的是heroku 4标准1X dynos。所以为此我使用了redistogo服务和socket.io-redis插件。它工作得很好,但我想知道socket.io-redis在套接字断开时也会清除redis db中的数据。 Heroku redis goto服务仅提供20MB数据存储。 。请指导socket.io-redis如何在redis数据库中插入和清除数据。

2 个答案:

答案 0 :(得分:1)

假设您指的是https://github.com/Automattic/socket.io-redis/blob/master/index.js,该插件似乎使用了Redis' PubSub功能。 PubSub不会在Redis数据库中维护状态,因此无需清除任何数据。

答案 1 :(得分:0)

会话存储负责在套接字断开连接时清理会话。我在会话存储区中使用https://github.com/tj/connect-redis

以下是断开连接后正确清理套接字连接的示例。

 //manifest file
    {
      "name": "MyExtension",
      "version": "1",
      "browser_action": {
        "default_icon": "icon.png"
      },
      "background": {
        "scripts": [ "background.js" ]
      },
      "permissions": ["tabs"],
      "manifest_version": 2
    } 



//background script
 background.js

chrome.browserAction.onClicked.addListener(function(activeTab){
  chrome.tabs.create({'url':"chrome://newtab" });
});