問題タブ [redis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - デイリー、ウィークリー、マンスリーのページビューカウンター
ユーザー生成コンテンツを含む Web サイトを構築しています。ホームページで、作成されたすべてのアイテムのリストを表示したいのですが、それらをビュー カウンターで並べ替えられるようにしたいと考えています。それは簡単に聞こえますが、複数のカウンターが必要です。前日、先週、先月、または全体で最もアクセスされたアイテムはどれか知りたいです。
私の最初のアイデアは、アイテムの DB テーブルに 4 つのカウンター列を作成することでした。デイリー、ウィークリー、マンスリー、オーバーオールのそれぞれに 1 つずつ、24 時間ごとにデイリー カウンター、7 日ごとにウィークリー カウンターなどをクリアする cron ジョブを作成します。
しかし、これに関する私の問題は、週間カウンターがクリアされた直後に、その週で最も閲覧されたアイテムを知りたい場合はどうなるかということです。
私が必要としているのは、古すぎるページビューごとに減少し、新しいページビューごとに増加する継続的なカウンターを作成する効率的な方法です。
現在、redis サーバーで解決策を考えていますが、まだ解決策がありません。
ここでは一般的なアイデアを探しているだけですが、参考までに、このアプリケーションを Ruby on Rails で開発しています。
nosql - データが使用可能な RAM を超えた場合、Redis データ ストアはどうなりますか?
データが使用可能な RAM を超えた場合、Redis データ ストアはどうなりますか?
class - クラスに名前を付けます: Pipelined cache? AntiSymetricPipelineCache?
このクラスの正しい名前を思いつくのに苦労しています。基本的には、書き込みが非同期に「起動」され、別のスレッドで実行される redis データ ストアのラッパーです (メイン処理の動作を可能な限り高速に保つため)。Get 操作はたまにしかありません。それらを実行する前に、get 操作を実行する前にすべての put 操作が完了していることを確認する必要があります。通常の操作では、後書きキャッシュと非常に似ていますが、データを返す前にフラッシュ/同期を待機する必要があります。
何か案は?ここで明らかな何かが欠けていると思います。
performance - Redis でオンライン ユーザーを追跡するための 2 つのアプローチ。どちらが速いですか?
最近、Redis の助けを借りて Web サイトのオンライン ユーザーを追跡するための 2 つのアプローチを紹介している素敵なブログ記事を見つけました。
1) スマートキーとその有効期限の設定 http://techno-weenie.net/2010/2/3/where-s-waldo-track-user-locations-with-node-js-and-redis
2) セットと交差 http://www.lukemelia.com/blog/archives/2010/01/17/redis-in-practice-whos-online/
どちらがより速いか、またその理由を判断できますか?
node.js - node.js データベース
node.js アプリとペアリングするデータベースを探しています。私は、json/nosql db がリレーショナル DB よりも望ましいと想定しています [json/sql インピーダンスの不一致なしで行うことができます]。私は考えています:
- カウチデブ
- モンゴッド
- レディス
上記のnode.jsとの互換性/展開可能性について、意見/戦争の話はありますか? 明確なお気に入りはありますか?
performance - memcached は Redis と比較して恐竜ですか?
私はここ数週間、memcached をかなり使用しており、Redis について知りました。彼らの readme のこの部分を読んだとき、私は突然、胃の中に温かく居心地の良い感覚を覚えました。
Redis は memcached と同じくらい高速ですが、多くの機能を備えているため、ステロイドの memcached として使用できます。memcached と同様に、Redis はキーへのタイムアウトの設定もサポートしているため、一定の時間が経過するとこのキーは自動的に削除されます。
これはすごいですね。ベンチマークのあるこのページも見つけました:http://www.ruturaj.net/redis-memcached-tokyo-tyrant-mysql-comparison
正直なところ、memcache は、Redis と呼ばれるこの新参者と比較した場合、パフォーマンスの観点から悪い選択である古い恐竜ですか?
これまでRedisについてあまり聞いたことがなかったので、私の質問へのアプローチです!
replication - スケーラビリティ設計の質問-マスター/スレーブデータベース
複数のデータベースから選択することを提案するredisに基づくデータベースレイヤーを完成させたばかりですが、常識的に何をすべきかについて自分自身で経験したことはありません。信頼性は私の最大の焦点です。
スレーブデータベースとマスターデータベースの両方が利用可能なアプリケーションでは、書き込みと読み取りはどのように一般的に編成されていますか?
大物はどうやってそれをやってのけるのですか?
javascript - JavaScriptでRedisに直接接続できますか?
Redis(https://redis.io/clients)で利用可能な公式クライアントを閲覧していると、JavaScript/TypeScriptクライアントライブラリの現在のクライアントがないようです。
私は正しいですか?
そのようなクライアントは単に欠落しているのですか、それとも存在できない/存在すべきでない理由がありますか?
redis - REPLとは何ですか?どのように/いつ登場しますか?
redisに関する投稿を読んでいるときに、 REPLという言葉を見ました。
それが何であり、プログラミング中にどのように機能するのか、簡単な実用的な例やシナリオを追加して教えてもらえますか?
redis - Redisでキーが期限切れに設定されているかどうかを知る方法は?
Redis が有効期限をキーに再設定することを許可していない限り (レプリケーションの nans のため)、キーが期限切れに設定されているかどうかを確認する方法はありますか?
ありがとうございました