您可以使用 AWS API Gateway 和 AWS Lambda 来处理 WebSocket 连接。 如果 Lambda 函数的执行时间超过 10 秒,则最好使用 WebSockets 的永久连接。 在处理永久连接时,您可能会遇到消息队列问题。 有时如果从前端接收的消息太快,那么 Lambda 函数在处理消息时可能会遇到延迟。 在这种情况下,可以使用以下代码示例,使 Lambda 忽略当前的消息并发送最后一个接收到的消息:
exports.handler = async (event, context) => { const lastMessage = event.requestContext.lastMessage; console.log('Last Message Received:', lastMessage);
// process the message received here
return { statusCode: 200, body: JSON.stringify({ action: 'sendmessage', data: lastMessage }) }; };