每次连接WebSocket客户端时,WebSocket API(API网关)都会连接到Redis(群集)

每次连接WebSocket客户端时,WebSocket API(API网关)都会连接到Redis(群集),websocket,redis,aws-api-gateway,Websocket,Redis,Aws Api Gateway,我正在使用API网关(WebSocket API)和Redis(Elasticache)开发聊天服务器 我有一些问题 当这么多客户端尝试连接到API网关(WebSocket API)时,API网关(WebSocket API)是否安全 如果好的话,如果我使用lambda函数,我如何共享Redis客户端实例对象所有WebSocket API路由键。 我的意思是,我只想初始化一次Redis(cluster)客户机实例,以便共享这个Redis集群实例的所有连接 像这样: const Redis = r

我正在使用API网关(WebSocket API)和Redis(Elasticache)开发聊天服务器

我有一些问题

  • 当这么多客户端尝试连接到API网关(WebSocket API)时,API网关(WebSocket API)是否安全
  • 如果好的话,如果我使用lambda函数,我如何共享Redis客户端实例对象所有WebSocket API路由键。 我的意思是,我只想初始化一次Redis(cluster)客户机实例,以便共享这个Redis集群实例的所有连接
  • 像这样:

    const Redis = require('ioredis');
    var cluster = new Redis.Cluster([
        {
            port: 6379,
            host: <my-elasticache-host>
        }
    ]);
    
    const Redis=require('ioredis');
    var cluster=新的Redis.cluster([
    {
    港口:6379,
    主持人:
    }
    ]);
    
    此时此刻,我想使用“集群”实例来路由所有密钥($connect、$disconnect和我的自定义操作)。但我每次都创建一个名为$connect time的。 我假设此问题将发生与问题相关的Redis连接限制(65000)

  • 如何在lambda函数之间的每个连接上共享一些变量。 我正在使用Redis客户端来使用Redis发布/订阅。因此,当客户端连接到WebSocket时,我正在创建Redis客户端实例。如果没有,我将在每次WebSocket收到消息时创建Redis客户端实例
  • 我在等你的小费