linux游戲伺服器
『壹』 為什麼用 linux 做伺服器 如果做用它做游戲伺服器, 支持多少 用戶同時在線
讓我來為你解答。你的問題,最重要的不是操作系統的問題,而是你的架構選擇的問題。你所說的MyEclipse+Tomcat這個根本就不搭嘛,由此可見你不懂架構。MyEclipse只是一個IDE而已,就用途和記事本是一樣的,而Tomcat可以說是一個應用伺服器,中間件的組成部分,用於J2EE的開發。
你這樣說我就默認你們做的是網頁游戲,因為做PC游戲的,不管是網游還是單機,沒人用Java寫。
如果是網游,並且想獲得高並發,那麼推薦使用Linux。Linux的性價比絕對是最好的,穩定高性能。這點Windows比不上,原因就在於兩個系統的底層設計上,Windows本身的設計決定了它沒法處理很高的並發,如果你懂網路編程的話就很容易理解,在UNIX系統上有非常牛的功能就是I/O多路復用,通過該功能,可以輕易支持上千甚至幾萬的並發(當然機器的配置要跟上)。而Linux相對於UNIX不僅實現了傳統的I/O多路復用,更提供了e-poll介面,e-poll介面如果正確使用的話可以帶來性能的極大提升,也正是這個原因Nginx網頁伺服器在短期內侵蝕了Apache的部分市場份額。而Windows雖然也有I/O多路復用的概念,但其實是信號驅動的,僅是功能的模擬,而沒能在內核中真正優化。Windows下要高的並發,只有一種辦法,就是做線程池,還是得信號驅動並發。所以Windows在普通計算機上的並發就少的可憐了,其實即使實在伺服器、小型機、大型機上如果裝Windows也是浪費,Windows同UNIX/Linux在做開發上看簡直就是小巫見大巫了,只能是大眾產品,而不能是高端產品。你可以對比一下Windows同商業級UNIX/Linux的價格,就知道那個牛了。
Windows為了同UNIX兼容,不要認為Windows是最好的,最早的,這個普通人說說就算了,學計算機的說出去讓人笑死。最當初的網路誕生自伯克利版本的UNIX,之後Linux在94年時就擁有了網路功能,微軟在94年時的操作系統還是單用戶,單任務的。而UNIX與Linux早已是多用戶、多任務的了。就連圖形界面,都是最先在UNIX開發出來的。至於如今為什麼UNIX/Linux的圖形界面沒有廣泛的被人知道,其原因不是不先進,而是剛開始定位就不是給普通人用的。你可以去大公司悄悄,銀行、保險、證券、研究所、政府軍方核心部門,都使用UNIX,民間使用的桌面UNIX比如蘋果的Mac,都不錯。就是因為UNIX是最好的,所以IBM、Oracle任何一家,都有能力同微軟抗衡,在企業級市場尤其是高端企業市場,微軟的發言權很少。
『貳』 對於游戲伺服器而言,是Linux好還是Win Server好為什麼
說到伺服器系統的選型,Windows Server用戶和Linux用戶又會開啟碾壓模式,始終都覺得自己選擇的系統優於其它系統。其實站在中立角度來說,存在即有價值,不管是Windows Server還是Linux,都有自身的優劣勢,最終選擇哪款系統還是要看項目實際情況而定。
1、Windows Server傻瓜式操作,入門門檻低,安全性低
可以說99%的人選擇Windows Server作為其伺服器操作系統是因為它的入門門監低,因為都是可視化窗口操作,可以這樣說,只要會基本的電腦操作的用戶花幾天時間就能完全掌握Windows Server的管理和維護。
但不可否認的是Windows Server的安全性是比不上Linux類系統的,這里不需要多說什麼,大家可以看看所有的殺毒軟體都是針對Windows平台的,像Linux和macOS上的殺毒軟體基本沒有。
2、Linux安全性高,但門檻過高
Linux內核系統以安全據稱,搞過軟體開發的朋友都知道,在Linux平台上執行某些程序時經常會遇到許可權不足的情況,這是因為Linux的許可權設計得很嚴格,所以在操作上就略顯繁瑣了。
另外,Linux類系統主打的是終端模式,而不是桌面版系統。所以很多用戶在面對Liunx黑色的命令行模式時就顯得力不從心,望而生畏。
現在的程序開發語言很多,基本上每種都可以去開發服務端程序,所以最終 游戲 伺服器系統的選擇要看這個服務端程序是用什麼語言開發的。
對於Java、C/C++、PHP、Python、Node.js等都是跨平台的,可以在Linux和Windows Server等系統上運行;但對於微軟系的開發語言(如:VB、C#、.NETCore)等也就只能在Windows Server上運行了。
那肯定是linux好。linux安全,高效。如果需要,甚至任何一台安卓手機,都可以做個可靠的linux微型伺服器。
微軟伺服器,每個禮拜都要關機維護一次。不然磁碟碎片太多,後面會越來越慢。linux伺服器不需要維護這個。因為linux伺服器,沒有磁碟碎片問題。
微軟內核沒有公布,裡面含著各種秘密後門,比如安全局秘鑰特種許可權。整個微軟伺服器非常不安全。最多隻能用在不需要保密的 娛樂 伺服器上面。
其實,微軟內核對美軍情報部門是秘密公開的。任何一位美國安全局特工,都可以輕易的利用,微軟特殊秘鑰。獲取,全球任何一台微軟伺服器的一切資料。
linux內核是公開的,所以伺服器,自然沒有看不見的後門。因此,無論是金融銀行,還是需要保證技術安全的互聯網巨頭,以及先進技術需要保密的製造巨頭企業,最後公文需要保密的公權力黨政軍機關單位。都會優先使用linux伺服器。
做 游戲 ,如果伺服器被黑了。最壞的可能,意味著破產,所以呢,還是必須老實的擁抱linux。
這個問題其實可以從兩方面來考慮:
一、性能方面在專業人士經常使用來看區別不是很大,也不會說是存在碾壓的情況。Linux中的線程切換速度比Win server快,但是安全性方面Win server比Linux要好一點,之所以這樣說是Win 的易用性比較高,一般人士都會因為各種情況給Win防護牆開路。但是在小白手裡經常出現的情況要是放到Linux上那就比較嚴重了。
二、其次就是經濟上考慮的話Linux 免費 Win server 花錢(比較貴),但是Linux用起來比較復雜一點(要配合工作產出比來衡量)。
所以,選擇他們其中一個都是可以的,主要是看你用哪個最方便適合,更專精於哪個。有句老話難者不會,會者不難。根源就在於人,系統都是面向全世界的存在即合理!選擇看自己!
理由如下:
希望對你有幫助
游戲 伺服器其實真的不復雜,主要是多簡單指令,高並發,這恰恰是Linux的長處,然而既然性能要求不高,那麼win其實完全也夠用了,順帶還可以有更容易上手的交互界面和資料庫支持。
所以,沒有誰更好的說法,用誰都夠用
小白用windows,大神用linux,相對來說linux更安全,同配置性能略優,windows操作方便,使用簡單,運維更容易點!
用著好就行,實際上win應該更好些,畢竟有大公司更新維護。亂改的測試平台就是以個人喜好為主。
linux,穩定性好。
『叄』 steam 平台 飢荒 聯機版 Linux雲伺服器 搭建教程
針對 Steam 平台的《飢荒》聯機版在 Linux 雲伺服器上的搭建教程,以下是一份簡潔的步驟指南:
1. 伺服器選購與設置:選擇雲伺服器時,由於《飢荒》是單核游戲,推薦選擇 2 核配置,主頻越高越好。4GB 內存足以應對,但若需大型 mod,8GB 可能更合適。騰訊雲的輕量級應用伺服器,如2核4GB8MB,性價比高,適合6到10人游戲。購買鏈接見文中。
2. 帶寬選擇:1M-4人或3M-10人帶寬通常夠用,5M以上可能浪費,具體根據玩家數量調整。國內雲服務商如阿里雲、騰訊雲或華為雲,視優惠活動選擇。
3. 伺服器位置與系統選擇:優先選擇地理位置近的伺服器,降低延遲。推薦使用 64 位系統,騰訊雲可選 CentOS 7.6,阿里雲或華為雲可選 Ubuntu 16 或 18。伺服器購買後,通過控制台重置密碼。
4. 搭建流程:加入相關群組獲取安裝腳本,上傳至雲伺服器並賦予執行許可權。獲取《飢荒》聯機伺服器令牌並保存至指定文件。創建新存檔,設置完成後將文件上傳。啟動游戲時,地面模式使用腳本,洞穴模式則通過screen啟動。
5. 常見問題解答:房間在雲伺服器運行,無需本地電腦操作。無人游戲暫停,可設置密碼保護。雲服回檔操作和本地一致,使用控制台指令。寶塔防火牆可能影響搜索大廳,需關閉或換用非寶塔系統。
通過以上步驟,你將能成功在 Linux 雲伺服器上搭建並運行《飢荒》聯機版,享受低延遲的游戲體驗。
『肆』 誰知道用LINUX做網吧伺服器的無盤系統怎麼做
客戶端是支持PXE方式啟動的刀片,用Linux作為伺服器,伺服器配置如下:
1) 安裝DHCP伺服器dhcpd
2) 配置/etc/dhcpd.conf文件,下面是我機器上的文件
max-lease-time -1;
default-lease-time -1; #注:IP地址永不過期
option subnet-mask 255.0.0.0;
option routers 10.0.0.1;
option domain-name-servers 10.10.10.10;
# option netbios-name-servers 10.10.10.10;
option broadcast-address 10.255.255.255;
# option dhcp-class-identifier "XEClient";
# option vendor-encapsulated-options 01:04:00:00:00:00:ff;
# option option-135 "start";
subnet 10.0.0.0 netmask 255.0.0.0 {
range 10.10.12.131 10.10.12.150;
host blade01 {
hardware ethernet 00:e0:43:00:02:00;
fixed-address 10.10.12.131;
filename "/tftpboot/pxelinux.0"; #注:啟動映象文件
}
host blade02 {
hardware ethernet 00:e0:43:00:02:02;
fixed-address 10.10.12.132;
filename "/tftpboot/pxelinux.0";
}
host blade03 {
hardware ethernet 00:e0:43:00:02:04;
fixed-address 10.10.12.133;
filename "/tftpboot/pxelinux.0";
}
host blade04 {
hardware ethernet 00:e0:43:00:02:06;
fixed-address 10.10.12.134;
filename "/tftpboot/pxelinux.0";
}
host blade05 {
hardware ethernet 00:e0:43:00:02:08;
fixed-address 10.10.12.135;
filename "/tftpboot/pxelinux.0";
}
}
說明:dhcp客戶得到IP地址後用TFTP協議從伺服器上下載啟動映象文件。我用syslinux
工具包里邊的pxelinux來作為遠程啟動的loder.
3) 配置tftp server
使用pxelinux作引導工具需要支持TSIZE參數的tftp server。可從http://www.kernel.org/pub/software/network/tftp/下載。
通過xinetd來使用tftp服務,我的/etc/xinetd.conf文件如下
......
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
}
4) 配置PXELINUX
先安裝syslinux軟體包。可從http://www.kernel.org/pub/linux/utils/boot/syslinux/下載。
將pxelinux.0拷貝到/tftpboot/目錄下,然後建立/tftpboot/syslinux.cfg/目錄。該目錄下存放配置文件。
pxelinux使用ip地址的十六進製表示來作為該ip地址的配置文件的文件名。如blade01的
ip地址為10.10.12.131,配置文件名為0A0A0C83,內容為:
default linux
label linux
kernel vmlinuz
append ip=dhcp root=/dev/nfsroot nfsroot=10.10.11.120:/remote/blade01 vga=normal
5) 配置nfs
為每個刀片建立一個根目錄,在該刀片的pxelinux配置文件里指定了從這個nfs export的目錄啟動。
該根目錄里應把標準的目錄都建好,另外需要重新mount的usr, home, public等目錄也要export。
我的 /etc/exports文件:
# /etc/exports: the access control list for filesystems which may be exported
# to NFS clients. See exports(5).
/remote/blade01 blade01(rw,async,no_root_squash)
/remote/blade02 blade02(rw,async,no_root_squash)
/remote/blade03 blade03(rw,async,no_root_squash)
/remote/blade04 blade04(rw,async,no_root_squash)
/remote/blade05 blade05(rw,async,no_root_squash)
/remote/root *(rw,async,no_root_squash)
/remote/home *(rw,async,no_root_squash)
/usr *(ro,async,no_root_squash)
/sbin *(ro,async,no_root_squash)
/bin *(ro,async,no_root_squash)
/lib *(ro,async,no_root_squash)
/home *(ro,async,no_root_squash)
6)為每個刀片修改它的/etc/fstab文件,以blade01為例,它的nfs root是/remote/blade01
/remote/blade01/etc/fstab文件如下:
# /etc/fstab: static file system information.
#
#
10.10.11.120:/remote/blade01 / nfs defaults,intr 0 1
10.10.11.120:/remote/root /root nfs defaults,intr 0 1
10.10.11.120:/remote/home /home nfs defaults,intr 0 1
10.10.11.120:/bin /bin nfs defaults,intr 0 1
10.10.11.120:/usr /usr nfs defaults,intr 0 1
10.10.11.120:/sbin /sbin nfs defaults,intr 0 1
10.10.11.120:/lib /lib nfs defaults,intr 0 1
none /proc proc defaults,intr 0 1
同時還要為每個刀片修改它的網路配置文件,配置ip地址,啟動兩塊網卡等等。。
7) 編譯內核
刀片用的內核,應該支持Kernel Level Auto Configuration的DHCP協議,支持NFS,支持NFS ROOT,
假設編譯好的內核為vmlinuz,將它拷貝到/tftpboot/目錄下。
『伍』 Linux下搭建求生之路2(l4d2)伺服器的教程補充(細節點-小白專供)
大體上,這位大佬的教程已經非常完善了, 建議先通讀TA的文章 ,再通讀這篇。我增補一些這篇文章未提到但是有點讓人抓狂的細節點。相信仔細閱讀他的文章和我的文章,任何新手都能很從容的在linux下搭建屬於自己的求生之路2伺服器。
眾所周知,linux伺服器比windows伺服器有更穩定和更安全的特點,而且其伺服器利用效率較windows server更高,僅有一點問題,就是命令較多,難於熟記。不過也不用擔心,常用的只有為數不多的命令而已。
PS:本文採用的是阿里雲的cent os來進行實踐得出的教程。
PS:阿里雲目前有學生優惠,1核2G 5M 40GSSD的伺服器學生價僅9.5元/月,可以說相當不錯了,筆者其實也沒多加斟酌,隨便就選了阿里雲的。童鞋們可以自己多斟酌,國內知名雲伺服器基本都有學生優惠。
sm_cvar sv_gametypes 的參數分別為: coop-合作 versus-對抗 survival-生存
z_difficulty 所有參數分別為: Easy-簡單 Normal-普通 Hard-困難 Impossible-專家
此命令啟用的命令和任務可以通過按下ctrl+A和ctrl+D (按住ctrl按A再按D) 來退出當前screen而保留任務後台運行,退出後用exit命令安全斷開遠程連接.
下面這條命令可以重新打開後台的游戲伺服器任務。 若要關閉游戲伺服器,用 exit 命令.
新增 /home/sun/l4d2server/srcds_run 為絕對路徑,這樣start.sh無論移到任何目錄都可以啟動游戲伺服器
新增 +map c3m1 用於設置默認地圖
新增-maxplayers 8用於設置最大人數
新增 -tickrate xx用於設置伺服器的 tickrate
筆者附上自己的 server.cfg 部分有關 tickrate 的配置如下: