2011-05-06 48 views
0

我想要做的(並已完成)是訪問相同的MySQL數據庫。以及來自PHP腳本和Django應用程序的表格。不過,我想知道如果我這樣做可能會導致錯誤或問題。我希望你能幫助:)關於從PHP和Django/Python同時訪問mysql的幾個問題

的設置,截至目前:

的事情是我設立一個2路的短信網關的事情。 用戶向短信網關提供商發送短信,然後再向我指定的URL發送POST請求。

mydomain.com/gateway/receive.php

該腳本中的數據(由網關提供者定義)消息,發送方,代碼插入到MySQL數據庫。和一個名爲gateway ...的表格以及一個名爲'retrieve'的變量,它首先是一個布爾型和= False。然後,它向網關提供商返回一個XML響應,以便他們可以確定短消息已發送(並通過短消息通知用戶)

每隔幾分鐘,我的django應用程序。通過相同的分貝查看。和表,並查找所有與「retrieve = False」的短信條目。對於每個對象,使用相同的數據創建Django應用程序中的新對象(然後將該對象綁定到確切的用戶,時間戳,格式化等等),並且來自網關表的原始對象被設置爲「retrieve = True」然後保存...(以防萬一...以及用於「日誌」目的)

我使用PHP的原因是因爲我的託管服務的響應時間。 PHP比django應用快了很多(直接在nginx服務器之後)。這是在自定義構建apache2服務器上。因此,爲了使設置的短信部分正常工作,我將不得不爲該部分使用PHP。我還發現一個簡單的PHP腳本比一個更復雜的apache2 + Django安裝程序更不容易出現停機。

所以問題是......這可能會導致任何問題......有一個PHP和Django/Python腳本訪問相同的MySQL數據庫。同時?這是否是設計這種事情的正確方式......我主要關心的是PHP腳本插入新東西時遇到的某種麻煩,而Django部分讀取/編輯舊的東西(或相同的東西)

I希望這是有道理的。而且你可以幫助...?可能是一個非問題...我只想有一點確定性:)

謝謝。

問候

皮特

回答

0

只要你的第一個進程只是插入新的數據,第二個進程/更新現有的記錄,你應該很安全。如果不是,那麼你應該考慮使用樂觀或悲觀的鎖定和/或使用交易。

+0

謝謝。我會去交易,以防萬一:) – 2011-05-06 11:22:19