2009-06-08 13 views
0

私は、ユーザが関心のある物や人を購読することができ、新しい投稿やファイルや画像が投稿されたときに通知を受けることができる購読システムを持っています。新しいものがあるかどうかを判断するために、私はtstampでビューを追跡します。問題は、WebサーバーとMySQLデータベースが同期していない場合、ユーザーはアイテムを表示するのとほぼ同時に投稿されるコンテンツを見逃してしまう可能性があるということです。アイテムを2回表示することもできます。複数のFedoraシステムの時計を同期する方法

私はデータベースからtstampを取得することでこの問題を解決できますが、それは単にtstampを取得するためのデータベースへの接続です。ウェブサーバのシステムクロックを私たちのdbサーバに定期的に(少なくとも可能な限り)同期させることができれば、問題を最小限に抑えることができます。誰かがこれを行うための最善の方法に関するアドバイスを持っていますか?

NOW()を使用してビュー時間をデータベースに入力することは嫌です。私はGearman Processでビューを記録します。これは、ビューへの入力には常に若干の遅延があることを意味します。しかし、一般に、この遅延は最小限であり、定期的な同期が取れないと仮定すると、システムクロックの差よりも小さくなる可能性があります。

+1

ServerFaultの上の同じ質問チェックアウト:http://serverfault.com/questions/6431/time-drift –

答えて

5

NTPを有効にします。

chkconfig ntpd on 
service ntpd start 

あなたは/etc/ntp.confファイルにセットアップ時間サーバにしたい、または* .fedora.pool.ntp.orgを使用してデフォルトの設定を使用することができます。

-1

私のために、私は自分のcrontabにスクリプトを追加しました。構成するサーバーが複数ある場合は、すばやく簡単です。

30 6 * * * root /usr/sbin/ntpdate -u ntp.ubuntu.com 
+0

これに伴う問題は、 'ntpdate'はこれができ、時計の単調性を保持していないということですがシステムサービスを混乱させる。 – daf

関連する問題