リアルタイム レプリケーションは、企業データをバックアップする最も重要な方法です。主に、ユーザーが送信したデータのバックアップに使用されます。ユーザーがサーバーに送信する通常のファイル (画像、圧縮パッケージ、ビデオ、ドキュメントなど) の場合、inotify/sersync+rsync リアルタイム バックアップ メソッドを使用できます。データ ファイルの場合、FastDFS、GlusterFS など、同時に複数のコピーにデータをバックアップできるより複雑な分散ストレージ ツールがあります。データベースに送信されたデータの場合、データベースのマスター スレーブ レプリケーション (MySQL、Oracle など) を使用してバックアップできます。これは、ソフトウェアに付属するリアルタイム レプリケーション バックアップ メソッドです。一部の企業では、データが同時に複数のコピーに変換されることを実現するために、さらに多くのアイデアを採用しています。たとえば、データを送信するときに、プログラムのビジネス ロジックが 2 つのサーバーに同時に送信されます。 リアルタイムのレプリケーション展開準備をシミュレートする リアルタイムレプリケーションソフトウェアの紹介 よく使用されるソフトウェア: inotify-tools、sersync (推奨) リアルタイムレプリケーションinotifyメカニズムの紹介 Linux カーネルは 2.6.13 以降、Inotify サポートを追加しました。これは非同期のシステム イベント監視メカニズムです。inotify を通じて、ファイル システムでの追加、削除、変更、移動などのさまざまなイベントを監視できます。このカーネル インターフェイスを使用すると、サードパーティ ソフトウェア (inotify-tools、sersync など) はファイル システム内のさまざまなファイルの変更を監視し、リアルタイムで応答できます。 注: sersync ソフトウェアは inotify に基づいて開発されており、より強力な機能を備えています。構成ファイル、スケジュールされた再試行レプリケーション、フィルタリング メカニズムをサポートし、CDN データ更新用のインターフェイスを提供し、マルチスレッド操作をサポートします。 長所と短所 inotify の利点: ファイル システム イベントの変更を監視し、レプリケーション ツールを通じてリアルタイムのデータ レプリケーションを実現します。マルチスレッドのリアルタイムレプリケーションをサポートします。 inotify の欠点: 同時コピーの数が 200 ファイル (10 ~ 100k) を超えると、コピーに遅延が発生します。 解決策: フロントデスクで時間を稼ぎます。たとえば、アカウントを登録したり、データをアップロードして [送信] をクリックすると、ページが数秒間表示され、その後元のページに戻ります。 inotify+rsync プロジェクトの実践 1. rsync サービスが利用可能であり、nfs01 サーバーからバックアップ サーバーにデータをプッシュおよびプルできることを確認します。 2. システムサポートを確認する ①カーネルバージョンが2.6.13以上であること ②以下の3つのファイルが存在している必要がある 3. inotify-toolsソフトウェアをテストする [root@nfs01 ~]# yum install inotify-tools -y テストするには 2 つのウィンドウを開きます。 スクリプトの作成: 注: 別の nfs01 ウィンドウを開いてファイルを作成、変更、削除し、バックアップ サーバー上でファイルがリアルタイムで同期されているかどうかを確認します。 4. sersyncソフトウェアをテストする パッケージをアップロード 解凍 tar -xf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /application/sersync/ sersync の設定ファイルは XML ファイルです。まずはバックアップしてください。cp confxml.xml{,.ori} 設定ファイルを変更します (行番号を表示するには :set nu と入力します)。 埋め込む sersyncはyumによってインストールされないため、systemctlコマンドを使用して起動、停止、再起動することはできません。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
1. 仮想マシンをダウンロードする公式ダウンロードウェブサイト: https://www.vmwar...
この記事では、マウスの動きを追跡するためのJavaScriptの具体的なコードを参考までに紹介します...
フォーマットエンコーディング1. ページの幅は600~800px、長さは1024px以内に設定してく...
目次1. 環境の紹介2. MySQL-8.0.19をインストールする3. MySQLを設定する1. ...
目次MySQL 切り捨ての使用1. 構文を切り捨てる2. Truncateの使用上の注意3. TRU...
0. 環境この記事のオペレーティング システム: CentOS 7.2.1511 x86_64 My...
最近、開発中に両端が揃ったレイアウトに遭遇しました。レイアウトはパーセンテージに基づいていました。以...
1. 基本的な文法コードをコピーコードは次のとおりです。埋め込み src=url注: 埋め込みはさま...
目次序文1. ファイルのディスク使用量を確認する1.1 ディスク容量の使用状況を確認する1.2 ディ...
なぜ仮想DOMが必要なのでしょうか?仮想 DOM はブラウザのパフォーマンス問題を解決するために設計...
mysql が誤ってデータを削除しました削除ステートメントを使用して誤ってデータ行を削除する誤ってデ...
Grafana をインストールします。公式 Web サイトでは、直接インストールできる Ubuntu...
この記事では、ネイティブ JS で実装されたデジタル時計エフェクトを紹介します。エフェクトは次のとお...
目次序文1. 現在の時刻を取得する1.1 現在の日付と時刻を返す1.2 現在の日付を取得する1.3 ...