日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

游戏服务器正式发布时动态库处理的两种策略

發(fā)布時(shí)間:2024/2/28 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 游戏服务器正式发布时动态库处理的两种策略 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

引言

今天幫同事解決hiredis動(dòng)態(tài)庫問題的時(shí)候,發(fā)現(xiàn)他是同時(shí)安裝了兩套hiredis,用的頭文件是新版的,bin文件指向的動(dòng)態(tài)庫.so文件卻是舊的,引發(fā)了莫名其妙的問題,解決后討論時(shí)又引出了一個(gè)問題,就是日后游戲發(fā)布時(shí)這些動(dòng)態(tài)庫怎么搞?隨著bin文件一起?還是每個(gè)服務(wù)器各自安裝?

?

結(jié)論

方法1:和bin文件放在一起或相鄰的lib目錄,即所有用到的動(dòng)態(tài)庫(系統(tǒng)自帶庫除外),比如libmysql.so libhiredis.so libmysqlpp.so等等,都和bin文件放在同一個(gè)目錄下或相鄰lib目錄,新建一個(gè)配置文件,比如myserver.conf,這個(gè)文件里面記錄本游戲bin文件所在目錄或lib所在目錄,比如" /home/myserver/lib",游戲發(fā)布時(shí)只需拷貝這個(gè)整體文件夾到目標(biāo)服務(wù)器的/home/myserver目錄下,把myserver.conf拷貝到目錄 /etc/ld.so.conf.d/ 中,運(yùn)行命令ldconfig,這樣游戲的bin文件就指向了自己上傳的so文件

方法2:做系統(tǒng)鏡像, 即做好一個(gè)游戲運(yùn)行環(huán)境,安裝必要的庫,比如mysql, hiredis, mysqlpp等,游戲可以正常運(yùn)行了就以此游戲?yàn)槟0?#xff0c;做鏡像,以后再開服時(shí)拿鏡像系統(tǒng)就能開搞,保證環(huán)境一模一樣

?

思考

兩種辦法各有優(yōu)略,哪種方法更好呢?

方法1可以更好的打包,壓縮后隨便拷貝;方法2雖然第一次做鏡像系統(tǒng)麻煩些,以后用著也蠻方便的

方法1也有個(gè)缺點(diǎn),如果目標(biāo)服務(wù)器上已經(jīng)有對(duì)應(yīng)的so文件了,會(huì)不會(huì)混淆又難以發(fā)現(xiàn),引發(fā)莫名其妙的問題,比如目標(biāo)服務(wù)器已經(jīng)安裝了mysql,但是版本和自己用的不同,這個(gè)時(shí)候自己的服務(wù)器bin文件會(huì)不會(huì)依然指向系統(tǒng)的so文件???這個(gè)問題尚需驗(yàn)證

?

?

?

總結(jié)

以上是生活随笔為你收集整理的游戏服务器正式发布时动态库处理的两种策略的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。