我用Python/Twisted編寫了一個音頻廣播服務器。它工作正常,但內存的使用增長太快!我認爲這是因爲某些用戶的網絡可能不足以及時下載音頻。如何減少Twisted服務器的內存使用量?
我的音頻服務器廣播音頻數據到不同的監聽器的客戶,如果他們中的一些不能下載的時間音頻,這意味着,我的服務器保持的音頻數據,直到收到聽衆。而且,我的音頻服務器是一臺廣播服務器,它接收音頻數據並將它們發送到不同的客戶端,我通過Twisted將這些數據複製到不同的緩衝區中,即使它們是相同的音頻片段。
我想減少內存使用的使用,所以我需要知道的是由客戶端接收的音頻時,這樣我可以決定什麼時候丟棄一些緩慢的客戶。但我不知道如何用Twisted實現這一點。有沒有人有想法?
而且還有什麼我可以做,以減少內存使用量的使用情況如何?
謝謝。 Victor Lin。
這是我做的另一篇文章,最後我找到原因http://stackoverflow.com/questions/2100192/how-to-find-the-source-of-increasing-memory-usage-of-a-雙絞線服務器/ 2229010#2229010 – 2010-02-09 12:46:04