我們正在構建一個使用大量後端任務(任務隊列)的應用程序,並且在每個任務中 - 我們正在使用Google Cloud SQL進行I/O操作。任務隊列以「(2062,'雲SQL套接字打開失敗,錯誤:沒有這樣的文件或目錄')結尾」
至於GAE有12個併發連接的限制(不知道這是否是問題?我在https://stackoverflow.com/a/26155819/687692看到的)
「」每個App Engine的實例在標準的環境中運行,或者使用標準兼容的API,不能有超過12個併發連接到Google Cloud SQL實例。「 - https://cloud.google.com/sql/faq」
我的大多數後端任務(每秒100-500個任務)都因此問題而失敗。
另外,我檢查了持續4天的活動連接:我沒有看到任何的連接比12間的連接都多。
所以,我需要什麼樣的方式把解決這一問題?連接池(如何使用GCS進行GAE?)?或其他一些修復?
任何幫助 - 指導非常感謝。 讓我知道,如果任何人需要更多的信息。
感謝,
你提到的錯誤通常確實表明,12連接已經達到極限。請注意,該限制是每個/ App Engine實例的12個併發連接數,而不是整個應用程序。您知道應用程序中每個App Engine實例處理多少個任務隊列請求?根據鏈接文章設置最大max_concurrent_requests是否適合你? (請注意,設置較低的max_concurrent_requests值可能會導致更多App Engine實例處理請求)。 – Vadim
max_concurrent_requests用於前端實例。我的任務隊列通常在一秒鐘內運行100-500個任務。 (我希望這對於大項目來說不是很大的數字) –
max_concurrent_requests適用於任何使用自動縮放的模塊。你能描述一下你的設置嗎?您是否使用後端(https://cloud.google.com/appengine/docs/python/backends/)或您的任務處理程序的單獨模塊?每秒處理每個實例有多少個任務(不是總體任務數量)? – Vadim