我有多个应用正在运行。每个实例都有用户在各个实例之间相互聊天。我需要显示用户是否已脱机。如果实例崩溃,那将不会发生。当实例仍然存在时,我可以通过该套接字的websocket丢失连接事件,并通知其他实例。但是,如果应用程序实例崩溃,那将不会发生。
答案 0 :(得分:1)
您可以使用CLIENT LIST
实现目标。该命令列出所有连接到Redis的客户端的信息。以下是CLIENT LIST
显示的客户信息示例:
id=87 addr=127.0.0.1:63950 fd=10 name= age=3 idle=3 flags=P db=0 sub=3 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=subscribe
CLIENT LIST
命令的结果中获取其 addr 。为了找出剩下的订户,您可以定期调用CLIENT LIST
命令并检查每个连接客户端的信息。