0
我們使用nginx和php-fpm作爲我們的遊戲服務器。 我們希望確保一個玩家的請求被逐一處理。 然後在我們的遊戲中,多線程錯誤大大減少。如何通過ip或會話讓nginx進程順序發出請求?
我們不知道如何配置nginx那種方式。 謝謝。
我們使用nginx和php-fpm作爲我們的遊戲服務器。 我們希望確保一個玩家的請求被逐一處理。 然後在我們的遊戲中,多線程錯誤大大減少。如何通過ip或會話讓nginx進程順序發出請求?
我們不知道如何配置nginx那種方式。 謝謝。
就我所知,Web服務器本身無法以單線程模式運行。 我認爲有這個問題的解決方案。你需要一個隊列來處理玩家的請求。 創建線程安全隊列有兩種選擇。
其中一個是爲線程安全隊列應用程序編寫一個接口,該應用程序駐留在服務器的PHP內存中。 PHP可以簡單地向這個線程安全的應用程序添加請求,然後應用程序可以按順序運行它們。
或您可以簡單地將請求存儲在數據庫中(因爲它們支持同時插入),然後運行一個程序,它從db讀取請求並按順序執行它們。
但是,這會增加執行過程的開銷。