如何统计reids内的特定key

WBOY
Freigeben: 2016-06-06 20:49:50
Original
1659 Leute haben es durchsucht

是这样,项目的在线好友是用redis的set做的,在每个用户登录的时候

<code>set user_123466 时间戳 60*5  //user_用户id
</code>
Nach dem Login kopieren
Nach dem Login kopieren

这样里面有很多user_*的数据,现在要统计在线人数,怎么查找呢?
当前库还有许多其他信息,所以不能用dbsize,
info里面的key数量也不能用.

回复内容:

是这样,项目的在线好友是用redis的set做的,在每个用户登录的时候

<code>set user_123466 时间戳 60*5  //user_用户id
</code>
Nach dem Login kopieren
Nach dem Login kopieren

这样里面有很多user_*的数据,现在要统计在线人数,怎么查找呢?
当前库还有许多其他信息,所以不能用dbsize,
info里面的key数量也不能用.

redis的keys命令可以满足你的查询要求。

http://redis.io/commands/keys

<code>redis> MSET one 1 two 2 three 3 four 4
OK
redis> KEYS *o*
1) "one"
2) "two"
3) "four"
redis> KEYS t??
1) "two"
redis> KEYS *
1) "one"
2) "two"
3) "three"
4) "four"
redis> 
</code>
Nach dem Login kopieren

20w数据测试,
在cli模式keys *用时11秒,
在php里面用时0.2秒, 0.0

<code>$re = $redis->keys('*');    
dump(count($re));
</code>
Nach dem Login kopieren

可能php扩展里面做了些什么

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage