2013-05-31 71 views
1

我想用uwsgi/nginx的服務器上運行一個python的紙牌遊戲。這是學習uwsgi互聯網上的疼痛,因此我的問題在這裏:在內存中的蟒蛇卡遊戲/沒有數據庫

我怎樣才能在服務器上運行一個Python應用程序和讀/更新我的對象時,一些請求進來?我不想在數據庫表中模擬我的遊戲。這甚至有可能嗎?

所有教程指向這個文件示例

def application(env, start_response): 
    start_response('200 OK', [('Content-Type','text/html')]) 
    return "Hello world!" 

但是這裏面的應用功能我不能引用任何先前定義的變量。 我wan't是:

i = 0 
def application(env, start_response): 
    i = i + 1 
    start_response('200 OK', [('Content-Type','text/html')]) 
    return "Counter: " + str(i) 

而且具有結果我每增加一個請求到來時

我寫了幾百假設我就可以做很多這個遊戲的線。 ......但是我撞到了牆上。任何幫助都會救我。

回答

1

你需要global i你使用它之前。但是,這可能會或可能不會像您期望的工作,這取決於您的uwsgi配置 - 你有一個重生的過程中,使用線程池,或啓用重新啓動?只要只能作爲你只有一個進程在運行,並且只要它不會請求之間循環的global招會奏效。而且這個過程需要自行生成 - 類似paste可能更容易配置以按照您想要的方式工作。

+0

謝謝。這工作,但揭示了一個全新的問題。當我不斷刷新頁面結果時:1 .. 1 .. 3 .. 5 .. 1 .. 10我認爲這是關於多線程或其他... – Markolos