問題タブ [master-slave]
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.
mysql - マスター/スレーブ レプリケーション。読み取り分割戦略
MySQL データベースでレプリケーションが必要になる日が近づいています。最適な戦略について少し説明を求めています。うまくいけば、これはまだここで質問するのに十分具体的な質問です.
現在、アプリケーション用に 1 つの DB があり、これはかなり読み取りが集中しています。アプリケーション内のいくつかの基本的な負荷分散ロジックに基づいて、読み取りが約 40% をマスターに、60% をスレーブに分割する単純なマスター/スレーブ設定から始めることを考えています。
実行に時間がかかり、場合によっては 1 分以上かかることがわかっている読み取りがときどきあるため、40 対 60 の分割を言いました。これらの読み取りを負荷分散するのではなく、常にこれらをマスターに送信する予定です。単純なクエリでレプリケーションの遅延が発生する可能性があるのではなく、マスターに作業を行わせ、スレーブに追いつく時間を与えたいと思います。(複数のスレーブに進むことができる場合は、これらの集中的なクエリ専用のスレーブを 1 つ用意します)。
だから私の質問は、これは健全な計画のように聞こえるか、そうでない場合、より良い代替案は何かということです.
以下のコメントに応じて編集します。
@Romain - アプリケーションの大部分は、サインインしたユーザーの投稿、コメント、および返信に関係しているため、これらの操作では、可能な限り古いデータを避ける必要があります。
@Jaydee - はい、各サーバーの重み付け値を組み込んでいるので、必要に応じて読み取り%を簡単に変更できます。
ruby-on-rails - レプリカの待ち時間を考慮したマスタースレーブレプリケーション
私は本番環境でRubyonRailsアプリケーションに取り組んでいます。
このアプリケーションには、マスター/スレーブデータベースのレプリケーションが必要です。
私はそれをするためにタコの宝石を使っています。
問題は、過去1週間ほどステージング環境が機能していることです。そのステージング環境では、AmazonRDSでアラートを設定しています。
レプリカの待ち時間が10秒になることもあります(100秒になることもあります)。
いくつかのインスタンスがすべてロードバランサーの下で実行されており、バックグラウンドジョブも(Resqueを使用して)実行されていると考えて、アプリケーションでこれをどのように処理しますか?
c++ - マスタープログラムを取得して、新しいスレッドでスレーブを開始します
popen
マスタープログラムからC++スレーブプログラムを起動するために使用しています。ただし、そうすることにより、スレーブがタスクを完了するまで、制御はマスタープログラムに戻りません。
別のセッション(または別のスレッド)でスレーブを開始して、制御がマスターに戻される前にマスターがスレーブの終了を強制されないようにするにはどうすればよいですか?
マスターがスレーブを開始してから終了し、マスターが終了した後もスレーブが続行できるようにしたいと思います。
mongodb - MongoDb のレプリカ セットにメンバーを追加する
MongoDb でレプリカ セットを作成しようとしています。サーバーのホスト名は次のとおりです。
ホスト名 ホスト名-1 ホスト名-2
これらのそれぞれには、関連するすべてのホスト名が /etc/hosts ファイルに詳述されています (これらはすべて、Ubuntu 10.04 64 ビットを実行しています)。
1 つのノードで rs.initiate を実行すると、すべてが正常に開始されるようです。rs.status(); の実行 ショー:
レプリカ セットに新しいメンバーを追加しようとすると、問題が発生します。コマンド rs.add(hostname-1); を使用します。次のエラーが表示されます。
ポート番号の有無にかかわらず、ホスト名、IPアドレスを使用するさまざまな組み合わせを試しましたが、常に同じ問題が発生します。ホスト名は解決中です。ping hostname-1 を試してみましたが、正常に動作します。
この問題の原因について何か考えがある人はいますか?
残念ながら、Mongo のドキュメントには、実際のシナリオでレプリカ セットを設定する例はなく、明らかに役に立たない同じマシンで 3 つのインスタンスしか使用していません。
助けてくれてありがとう!
cassandra - マスタースレーブ対ピアツーピア分散コンピューティング
HBase にはマスター/スレーブ モデルがあり、Cassandra にはピア ツー ピア モデルがあります。マスター/スレーブ モデルでは、マスターは SPOF (単一障害点) であり、ピア ツー ピア モデルではそのようなことはありません。
各モデルのその他の長所と短所はありますか? 特に、ピア ツー ピア モデルに対するマスター スレーブの利点を探しています。
amazon-ec2 - Amazon 外部からデータベースを EC2 インスタンスに複製できますか?
ローカル環境にマスター、Amazon 環境にスレーブを持つレプリケーションのセットアップを検討しています。
2 つの EC2 インスタンスのレプリケーションを正常にセットアップできますが、マスターが Amazon 環境の外にある場合はセットアップできません。ポート 3306 を開くようにセキュリティ グループを変更しましたが、何も変わりませんでした。
他に行うべき変更はありますか?誰かが同様のセットアップを持っていますか?これはまったく可能ですか?
postgresql - Postgresql: 1 つのテーブルのマスター/スレーブ レプリケーション
2 つの Postgresql データベース間で1 つのテーブルをマスター/スレーブ レプリケーションする単純な (軽量) ソリューションを選択するのを手伝ってください。テーブルにラージ オブジェクトが含まれています。
redis - Redis マスターは、Redis スレーブよりも多くのコマンドを実行します
Redis アーキテクチャで非常に興味深いグラフを取得しています。
- 緑:マスター
- 青:奴隷
マスター Redisは、スレーブ Redisよりも35% 多くのコマンドを実行しているようです。
いつも同じ距離ではありません。
以下は、アクティブな redis サーバーのログの一部です。
そして同時に軟膏で:
そのため、ほぼ 1:1 で同期しているように見えます。
このギャップの原因は何なのだろうか。また、最適化できる不要なコマンドが Redis に送信されていることを意味するかどうかを自問しています。
hudson - 同じマシンを使用する複数のスレーブを持つ Jenkins
現在、私の Jenkins セットアップは 1 つのエグゼキュータに制限されています。ビルドごとに作成されるユーザー固有のログ ファイルがあるため、これはビルドのほとんどの要件です。複数のエグゼキュータを取得するために、ローカル ボックスでスレーブをセットアップしました。すべてのスレーブで同じワークスペースを共有したかったので、シンボリック リンクを作成しました。そうは言っても、グループベースのワークスペースになるように、ワークスペースで 775 を chmod する必要がありました。複数のジェンキンススレーブが1つのワークスペースを共有する方法はありますか?
編集:私の1人のエグゼキューターの制限に関して。私たちのアプリケーションはアクション スクリプト アプリであり、ビルド中に実行され、フラッシュ ログを作成する多くの単体テストがあります。ビルドごとにフラッシュ ログを取得できるようにしたいと考えています。UNIX のフラッシュ ログは、ユーザーのホーム ディレクトリに保存されます。バージョン 10.1 以降、mm.cfg の場所を変更することはできません。Jenkins はユーザーとして実行されるため、flexunit テストの複数のインスタンスを同時に実行することはできず、フラッシュ ログを正しくキャプチャすることはできません。
ここに私が得ているいくつかのパーマの失敗があります:
原因: hudson.plugins.git.GitException: コマンド "git fetch -t git@company:repo/repo.git +refs/heads/ :refs/remotes/origin/ " がステータス コード 128 を返しました: エラー: 追加するための権限が不十分ですリポジトリ データベースへのオブジェクト .git/objects
mysql - マスター/スレーブ レプリケーションに Wamp Server mysql を使用した時限データベース レプリケーション
wamp サーバーでマスタースレーブ複製を使用してデータベースを複製しようとしています。my.ini ファイルに次の変更を加えました。
マスターサーバーでこれを構成しました:
スレーブサーバーで、これを構成しました:
次のエラーが表示されました: エラー 1198: この操作は実行中のスレーブでは実行できません。最初に停止スレーブを実行します。
それで私は停止スレーブを実行しましたが、何も起こりませんでした。どんな助けでも大歓迎です。