使用VPS搭建Dota2自定義游戲存儲服務器

經過一番對比和這一段時間的試用,一番比較下來,發(fā)現(xiàn)了一個比較好的VPS服務供應商。
首先是用過一段時間國內的阿里云服務器,但是最主要的問題是:國內的服務器需要備案,如果是個人自定義游戲開發(fā)者,那個復雜的備案流程足以讓人放棄這個過程了。而且如果不是學生的話,性價比偏低,在有學生優(yōu)惠的情況下可以考慮,否則不推薦。
Conoha的幾個優(yōu)點:

  1. 有足夠的帶寬且不限流量:Conoha提供無限量的流量和上下100Mbps的帶寬。
  2. 價格便宜而且是按小時計費,對于DOTA2自定義游戲來說,Conoha最低的配置(2核1GB內存)已經足夠應付絕大多數(shù)自定義游戲的儲存需求了,對應的費用是一個月900日元(50多塊一個月),一小時1.3日元,而且充值之后,只要刪除了所有的服務器,就可以暫時停止服務并停止扣費。
  3. 速度非常OK,目前已經使用過的服務器中,除了國內的阿里云之外,Conoha比絕大多數(shù)的供應商速度都要快,ssh連接非常流暢。甚至比起一些國內的VPS還要快,東京服務器國內訪問大多數(shù)在100ms之內。

第一部分:購買

歡迎大家使用我的推薦鏈接
點擊這里進入Conoha網站
來注冊Conoha,這樣我也可以獲得一些(雖然現(xiàn)在已經暫停了,不過說不定以后哪天人家就會補給我的)優(yōu)惠券,可以在續(xù)費的時候使用。
Conoha官方提供中文的界面,點擊右上角的注冊并完成登錄。
注冊登錄過程不表。
之后可以選擇預充值或者使用信用卡的方式來付款。(信用卡可以先使用后扣款)

創(chuàng)建云服務器并登錄

1. 創(chuàng)建云服務器

登錄了Conoha的控制面板之后,點擊左側的追加服務器來創(chuàng)建一個新的云服務器。

Paste_Image.png

套餐內容可以全部默認,當然,你也可以選擇更高的配置,不過我覺得就最低配置就足以跑一個不錯的自定義游戲服務器還可以額外做一些諸如科學上網,建一個Wordpress博客之類的小事了。
注意點有兩個:

  1. 如果你的游戲的玩家群體主要是國內(美國、歐洲)的玩家,區(qū)域推薦選擇美國(美國需要一些額外的費用),當然,如果大多數(shù)都是國內的玩家,推薦選擇東京。
  2. 操作系統(tǒng)就服務器的需求的話,其實是選擇CentOS要更好,不過因為我個人已經非常習慣使用Ubuntu的apt-get之類的了,所以我會選擇Ubuntu,同時,由于最新的16.04系統(tǒng)會有一些兼容性問題,這里推薦選擇安裝Ubuntu14.04(64bit)。
  3. root密碼最好在其他地方確認輸入正確時候再粘貼到格子里面(因為這個密碼非常重要而且他沒有輸入兩次的設定)。
  4. 推薦生成一個ssh key來供登錄使用,當然,如果你對于ssh key的操作不熟悉,還是只創(chuàng)建一個密碼用來登錄就足夠了。
    點擊追加來完成服務器的創(chuàng)建,之后會顯示建筑狀態(tài)(Building還是Constructing?),等待一會只要幾秒鐘,服務器就會創(chuàng)建成功并允許登錄了。等待狀態(tài)變成啟動狀態(tài)之后,點擊名稱標簽進入服務器。
Paste_Image.png

進去之后展開網絡信息,復制IP地址,之后就可以使用這個IP登錄云服務器了。

2. 登錄云服務器

登錄云服務器,分平臺的不同

OSX及Linux

使用自帶的終端連接云服務器就足夠了。

Windows

在windows下,可以下載一個 Putty 或者 MobaXTerm 來登錄云服務器,這里推薦使用 MobaXTerm 來登錄,會比較容易。而且功能整合得比較多。

在終端或者MobaXTerm的終端輸入

ssh root@你的云服務器IP地址

來登錄云服務器,之后會要求你輸入密碼,完成密碼的輸入之后就會顯示

root@xxx-xxx-xx-xxx:~#

這樣你就完成了登錄你的云服務器的工作了。

第二部分:環(huán)境搭建與Hello World

1.確認python的安裝及python版本

在登錄云服務器之后,輸入python,將會進入python交互界面,如果不出意外,將會出現(xiàn)的是python2.7.6的版本。

Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

確認python的安裝之后,按Ctrl+D退出python交互模式。

2.安裝PIP并安裝python擴展

安裝PIP

apt-get install python-pip python-dev build-essential 
pip install --upgrade pip
pip install --upgrade virtualenv 

在終端嘗試輸入 pip并回車,如果出現(xiàn)了pip的幫助提示,則說明已經裝好了pip,如果沒有出現(xiàn),還要麻煩百度一下你所選擇的操作系統(tǒng)的pip安裝方式,一般都會很簡單。

之后在終端輸入

pip install flask
pip install trueskill
pip install pymongo

(可以一次性復制上面的所有代碼并粘貼到你的終端中,將會自動完成所有的安裝工作)。
這里我們安裝了幾個東西:

  • Flask——一個python web框架來作為服務器端腳本
  • TrueSkill——一個來自于微軟的積分算法用來給我們的玩家們計算積分
  • PyMongo——一個python用來操作MongoDB服務器的庫

如果安裝正確的話,在每個安裝完成之后應當顯示:

Successfully installed pymongo
Cleaning up...

這樣的內容。

3. 安裝MongoDB

你當然可以使用apt-get安裝mongodb

apt-get install mongodb

不過問題就是,apt-get源里面的mongodb版本會比較低,推薦還是使用官方提供的下載地址下載tar ball之后編譯安裝,具體安裝過程還請自行百度(如果你認為太復雜的話,那就使用apt-get的源安裝就夠了)

代碼編寫

新建一個python代碼文件夾并打開

mkdir ~/python
 cd ~/python

(如果你使用的是windows的MobaXTerm,可以在左邊的browser勾選follow terminal,這樣就會自動定位到當前的文件夾位置)

vi server.py

進入代碼編輯。
按I之后進入代碼編輯模式,鍵入如下內容

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'hello world'

if __name__ == '__main__':
    app.run()

輸入完成之后,按ESC,之后輸入:wq(依次按shift+;,w,q,回車)保存并退出編輯器。
之后在終端輸入

python server.py

如果沒有報錯的話,應該顯示這樣的內容

* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

要注意的是,因為云服務器安全設定的關系,你是無法其他電腦上連接到這個5000端口的,這個時候為了測試,你可以再在MobaXTerm(windows)或者Terminal里面打開一個新的session,用ssh登錄服務器,并輸入

curl http://localhost:5000

如果返回

curl http://localhost:5000
hello world

的話,就說明你的代碼木有寫錯 xD

當然,這個時候你的服務器一點用都沒有,一個無法訪問的服務器有什么用呢?
這里我們再輸入 vi server.py
將最后一行的

    app.run()

改成

    app.run(host='0.0.0.0', port=9001, debug=True)

之后再次esc+:wq保存退出,再輸入

python server.py

這個時候你再在自己的電腦上打開一個瀏覽器,輸入 你的服務器IP地址:9001的話,就應該可以在顯示器中看到hello world了。
這個部分到此結束。
順道說一句,為了以后開發(fā)的方便,我們總不能一直在終端使用vim寫代碼,大家可以用MobaXTerm非常方便的文件瀏覽器,打開服務器的文件,修改之后保存即可,也可以使用FileZilla 之類的軟件來完成文件的上傳下載。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,039評論 25 709
  • # Python 資源大全中文版 我想很多程序員應該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,835評論 6 427
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評論 19 139
  • 都說當媽懷胎十月不容易,生出來的娃一定要孝順。在我家的畫風卻是這樣的 “老公你管不管,別人老公毆打你老婆啦” “管...
    脾氣的奶娘閱讀 481評論 0 1
  • Linux文件屬性 使用ls -al后,查看目錄文件: 上述各列的意義如下: 1:權限2:連接3:所有者4:用戶組...
    zshanjun閱讀 318評論 0 0

友情鏈接更多精彩內容