我和我的創業應用程序公司正在開發基於回合的多人iPhone應用程序。可以這樣說,我們都沒有任何數據庫或服務器知識。雖然,我們願意學習。使用CouchDB和IrisCouch爲iOS設計的基於回合的多人遊戲
遊戲的流程將類似於這樣的遊戲如:WordFeud,WordsWithFriends,隆隆聲等
讓我開始的地方很多在網絡上搜索已經得到了我們:
我們決定使用CouchDB作爲存儲用戶信息,遊戲會話和其他內容的工具。 CouchDB是一個開源的noSQL數據庫系統。原因是我們已經被教導,它應該支持很多併發用戶。此外,它的規模 - 當然,我們希望能夠變大。
我們的CouchDB託管於IrisCouch。 IrisCouch是一款專爲運行CouchDb而設計的「雲端」託管服務。
因此,我們已經啓動了一個CouchDB服務器,並且我們知道如何從服務器查詢數據的基礎知識。
我們現在最大的困惑是,我們應該如何根據最佳實踐來建立系統。現在我們處於能夠接收數據並將數據提交給服務器的地步。
我們的遊戲應該有Facebook集成,以便用戶可以通過我們的應用程序或通過Facebook註冊。之後,他們可以與隨機匹配的對手進行比賽,或與朋友一起玩。比賽開始後,一名球員將得到一組要求提出的問題,在他回答後,應通過推送通知通知另一名球員,輪到他們了。幾輪後,遊戲結束。
在這一點上,我們認爲這可能是應用程序的流量的最佳解決方案:
- 用戶連接到其他用戶 - >遊戲會話被打開,在數據庫中的 文件名爲「遊戲」。
- 新創建的文檔包含兩個球員的名字,問題, 答案等
- 名爲「whos_turn」字段決定哪兩個選手把它。
- 遊戲結束後,會話被清除。
再次,正如您所看到的,我們在黑暗中如何真正做到這一點,但這是總體思路。
所以,我的問題去如下:
是不是最好直接從iPhone應用程序查詢數據,或通過Web服務?
什麼是建立數據庫,以最好地管理應用程序流的最佳方式?
的任何信息,有可能導致我們進一步將欣然讚賞:)
在前進,謝謝!
奧拉夫·岡德森
編輯#1:我們的Objective-C編程人員管理的連接使用CouchDB的兩臺iPhone設備。 iPhone應用程序由一個表視圖組成,該視圖與數據庫具有併發連接,以便當有人POST到數據庫時,它顯示在所有其他連接的電話的桌面視圖上。看哪:一個嚴重無效的聊天系統。
哇!感謝您發佈這樣一個廣泛的答案!我知道,我們在黑暗中摸索着,我們意識到這個過程可能會很漫長,我們必須學習許多新技術,但我們決心取得成功。我將通讀CouchDb,並嘗試確定我們的解決方案是否最適合關係數據庫系統或noSQL系統。將回來與我發現。如果我們在這篇文章中發佈了所有我們學習的東西,我相信它會幫助很多人,儘管它並不能解決我們的問題,特別是:) –
歡迎您:)祝你好運。繼續進行一些連接測試,如更新中的連接測試。也許你會遇到一些速度限制,這可能表明你需要重新考慮它的工作方式。您還應該閱讀其他類似的應用程序並調查他們使用的內容 - 不要害怕從良好的應用程序中獲取「靈感」:) – devnull