0
我正在使用Sphinx RT索引和MySQL數據庫,我現在遇到的問題是我需要數據是一致的,並且在它們上使用常規插入不是正確的方法它可能會導致錯誤的索引數據或錯誤的數據庫數據。兩個數據庫和一個更新
假設你有如下表MySQL數據庫
id, text
1, test is test
,你必須在RT指數
id, text
,可以發生在這裏是典型的競爭條件相同,當兩個用戶同時更新內容在同一時間。
所以,如果用下面的文字用以下文字
nice whether
之一許多事情可能發生
feeling good
和用戶B更新用戶A的更新是這個
Update RT index with user A text
Update DB table with user B text
Update RT index with user B text
Update DB table with user A text
所以現在當有人搜索一個文本時,他會從索引中得到結果在DB中。
可以在中間有一個守護進程,它將接收來自PHP頁面的UDP請求並更新數據庫?像下面的東西
php page --send both requests via UDP--> dameon
php page <--send successful receive via UDP-- dameon
daemon --send two MySQL updates request --> MySQL
守護進程的要點是什麼?這個問題解決了什麼問題? – barryhunter