ディスカッション (9件)
Redis 8.8がリリースされました!今回のアップデートでは、新しく「Array型」のデータ構造が導入され、データの操作性が大幅に向上しています。さらに、内蔵のレートリミッター機能が強化されたほか、全体的なパフォーマンス改善も実施されており、インフラエンジニアやバックエンド開発者にとって見逃せない内容となっています。
Redisが既存のデータ構造で配列のような振る舞いをサポートしていたのに、なぜそれが十分ではなかったのか、詳細を解説したブログ記事も別に公開されてるよ。
https://redis.io/blog/diving-deep-into-rediss-new-array-data-type/
外部データ構造のための多機能ツールとしてRedisは大好きだけど、個人的にはまだ2つの点で物足りないと思う。
1つ目は、SQLiteみたいにアプリケーションへ直接埋め込めたら最高だなってこと。
2つ目は、HA(高可用性)の話が本来あるべき姿よりずっと複雑だってこと。並行処理や分散コンピューティングが難しいのは重々承知だけど、大量のドキュメントを読み込んで、2つの全く異なるマルチノードのアプローチを理解した挙句、多くのアプリでは実用的じゃない細かい制約がたくさんあるってことに気づかされるような状況は避けてほしい。
RedisとValkeyの分裂について、結局みんなはどういう結論になったの?ライセンス騒動のあとでも、Redisを使い続ける理由ってあるのかな?
彼がやってるds4プロジェクトを考えると、今回のリリースではDeepSeekと協力した可能性が高いね。
ウィンドウカウンター方式のレートリミッターか!
これ最高じゃん!
配列も良さそう。いろいろ遊べそうだね。
レート制限はRedisの最も一般的なユースケースの一つです。従来、ユーザーはサーバーサイドのLuaスクリプトとクライアント側のロジックを組み合わせてレートリミッターを実装していました。Redis 8.8では、ウィンドウカウンター方式のレートリミッターを導入します(@raffertyyuとRedisチームによる)。
これ調べてみたんだけど、説明が少し正確じゃないみたい。ウィンドウカウンターじゃなくて「GCRA(Generic Cell Rate Algorithm)」、つまりリーキーバケットアルゴリズムだね。コードはここ:https://github.com/redis/redis/blob/unstable/src/gcra.c
コードのコメントを見ると、Brandur Leachによる https://github.com/brandur/redis-cell に強く影響を受けてるみたいだよ。
なかなかイケてるアルゴリズム(今日初めて知ったけど)で、レート制限するキーごとに整数を1つ保存するだけでいいんだ。バケットが次に空になる「理論上の到着時刻」を保持する形だね。
これでRedisの作者たちが急にAIに熱を上げ始めた理由がわかったな。配列データ構造はAIで使われるからだ。何週間か前にははっきりしてたことだけどね。
ウェブサイトの見た目もopenclawのサイトにそっくり。
まだRedisを使ってる人っているの?ライセンス変更のせいでKubeオペレーターもなくなっちゃったし。