MastodonのRedisの使い方めっちゃ新鮮なので興味深い
たとえばタイムラインの取得に zrevrangebyscore というのが使われているんだけど、これ普通だとランキングとかに使うやつっぽいのね。
tootのidが点数になってて上位のtootを降順で取得みたいなことになっている。わけがわからない。
あとは当然streamingAPI用にpublish/subscribeが使われていたりとかですね。
Redis KVSじゃない他の何かなのではとか思う。
@ck Memcachedっぽい何かかなーって予断があったからめっちゃカルチャーショックある。
@Clworld さっきのBRPOPとか、それをもうちょっと拡張したBRPOPLPUSHとか君いったい何者っていうコマンドがたくさん
@ck https://redis.io/commands コマンドありすぎてなんか良く分からないです感はありますね。
@Clworld 仕事柄地図とかの座標系扱うこと多いんですけど、RedisのGeo系コマンド(緯度経度と付随情報を突っ込んで、あとで特定の緯度経度から近い順に表示するとか)の実装がちょっと面白くて好きだったり。
@ck Geoあるのまじで
@ck ほんとだ…まじか…Redisお前なんなん…
@Clworld 言うてもlatlngと付随情報をリストにpushしていって、特定latlngから近い順にx件取り出す、とかそんな感じですけどね。これも中身の実装がgeohashをidとして用いてsortしたりしてる感じだったはず
@Clworld RedisはKVSとしてよりも、PubSubやキューとして使うほうが実用度高いきがする