2010-02-16 78 views
0

我正在製作一個Javascript(前端,PHP後端)遊戲。在這個遊戲中,它每2秒檢查一次服務器的更新。有一個sql調用正在運行,最後我使用$ mysqli-> close()來關閉SQL連接。在哪裏的列都被索引。JSON產生mysql睡眠進程

我遇到的問題是運行一小會兒後,MYSQL開始產生大量的睡眠進程。有沒有人有任何想法可能會造成這種情況?

+0

好像的http://stackoverflow.com/questions/2275741/high-frequency-ajax-and-mysql-sleep-overload/2275794#2275794 –

+0

重複,我不知道這是完全相同的,但我無法在整個遊戲過程中爲某人提供可靠的PHP程序。彗星似乎並不打算用於PHP。從我讀到的內容來看,我必須爲整個遊戲過程中的人員保持一個流程。這只是浪費,我無法通過讓服務器更慢來解決問題。 我遇到的問題是一個MySQL問題不是一個JavaScript問題,不保證這不會產卵睡眠以及。更不用說大量的PHP處理了。 – Iscariot

+0

每2秒輪詢一次並不比保持一個進程運行效率更高 –

回答

1

我會將更新推送給您的用戶,而不是輪詢他們。看看AJAX Push Engine,這可以幫助很多。另外,打開持久的MySQL連接,這可能會有所幫助。

0

這些過程是否會繼續存在? Mysql喜歡保留一些線程來接收請求,我不會擔心它們,除非它們將它們中的很多打開並佔用資源。

如果您每隔2秒觸擊一次請求,則會比每次實例化連接更便宜地保持池等待請求。

+0

它從一個或兩個開始,迅速變爲20-40,頁面加載從223毫秒變爲10秒。我不能忽視這個問題。 – Iscariot