版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、PHP在金山游戲運(yùn)營中的應(yīng)用,張宴,30分鐘,議 題,PHP在金山游戲官方網(wǎng)站()中的應(yīng)用: 、PHP團(tuán)隊(duì)協(xié)作開發(fā); 、PHP系統(tǒng)架構(gòu)應(yīng)用。 PHP在金山游戲運(yùn)營系統(tǒng) Keyes 中的應(yīng)用: 、分層架構(gòu)設(shè)計(jì)模型; 、通用性API接口設(shè)計(jì)。,PHP在金山游戲運(yùn)營中的應(yīng)用,PHP在金山游戲官方網(wǎng)站()中的應(yīng)用,PHP在金山游戲運(yùn)營中的應(yīng)用,PHP團(tuán)隊(duì)協(xié)作開發(fā)環(huán)境,團(tuán)隊(duì)協(xié)作,多人同時(shí)開發(fā)一個(gè)PHP項(xiàng)目時(shí),開發(fā)環(huán)境、測試環(huán)境,如何即滿足每位程序員的快速調(diào)試需求,又做到版本控制?,PHP在金山游戲運(yùn)營中的應(yīng)用,PHP團(tuán)隊(duì)協(xié)作開發(fā)環(huán)境,PHP在金山游戲運(yùn)營中的應(yīng)用,PHP團(tuán)隊(duì)協(xié)作開發(fā)環(huán)境,PHP在金山游戲
2、運(yùn)營中的應(yīng)用,開發(fā)了協(xié)作開發(fā)環(huán)境 配置工具:XDevelop,PHP團(tuán)隊(duì)協(xié)作開發(fā)環(huán)境,在自己的電腦上,修改完一個(gè)文件(例如:phpinfo.php),即可馬上用瀏覽器運(yùn)行、調(diào)試;,PHP在金山游戲運(yùn)營中的應(yīng)用,設(shè)置“C:WINDOWSsystem32driversetchosts”為本機(jī)IP: ,本地調(diào)試沒問題后,再提交SVN;,提交到SVN后,自動(dòng)同步到Linux測試服務(wù)器,供后續(xù)測試。,PHP團(tuán)隊(duì)協(xié)作開發(fā)環(huán)境,PHP在金山游戲運(yùn)營中的應(yīng)用,在Windows上編寫的PHP代碼文件,用Linux環(huán)境的PHP(FastCGI)來調(diào)試,保證了開發(fā)環(huán)境、測試環(huán)境、生成環(huán)境的統(tǒng)一;
3、,整個(gè)PHP開發(fā)環(huán)境、測試環(huán)境,即保證了程序員的快速修改、調(diào)試代碼需求,又保證了整個(gè)代碼都在SVN版本控制之中。,PHP代碼的統(tǒng)一性保證,PHP在金山游戲運(yùn)營中的應(yīng)用,“開發(fā)環(huán)境線下測試環(huán)境線上測試環(huán)境線上正式環(huán)境”,連接的MySQL、Memcached、接口IP、端口各不同,程序員一頭霧水,經(jīng)常改錯(cuò)配置文件或忘記修改,如何解決?,誰最了解各種服務(wù)器環(huán)境的配置?系統(tǒng)工程師。,那么,為什么不分離?,PHP代碼的統(tǒng)一性保證,PHP在金山游戲運(yùn)營中的應(yīng)用,解決方案:自行開發(fā)“配置管理后臺+PHP擴(kuò)展”,通過實(shí)現(xiàn)一個(gè)函數(shù)kae_config(),在不同的服務(wù)器環(huán)境,可以獲取到不同的配置信息,保證PHP
4、配置文件不用因環(huán)境不同而修改。, array ( host = mysql_name_masterhost.:.$mysql_name_masterport, username = $mysql_name_masteruser, password = $mysql_name_masterpass, ), slave = array ( host = $mysql_name_slavehost.:.$mysql_name_slaveport, username = $mysql_name_slaveuser, password = $mysql_name_slavepass, ), ); ?,P
5、HP代碼的上線發(fā)布與回滾,PHP在金山游戲運(yùn)營中的應(yīng)用,將上線發(fā)布的版本號(例如:2.1.46),與SVN版本號(例如:r21909)相對應(yīng),建立擁有Web界面的PHP代碼發(fā)布系統(tǒng)。,代碼的發(fā)布上線,可由項(xiàng)目負(fù)責(zé)人(工程師)自行完成,一般無需系統(tǒng)工程師的協(xié)助。,PHP代碼發(fā)布系統(tǒng),PHP在金山游戲運(yùn)營中的應(yīng)用,PHP代碼發(fā)布系統(tǒng),PHP在金山游戲運(yùn)營中的應(yīng)用,PHP與開源產(chǎn)品、C/C+程序的結(jié)合,PHP在金山游戲運(yùn)營中的應(yīng)用,方式一:利用PHP客戶端擴(kuò)展,通過TCP協(xié)議與C/C+開源程序進(jìn)行通訊(例如,與Sphinx搜索、分布式圖片處理系統(tǒng)、TT、Memcached通訊);,PHP與開源產(chǎn)品、
6、C/C+程序的結(jié)合,PHP在金山游戲運(yùn)營中的應(yīng)用,方式二:利用fsocketopen()、file_get_contents()、cURL等函數(shù),通過HTTP協(xié)議與C/C+開源程序進(jìn)行通訊。(例如,與我們自行開發(fā)的開源簡單消息隊(duì)列軟件:HTTPSQS【,PHP Web程序中的異步處理,PHP在金山游戲運(yùn)營中的應(yīng)用,在PHP Web程序中,發(fā)送手機(jī)短信、電子郵件、轉(zhuǎn)換視頻格式、記錄日志、數(shù)據(jù)挖掘采集等,都是比較耗時(shí)的操作。,為了增強(qiáng)用戶體驗(yàn),需要將這些操作轉(zhuǎn)為異步執(zhí)行。,PHP Web程序中的短耗時(shí)異步處理,PHP在金山游戲運(yùn)營中的應(yīng)用,前提:使用Nginx+PHP(php-fpm FastCG
7、I)架構(gòu)。,PHP-FPM 提供了fastcgi_finish_reques()函數(shù)。,PHP Web程序中的短耗時(shí)異步處理,PHP在金山游戲運(yùn)營中的應(yīng)用,fastcgi_finish_reques()函數(shù)的缺點(diǎn):,PHP FastCGI 進(jìn)程數(shù)有限,正在處理異步操作的php-cgi進(jìn)程,無法處理新請求;,如果并發(fā)訪問量較大,php-cgi進(jìn)程數(shù)用滿,新訪問請求,將沒有php-cgi去處理。Nginx服務(wù)器會(huì)出現(xiàn): 502 Bad Gateway。,PHP Web程序中的長耗時(shí)異步處理,PHP在金山游戲運(yùn)營中的應(yīng)用,使用簡單消息隊(duì)列,來解決長耗時(shí)異步處理:,PHP在負(fù)載均衡架構(gòu)中的約束,PHP
8、在金山游戲運(yùn)營中的應(yīng)用,PHP在Web服務(wù)器負(fù)載均衡架構(gòu)中的約束,PHP在金山游戲運(yùn)營中的應(yīng)用,數(shù)據(jù)對象的緩存,用APC、Memcached代替;,PHP Web程序,不在Web服務(wù)器上生成html靜態(tài)文件、PHP文件、緩存文件;,HTML輸出網(wǎng)頁的緩存,用前端的Nginx負(fù)載均衡軟件,來實(shí)現(xiàn);,優(yōu)點(diǎn):Web服務(wù)器上,PHP文件能夠通過代碼發(fā)布系統(tǒng)統(tǒng)一管理,增、刪Web服務(wù)器,非常快捷;清除緩存,能夠由系統(tǒng)工程師去統(tǒng)一管理。 不經(jīng)過代碼發(fā)布系統(tǒng)生成、修改的PHP文件,Web服務(wù)器自動(dòng)禁止執(zhí)行,做到防篡改、防掛馬。,PHP在Web服務(wù)器負(fù)載均衡架構(gòu)中的約束,PHP在金山游戲運(yùn)營中的應(yīng)用,如果需要
9、記錄Session會(huì)話,在負(fù)載均衡服務(wù)器上做IP哈希,或在PHP Web服務(wù)器上做Session共享,必不可少。,PHP在金山游戲運(yùn)營系統(tǒng) Keyes 中的應(yīng)用,PHP在金山游戲運(yùn)營中的應(yīng)用,界面、接口、支撐,分層架構(gòu)設(shè)計(jì),PHP在金山游戲運(yùn)營中的應(yīng)用,PHP、C程序的交互,PHP在金山游戲運(yùn)營中的應(yīng)用,數(shù)據(jù)交互設(shè)計(jì),運(yùn)營指令(修改經(jīng)驗(yàn)倍數(shù)、踢人、發(fā)消息廣播、啟動(dòng)游戲、停止游戲、更新游戲程序、更新配置文件、并服) 步驟: 服務(wù)器監(jiān)控(CPU、磁盤、內(nèi)存、進(jìn)程數(shù)、系統(tǒng)負(fù)載、游戲服務(wù)端進(jìn)程是否存在等) 步驟: 游戲心跳檢測(Ping包檢測,確定游戲是否正常運(yùn)行) 步驟: 游戲在線人數(shù)(查看游戲總在線人數(shù)、各地圖在線人數(shù)) 步驟:,兩個(gè)步驟表示KingEyes“管理界面”通過AJAX輪詢請求“功能接口”獲取返回信息。,一套程序兼容不同游戲的服務(wù)端架構(gòu),PHP在金山游戲運(yùn)營中的應(yīng)用,派大巴車來接啦!,KE游戲運(yùn)營平臺,與游戲進(jìn)程交互的初期接口設(shè)計(jì)方案,一套程序兼容不
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026屆河南省濮陽市臺前一高數(shù)學(xué)高二上期末學(xué)業(yè)水平測試模擬試題含解析
- 內(nèi)鄉(xiāng)介紹教學(xué)課件
- 烘焙培訓(xùn)機(jī)構(gòu)的管理制度(3篇)
- 美術(shù)功能室管理制度小學(xué)(3篇)
- 轉(zhuǎn)運(yùn)司機(jī)的閉環(huán)管理制度(3篇)
- 采樣儀器維護(hù)和管理制度(3篇)
- 中學(xué)學(xué)生社團(tuán)活動(dòng)成果展示制度
- 養(yǎng)老院消毒隔離制度
- 企業(yè)企業(yè)文化與團(tuán)隊(duì)建設(shè)制度
- 2026湖南邵陽市邵東市人才引進(jìn)62人參考題庫附答案
- 2026年伊春職業(yè)學(xué)院單招綜合素質(zhì)考試必刷測試卷及答案1套
- 焦化廠儀表工崗位考試試卷及答案
- 餐廳充值服務(wù)合同范本
- 2025年汽車洗滌器總成行業(yè)分析報(bào)告及未來發(fā)展趨勢預(yù)測
- 麻疹知識培訓(xùn)內(nèi)容總結(jié)
- 2025年事業(yè)單位招聘考試綜合類專業(yè)知識試題(體育)
- 高考語文強(qiáng)基試卷及答案
- 安全生產(chǎn)責(zé)任保險(xiǎn)培訓(xùn)課件
- 機(jī)械工程的奧秘之旅-揭秘機(jī)械工程的魅力與價(jià)值
- 2025年國家公務(wù)員考試公共基礎(chǔ)知識模擬試卷及答案(共五套)
- 雨污分流監(jiān)理工作總結(jié)報(bào)告
評論
0/150
提交評論