タグ付けされた質問 「redis」

Redisは、一般に「NoSQLデータベース」と呼ばれる、オープンソースの非常にスケーラブルなKey-Valueストアです。

3
SElinux:httpdが特定のポートに接続できるようにする
私のシステムは、Apache2.2.15でCentOS 6.4を実行しています。SElinuxは強制的であり、python / wsgiアプリを介してredisのローカルインスタンスに接続しようとしています。エラー13、許可が拒否されました。次のコマンドで修正できます。 setsebool -P httpd_can_network_connect ただし、httpdがすべてのtcpポートに接続できるようにしたくはありません。httpdが接続できるポート/ネットワークを指定するにはどうすればよいですか?httpdがポート6379(redis)または127.0.0.1のtcpに接続できるようにするモジュールを作成できれば、それが望ましいでしょう。なぜ私の妄想がこれにとても強いのかは分かりませんが、ちょっと... 知ってる?

4
Redis(エラー)NOAUTH認証が必要
エラーが表示されます: (error) NOAUTH Authentication required. でredis-cli、表示しようとしていますKEYS *。私はafaiacではrequirepassないだけを設定しましたauth。私はいるが、redis.conf何をすべきかわからない。
29 redis 

1
Redisクラスター:(エラー)移動
次のノードを持つRedisクラスターがあります。 192.168.0.14:6379 master (slots from 0 to 16383) 192.168.0.15:6379 slave (slots from 0 to 16383) 192.168.0.16:6379 master (without slots) ドキュメントには、どのノードでもクエリを適切なノードにリダイレクトできると書かれています。しかし、192.168.0.16:6379マスターノードからリクエストをリダイレクトできません。ここに私が試したものがあります: 192.168.0.16:6379> set myKey myValue (error) MOVED 16281 192.168.0.14:6379 192.168.0.16:6379> get myKey (error) MOVED 16281 192.168.0.14:6379 書き込みも読み取りもしません。192.168.0.14:6379から「myKey」を取得しようとすると、次のように表示されます。 127.0.0.1:6379> get myKey (nil) リクエストの何が問題になっていますか?Redisサーバーバージョン3.2.5を使用しています

1
Logstashのスケーリング(redis / elasticsearchを使用)
12 Centos 5.8サーバー以上のクラスター上で、ネイティブのLogstash Shipperを使用してlogstashをデプロイしました。これ/var/log/*/*.logは中央のlogstashサーバーに送り返します。 出荷者としてrsyslogdを使用しようとしましたが、rsyslogdのImFileモジュールのバグにより、リモートエンドが応答しない場合、ログがメモリに蓄積されます。 現在、Redisをトランスポートメカニズムとして使用しているため、logstash01はこれらのログのVLANのIPにバインドされたローカルで実行されているredisを持っています。 そのため、logstash-shipperはlogstash01のredisに送信します。logstash01は、別のプロセスで実行されているElasticsearchに送信します。 これが私たちが見ているものです。Elasticsearchには141個のブロックされたスレッドがあります。elasticsearchの親をたどることは以下を示します: futex(0x7f4ccd1939d0, FUTEX_WAIT, 26374, NULL ここにelasticsearchのjstackがあります これがlogstashのjstackです だから..昨夜、いくつかのウェブサーバー(ログはlogstashに追尾されています)が狂ってしまい、平均負荷は500を超えました。 logstash01には、これがあります Dec 19 00:44:45 logstash01 kernel: [736965.925863] Killed process 23429 (redis-server) total-vm:5493112kB, anon-rss:4248840kB, file-rss:108kB その後、もの..出荷されたサーバ上のメモリに積み上げログ意味のRedisサーバ、殺さOOM-killerがそう何とか Apacheはツイストでその半ズボンを取得することを意味します。(率直に言って、どのように私はそれがわからない、私はちょうどそれがログを尾行していると仮定する)。 これは、イベントがどのように展開したかに関する私の理論です。 トラフィックが急増しました。 膨大な量のログが生成されました。 これらはRedisに積み上げられ、logstash / elasticsearchは300〜400個の新しいイベント/秒しか処理できないようです。 RedisはOOM-killerが無意味に虐殺するまで完全にいっぱいになっていた。 Redisは新しいアイテムの受け入れを停止します。 アイテムは、リモートホスト側で積み上げられます。 すべてがおかしい。Apacheはリクエストの受け入れを停止します。(なぜ?)。 質問は次のとおりです。 ログの末尾に何かが残っているだけで、Apacheがおかしくなるのはなぜですか。apacheが書くことをブロックするのはそれが原因ですか? elasticsearchをより速く/より良く/弾力的にする正しい方法はありますか? redisを弾力的にし、OOMされたために死なないようにする正しい方法はありますか 私がそれをすべて設定した方法に根本的な欠陥がありますか、または誰もがこの問題を抱えていますか? -編集- @lusisのいくつかの仕様。 admin@log01:/etc/init$ free …

2
Nginxリクエスト/秒を最大化するためのヒント
分析パッケージを作成していますが、プロジェクトの要件では、1日あたり10億件のヒットをサポートする必要があります。うん、「億」。言い換えれば、1秒あたり12,000ヒット以上が持続し、できればバーストする余地があります。これには複数のサーバーが必要になることは知っていますが、「より多くのハードウェアを投入する」前に、各ノードのパフォーマンスを最大にしようとしています。 現在、ヒットトラッキング部分が完了し、最適化されています。リクエストをそのままRedisに保存するだけです(後でHadoopで処理するため)。アプリケーションは、ゲートウェイ用のgunicornを備えたPython / Djangoです。 私の2GB Ubuntu 10.04 Rackspaceサーバー(本番マシンではない)は、毎秒約1200個の静的ファイルを提供できます(単一の静的資産に対してApache ABを使用してベンチマーク)。比較すると、静的ファイルのリンクをトラッキングリンクと交換しても、1秒あたり約600のリクエストが発生します-これは、同じ静的アセットを提供するよりも2分の1だけ遅いため、トラッカーが最適化されていることを意味すると思います繰り返します。 ただし、数百万件のヒットでベンチマークを行うと、いくつかのことに気付きました- すべてのNginxログをオフにしているため、ディスク使用量はありません。カスタムコードはリクエストの詳細をRedisに保存するだけです。 一定ではないメモリ使用量-おそらくRedisのメモリ管理のため、私のメモリ使用量は徐々に上昇し、その後低下しますが、一度もボトルネックになったことはありません。 システムの負荷は2〜4前後に留まり、最も重いベンチマークでもシステムは応答します。また、(他の)サーバーが600リクエストを実行している間、目に見える遅延はほとんどなく、手動でhttp://mysite.com/tracking/pixelを表示できます秒。 短いテスト、たとえば50,000件のヒット(約2mを要する)を実行すると、安定した信頼性の高い1秒あたり600件の要求を受け取ります。より長いテストを実行すると(これまでに最大3.5mまで試行されました)、r / sが約250に低下します。 私の質問- a。まだこのサーバーを使い切っているように見えますか?1,200 / sの静的ファイルnginxのパフォーマンスは、他の人が経験したものと同等ですか? b。そのような大容量アプリケーション向けの一般的なnginxチューニングはありますか?私は64に設定されたワーカースレッドと8に設定されたgunicornワーカースレッドを持っていますが、これらの値を微調整してもあまり助けにも害にもならないようです。 c。着信接続を制限する可能性のあるLinuxレベルの設定はありますか? d。長時間のテストでパフォーマンスが250r / sに低下する原因は何ですか?繰り返しますが、これらのテスト中にメモリが限界に達することはなく、HDDの使用はゼロです。 事前に感謝します、すべて:) 編集これ は私のnginxの設定です-http ://pastie.org/1450749-それはほとんどバニラで、明らかに脂肪が取り除かれています。

2
ElastiCache Redisでのスワップの回避
ElastiCache Redisインスタンスのスワッピングで継続的な問題が発生しています。Amazonには、スワップ使用率の急上昇に気付き、ElastiCacheインスタンスを単純に再起動する粗雑な内部監視機能が備わっているようです(これにより、キャッシュされたすべてのアイテムが失われます)。過去14日間のElastiCacheインスタンスのBytesUsedForCache(青い線)とSwapUsage(オレンジ色の線)のグラフは次のとおりです。 ElastiCacheインスタンスのリブートをトリガーするように見えるスワップ使用量の増加パターンを見ることができます。キャッシュされたすべてのアイテムが失われます(BytesUsedForCacheが0に低下します)。 ElastiCacheダッシュボードの[キャッシュイベント]タブには、対応するエントリがあります。 ソースID | タイプ| 日付| イベント cache-instance-id | キャッシュクラスター| 2015年9月22日火曜日07:34:47 GMT-400 2015 | キャッシュノード0001が再起動しました cache-instance-id | キャッシュクラスター| 2015年9月22日火曜日07:34:42 GMT-400 2015 | ノード0001でのキャッシュエンジンの再起動エラー cache-instance-id | キャッシュクラスター| 日9月20日11:13:05 GMT-400 2015 | キャッシュノード0001が再起動しました cache-instance-id | キャッシュクラスター| 木9月17 22:59:50 GMT-400 2015 | キャッシュノード0001が再起動しました cache-instance-id | キャッシュクラスター| 2015年9月16日10:36:52 GMT-400 2015 | キャッシュノード0001が再起動しました …

3
Redisが大きなデータセットをロードすると、一部のLinuxシステムが非常に遅くなります
Redisユーザーからレポートを受け取りました。Linuxとそのスケジューラーの分野の専門家ではないので、何を返信すればよいかわかりませんが、(Redisプロジェクトとして)この種の問題を特に把握する必要があります。将来的には、Redisクラスターと同様に、1つのボックスで多数のRedisインスタンスを同時に実行する予定です。だから私はここでいくつかの助けを求めています。 問題: カーネル:「Linux redis1 2.6.32-305-ec2#9-Ubuntu SMP Thu Apr 15 08:05:38 UTC 2010 x86_64 GNU / Linux」 十分な空きRAM、重要なI / Oを実行する他のプロセスはありません。 重要、実サーバーではなく、EC2ビッグインスタンスで実行します。仮想化されていない環境では、そのようなものを見たことはありません。EC2インスタンスは、「ハイメモリエクストララージインスタンス17.1 GBメモリ、6.5 ECU(3.25 EC2コンピューティングユニットを備えた2つの仮想コア)、420 ​​GBのローカルインスタンスストレージ、64ビットプラットフォーム」でした。 基本的に、大きなRedisインスタンスを再起動すると、システムが非常に遅くなり、シェルを入力できなくなります。Redisがインスタンスをロードするとき、CPUを100%使用し(データを可能な限り高速にロードします)、dump.rdbファイルを順番に読み取ります。ロードはI / OバウンドではなくCPUバウンドであるため、I / Oはそれほど高くありません。 なぜ2つのCPUと十分なRAMを備えたディスクがディスク上にスワップされていないのに、なぜこの作業負荷で動作を停止する必要があるのでしょうか? 私は、これがEC2インスタンスであるという事実と多くの関係があるという印象を持っているので、使用されている仮想化テクノロジーに関連して、私はいつもRedis 24 GBデータセットを問題なく(他のRedisインスタンスでも)高負荷で実行)。 ヒントをありがとう! サルバトーレ 編集:ツイッターから受け取ったフィードバックを追加します: @ezmobiusから:@antirezの最初の操作は、/ mntまたはローカルの一時ドライブから試して、そのEBSのフレキネスを確認することです。最初にディスク全体で0をddする必要があります。 from @dvirsky:@antirezまさにそのようなec2ノードで多くのredisインスタンスを実行しています。私はbgsaveの速度低下に気づきましたが、この現象には気づきませんでした。

1
systemctlがCentOS 7でredis-serverを起動しないのはなぜですか?
新しいCentOS 7ボックスにredisをインストールしましたが、systemctlを使用してredisを起動できません。 次のようにインストールされました。 rpm -i http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm yum install redis このように起動しようとすると、静かに失敗するように見えました(出力はありませんでした)。 systemctl start redis-server # also tried redis-server.service 接続しようとすると、次のことが起こります。 redis-cli Could not connect to Redis at 127.0.0.1:6379: Connection refused not connected> しかし、手動で起動すると動作します: [root@redis ~]# redis-server /etc/redis.conf [root@redis ~]# redis-cli 127.0.0.1:6379> 誰が何が間違っているのか、これをデバッグする方法を知っていますか? 更新:/var/log/redis/redis.log以下の出力です。ところで、それは512mb RAM VPSです。 [1972] 29 Jul 18:52:16.258 # You requested …

3
node.js、mongodb、redis、本番環境でのubuntuのパフォーマンス低下、RAMは無料、CPU 100%
質問のタイトルが示すように、許容可能なパフォーマンスを達成するために、アプリケーションで何を改善できるか(またはos、ubuntuで調整できるか)を理解するのは困難です。ただし、最初にアーキテクチャについて説明します。 フロントエンドサーバーは、Ubuntu 12.04を実行する8ギガバイトのRAMを備えた8コアマシンです。アプリケーションは完全にjavascriptで記述され、node.js v 0.8.22で実行されます(一部のモジュールはノードの新しいバージョンで不満があるようです)。nginx1.4を使用して、ポート80および443から管理される8つのノードワーカーにHTTPトラフィックをプロキシしますノードクラスターAPIの使用を開始しました。socket.io 0.9.14の最新バージョンを使用して、WebSocket接続を処理します。WebSocketでは、利用可能なトランスポートとしてwebsocketとxhr-pollingのみを有効にしました。このマシンでは、Redis(2.2)のインスタンスも実行します 4ギガのRAMと2つのコアを備えたmongodb(3.6)の2番目のサーバーに永続的なデータ(ユーザーやスコアなど)を保存します。 このアプリは数か月間運用されており(数週間前まで1つのボックスで実行されていました)、1日あたり約18,000人のユーザーによって使用されています。これは、パフォーマンスの低下という主要な問題を除いて、常に非常にうまく機能しています。使用すると、各プロセスで使用されるCPUの量は、ワーカーが安定化するまで増加します(ワーカーは要求を処理しなくなります)。私は一時的に各ワーカーが使用しているCPUを1分ごとにチェックし、98%に達したら再起動します。したがって、ここでの問題は主にCPUであり、RAMではありません。socket.io 0.9.14(以前のバージョンではメモリリークが発生していました)に更新したため、RAMはもう問題ではないので、特にCPUが急速に成長するため、メモリリークの問題であるとは思えません(各ワーカーを1日に10〜12回再起動する必要があります!)。使用中のRAMも同様に大きくなり、しかし、非常にゆっくりと、使用の2〜3日ごとに1ギガ、そして奇妙なことは、アプリケーション全体を完全に再起動してもリリースされないことです。サーバーを再起動した場合にのみリリースされます!これは本当に理解できない... 私は驚くべきnodeflyを発見したので、ようやく本番サーバーで何が起こっているのかを見ることができ、数日からデータを収集しています。誰かがチャートを見たいなら、私はあなたにアクセスを与えることができますが、基本的に私は80から200の同時接続を持っていることがわかります!node.jsが数百のリクエストではなく、数千のリクエストを処理することを期待していました。また、HTTPトラフィックの平均応答時間は500〜1500ミリ秒の間で変動しますが、これは非常に大きいと思います。また、1300人のユーザーがオンラインになっているこの瞬間に、これは「ss -s」の出力です。 Total: 5013 (kernel 5533) TCP: 8047 (estab 4788, closed 3097, orphaned 139, synrecv 0, timewait 3097/0), ports 0 Transport Total IP IPv6 * 5533 - - RAW 0 0 0 UDP 0 0 0 TCP 4950 4948 2 INET …

3
CentOS 6.5でのRedisのインストール
次の行でCentOS 6.5(x64)にRedisをインストールしようとしています: yum install redis しかし、私は次の画面を取得しています: [root@NodeJs ~]# yum install redis Loaded plugins: fastestmirror Setting up Install Process Loading mirror speeds from cached hostfile * base: nl.mirror.eurid.eu * epel: nl.mirror.eurid.eu * extras: mirror.denit.net * updates: nl.mirror.eurid.eu Resolving Dependencies --> Running transaction check ---> Package redis.x86_64 0:2.8.14-2.el7 will be installed --> …
10 centos  centos6  redis 

2
Redis 2.8.19から3.0.1へのアップグレード
現在Redis 2.8.19をインストールしていますが、最新の安定版リリース3.0.1にアップグレードしたいと考えています。もともと私は2.8.9をダウンロードし、圧縮解除してコンパイルしました。私のように以前にコンパイルしたことがある場合、2.8.19から3.0.1にアップグレードするための推奨されるアプローチは何ですか?私はこれに関するリソースを見つけようとしましたが、すぐに終わります。 前もって感謝します。
9 redis 

4
limits.confに更新した後でも、redisが1024ファイルの制限を報告するのはなぜですか?
redis.logファイルの上部にこのエラーが表示されます。 現在の最大オープンファイル数は1024です。uclientの下限を補うために、maxclientsは4064に削減されました。 私は手紙にこれらの手順に従いました(そして再起動しました): さらに、実行するとこれが表示されますulimit: ubuntu@ip-XX-XXX-XXX-XXX:~$ ulimit -n 65535 このエラーは疑わしいですか?そうでない場合、他にどのような手順を実行する必要がありますか?Ubuntu LTS 14.04.1(ここでもツリーの先端)でredis 2.8.13(ツリーの先端)を実行しています。 ユーザー情報は次のとおりです。 ubuntu@ip-XX-XXX-XXX-XXX:~$ ps aux | grep redis root 1027 0.0 0.0 66328 2112 ? Ss 20:30 0:00 sudo -u ubuntu /usr/local/bin/redis-server /etc/redis/redis.conf ubuntu 1107 19.2 48.8 7629152 7531552 ? Sl 20:30 2:21 /usr/local/bin/redis-server *:6379 したがって、サーバーはubuntuとして実行されています。 コメントなしの私のlimits.confファイルを以下に示します。 ubuntu@ip-XX-XXX-XXX-XXX:~$ cat …
9 redis  ulimit 

2
Azure Redis Cacheを無効にするにはどうすればよいですか?
私は、Azure Redis Cacheプレビューの実験を行っていますが、これまでのところ、非常に優れています。ただし、使用していない場合は無効にして、メモリを消費したりアクセスできないようにしたりします。 いくつかのテストを実行するたびに新しいインスタンスを作成したくないので、削除しない方がよいでしょう。ただし、ポータルからは、無効化または非アクティブ化のオプションはなく、削除するだけです。 http://msdn.microsoft.com/en-us/library/azure/dn690523.aspxにあるドキュメントを確認しましたが、解決策は見つかりませんでした。
9 azure  redis 

2
Redisストールのトラブルシューティング
サーバー上でいくつかのredisインスタンスが実行されています。同時にストールが発生するインスタンスに接続する複数のWeb層サーバーもあります。 当時はパケットキャプチャがあり、次のWireshark IOグラフのように、TXトラフィックとRXトラフィックの両方でストールが発生していることがわかりました。 redis呼び出しには相関するスパイクがありましたが、タイムラグによる影響であり、原因ではなかったと思います。 15 / sのサンプリング間隔(これはカウンターとして収集されます)では、平均136のメモリ割り当てストールがありました。 また、同時に移行されたNUMAページの数が通常とは異なるように見えました。 上記は正常に見えますが、グラフに見られる他の300を超えるスパイクと比較して異常になる2つの連続したデータポイントがありました。 メモリの圧縮の失敗と圧縮の停止には、相関するスパイクもありました。 ここには多くのメモリ情報がありますが、私のLinuxメモリの知識は、ストールを説明するためにこれらすべての情報をまとめる良い物語を実際に仮定するほど深くはありません。Linuxのメモリに関する深い知識(およびおそらくredisに関する深いメモリに関する知識)を持っている人は、この情報の一部を結び付けることができますか? 15秒間隔で/ proc / vmstatからすべての統計を収集します。そのため、これに追加すると思われるデータがある場合は、リクエストしてください。私は、特にallocストール、numaマイグレーション、およびコンパクションストール/失敗など、興味深いアクティビティがあると思われるものを選びました。合計は次のとおりで、20日間の稼働時間をカバーしています。 [kbrandt@ny-redis01: ~] uptime 21:11:49 up 20 days, 20:05, 8 users, load average: 1.05, 0.74, 0.69 [kbrandt@ny-redis01: ~] cat /proc/vmstat nr_free_pages 105382 nr_alloc_batch 5632 nr_inactive_anon 983455 nr_active_anon 15870487 nr_inactive_file 12904618 nr_active_file 2266184 nr_unevictable 0 nr_mlock 0 …
8 linux  memory  redis 


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.