問題タブ [failover]
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.
architecture - フェイルオーバーのための単一アクセス ポイント
これは私が達成しようとしていることですが、私はこの主題に十分に精通していないので、ご容赦ください:)
一部のデバイスが接続され、定期的にデータがアップロードされるサーバーがあります。通信は、速度と効率のために設計された独自のプロトコルを使用して、プレーンな TCP ソケットを介して行われます。このような接続はすべて、基本的に、デバイスが接続されている限り開いているセッションです。私が今必要としているのは、(1)フェイルオーバーメカニズムの設計と(2)スケールアップです。最初のインスタンスが失敗すると、別のサーバー ノードが起動します。軽量クラスターを実行するために Terracotta を検討してきました。しかし、私が理解していないのは、デバイスが2番目のノードで実行することをどのように知っているのでしょうか?? おそらく、いくつかのアクセスポイントを試すように「教える」ことができます..しかし、それらのいくつかは私の制御不能であるため、これは本当に苦痛です. 理想的には、
今。私が最初に知りたいのは、そのようなツールが世界でどのように呼び出されたかです。2 つ目 - シンプルな既製のソリューションが必要です。できればフリーまたはオープン ソースで、使いやすい商用ライセンスが必要です。重いコンテナーは使用しません。サーバー インスタンスは、Spring で接続された一連の POJO であり、すべてが 1 つの JVM で実行されます。理想的には、そのような魔法の箱をノードの 1 つに配置し、すべてのデバイスに対して単一の IP/ポートを公開し、いくつかの構成を行いたいと考えています。設定。これは可能ですか、それとも困難な問題に対する安価な解決策を夢見ていますか?
sql-server - ミラーリングせずに、SQL 接続文字列で Failover Partner を使用できますか?
私が少し安っぽいことは認めますが、ミラーリングを介して SQL Server の自動フェイルオーバーを取得するために必要な 3 台のサーバーに飛びつきたくありません。
プライマリ サーバーからバックアップ サーバーへの通常の SQL レプリケーション (スナップショットなど) をセットアップする場合、ASP.NET アプリで接続文字列を設定して、'Failover Partner=backup' を含めることはできますか? クライアント上の ADO.NET は、プライマリを試して、プライマリが利用できない場合はバックアップにフェールオーバーする必要があるようです。
それとも、ミラーリングでのみ機能しますか?
(ミラーリングのアイデアは気に入っていますが、ミラーリング監視サーバーにお金を払いたくない場合は、手動でバックアップ サーバーをプライマリに切り替える必要があります。)
ありがとう!
sql - SQL クラスタリングまたは VM イメージ
現在、2 つのノードを持つフェールオーバー SQL クラスターがあります。ビジネスに不可欠であると判断した新しい大規模プロジェクトのために、開発チームは新しい 2 ノード フェールオーバー SQL クラスターを要求しています。
私たちのサーバー部門は、クラスターを実装したくないと答えており、代わりに複数の仮想マシンを使用し、それぞれに SQL サーバーがインストールされ、同じディスクを指しているため、1 つに障害が発生した場合は新しいホストに移動します。 、または代わりに他のイメージを表示します。同じディスクを指しているため、データはそのまま残ります。
私はSQLサーバーの専門家ではなく、基本的なレベルでのクラスタリングしか理解していませんが、彼らが思いついたこのVMの「アイデア」は、正確にはエンタープライズソリューションではないことがわかりました. 私にはかなりミッキーマウスに聞こえます。私はここで昼食に出かけますか?自分の意見を支持するために、どのような議論を使用できますか?
standards - サーバーのフェイルオーバーに関するオープン スタンダードはありますか?
私はクライアント/サーバー アプリケーションを構築しており、サーバーがダウンしたときに別の利用可能なサーバーに接続しようとするように、クライアントにフェールオーバーを追加することを検討しています。サーバーのフェイルオーバーに関する標準または仕様はありますか? 独自のメカニズムを実装するよりも、既存の標準を採用したいと考えています。
database - 標準 rdbms の最も単純なフェールオーバー サポートは?
現在、既存のアプリケーションのフェイルオーバー サポートに取り組んでいます。
アプリケーションは postgres を使用してデータを保存しますが、特別な機能 (ビュー/トリガーなど) は使用しません。データベースは、実際のデータ ストレージではなく、構成ストレージに近いものです。アプリケーションが起動すると、メモリにデータがロードされ、構成が変更された場合にのみデータベースに戻ることはめったにありません。この単純なタスクのために postgres フェイルオーバー ソリューションを構成しようとすると、やり過ぎのように感じられます。
フェイルオーバーのサポートが組み込まれており、本番環境での構成と使用が簡単な軽量データベースはありますか? 私のデータ モデルのほとんどは単一のテーブルであり、1 分あたり 5 件ほどのトランザクションがあります。
windows - Jboss フェイルオーバーのテスト
私はここで奇妙な状況に陥っています。Wintel ボックスのサービスとして JBoss 5.1.0 をインストールしました。JBoss インスタンスが失敗した場合、サービスは自動的に再起動します。
ただし、このシナリオをテストする方法が見つかりませんでした。JBoss を実行していた JVM を強制終了しましたが、サービスは再起動しませんでした。JBoss サービスを異常終了させて、確実に再起動できるようにする必要があります。
要するに、JBoss を異常終了させる方法が必要です。
助けてください。
oracle - Oracle RACは、ノード間の完全に透過的なフェイルオーバーを許可しますか?
Hibernateを使用してOracle10gで実行されているアプリケーションがあります。Oracle RACを使用して、アプリケーション側でコードを変更することなく、データベース障害に関してアプリケーションの高可用性を実現できるかどうか疑問に思っています。
アプリケーション用に2つのOracleRACノードがあり、理想的には、ノードの1つでプラグをプルして、アプリケーションコードに到達する例外なしにアプリケーションを実行し続けることができるようにしたいと考えています。
私のアプリケーションは、select、insert、update、deleteクエリをデータベースに送信します。
透過的なアプリケーションフェイルオーバーについて読んでいますが、私が見つけたサイトは、選択したクエリのみが透過的にフェイルオーバーでき、他のすべてのタイプのクエリでは例外がスローされ、クエリを再実行する必要があることを示唆しています。データベースクエリを作成するコードベースのすべての部分に余分な例外処理を追加したくないので、これは避けたいと思います。
jakarta-ee - Java EE Web アプリのクラスタリング - オプション?
Apache、Tomcat、およびそれらの前にあるロード バランサーを実行する 3 つのサーバーに Web アプリをデプロイしています。今、私はそれらをクラスター化することを考えています。
これが、私が知っているオプションの通常のオプションと私の制約です。
シリアル化ベースのセッション クラスタリング: 私の場合、アプリケーションはセッションで多くのオブジェクトを使用します。したがって、このソリューションを使用しないことをお勧めします。また、近い将来、サーバーの数が 5 つ以上に増える可能性があります。
Terracotta: 興味深い話ですが、エンタープライズ ライセンスを購入するという選択肢はありません。
アプリケーションをステートレスにする: ちょっと面倒ですが、魅力的に聞こえます。いくつかの設計ガイドラインとそれに関する経験を聞きたいです。
他にアドバイスはありますか?
私の主な目標はフェイルオーバーです。
replication - Firebird RDBMS のレプリケーションとフェイルオーバーのための DRBD/Heartbeat についてどう思いますか?
プロジェクトに Firebird を使用する可能性を調査しています。
ただし、潜在的な問題の 1 つは、レプリケーションとフェイルオーバー、または (主観的な) 「適切な」ソリューションの欠如です。Firebird FAQ にリストされているいくつかの潜在的な解決策がありますが、それらは次のいずれかです。1) Windows 中心。2) ひどく時代遅れ。3) コマーシャル。または 4) フル機能ではありません。
私が見る唯一の潜在的なオプションはFIBERであり、それは1)未熟に見えます。2) 死んだ可能性がある。3) フル機能ではありません。
DRBD と Heartbeat について学びましたが、これらのソリューションは有望に見えます。1) 複製された Firebird 構成をセットアップする。および/または 2) Firebird で DRBD を使用した。
「落とし穴」、推奨事項、ヒントなどはありますか?
ありがとう!
mysql - 私は 1 つのデータベース (mysql) を持っています。最良の「フェイルオーバー」戦略は何ですか?
MySQL には自動フェイルオーバーが組み込まれていますか? または、データベースが生きているかどうかを「検出」できるロードバランサーはありますか?そうでない場合は、フェイルオーバーデータベースに送信しますか?
MySQL の基本的な知識はありますが、1 つのマスター DB のフェイルオーバーを設計する最善の方法がわかりません。