零聲C++Linux服務(wù)器開發(fā)高級
Linux服務(wù)器程序規(guī)范?
1.?Linux服務(wù)器程序一般以后臺進(jìn)程形式運(yùn)行(已報名零聲服務(wù)器linuxC 底部評)。后臺進(jìn)程又稱守護(hù)進(jìn)程(daemon),它沒有控制終端,因而不會意外接收到用戶輸入。父進(jìn)程通常為init(PID為1的進(jìn)程)
2. Linux服務(wù)器程序常有一套日志系統(tǒng),至少能輸出日志到文件,有的高級服務(wù)器能輸出到專門的udp服務(wù)器。大部分后臺程序都在/var/log目錄下有自己的日志目錄
3.?Linux服務(wù)器程序一般以某個專門的非root身份運(yùn)行。如mysqld,httpd,syslogd等后臺進(jìn)程,分別擁有自己的運(yùn)行賬戶mysql,apache,syslog
4. Linux服務(wù)器程序通常是可配置的。服務(wù)器程序通常能處理很多命令行選項(xiàng),如果一次運(yùn)行的選項(xiàng)太多,則可以用配置文件來管理。絕大多數(shù)服務(wù)器程序都有配置文件,并存放在/etc目錄下
5. Linux服務(wù)器程序通常會在啟動的時候生成一個pid文件并存放入/var/run目錄中,以記錄該后臺進(jìn)程的pid。比如syslogd的pid文件是/var/run/syslogd.pid
6. Linux服務(wù)器程序通常需要考慮系統(tǒng)資源和限制,以預(yù)測自身能承受多大負(fù)荷,比如進(jìn)程可用文件描述符總數(shù)和內(nèi)存總量
標(biāo)簽: