UDP循環(huán)服務(wù)器 |
發(fā)布時(shí)間: 2012/6/19 17:30:24 |
UDP服務(wù)器每次從套接字上讀取一個(gè)客戶(hù)端的數(shù)據(jù)報(bào)請(qǐng)求,處理接收到的UDP數(shù)據(jù)報(bào),然后將結(jié)果返回給客戶(hù)機(jī)。 創(chuàng)建UDP循環(huán)服務(wù)器的算法如下:socket(……); //創(chuàng)建一個(gè)數(shù)據(jù)報(bào)類(lèi)型的套接字bind(……); //邦定公認(rèn)的短口號(hào)while(1) //開(kāi)始接收客戶(hù)端的連接{ //接收和處理客戶(hù)端的UDP數(shù)據(jù)報(bào)recvfrom(……);process(……);sendto(……);//準(zhǔn)備接收下一個(gè)客戶(hù)機(jī)的數(shù)據(jù)報(bào)}因?yàn)閁DP是非面向連接的,沒(méi)有一個(gè)客戶(hù)端可以獨(dú)占服務(wù)器。只要處理過(guò)程不是死循環(huán),服務(wù)器對(duì)于每一個(gè)客戶(hù)機(jī)的請(qǐng)求總是能夠處理的。 UDP循環(huán)服務(wù)器在數(shù)據(jù)報(bào)流量過(guò)大時(shí)由于處理任務(wù)繁重可能造成客戶(hù)技數(shù)據(jù)報(bào)丟失,但是因?yàn)閁DP協(xié)議本身不保證數(shù)據(jù)報(bào)可靠到達(dá),所以UDP協(xié)議是允許丟失數(shù)據(jù)報(bào)的。 鑒于以上兩點(diǎn),一般的UDP服務(wù)器采用循環(huán)方式4、UDP并發(fā)服務(wù)器把并發(fā)的概念應(yīng)用UDP就得到了并發(fā)UDP服務(wù)器,和并發(fā)TCP服務(wù)器模型一樣是創(chuàng)建子進(jìn)程來(lái)處理的。 創(chuàng)建UDP并發(fā)服務(wù)器的算法如下:socket(……); //創(chuàng)建一個(gè)數(shù)據(jù)報(bào)類(lèi)型的套接字bind(……); //邦定公認(rèn)的短口號(hào)while(1) //開(kāi)始接收客戶(hù)端的連接{ //接收和處理客戶(hù)端的UDP數(shù)據(jù)報(bào)recvfrom(……);if(fork(……)==0) //創(chuàng)建子進(jìn)程{ process(……);sendto(……);}除非服務(wù)器在處理客戶(hù)端的請(qǐng)求所用的時(shí)間比較長(zhǎng)以外,人們實(shí)際上很少用這種UDP并發(fā)服務(wù)器模型的。 服務(wù)器專(zhuān)員億恩天使QQ530997 分享 北京兆維五星級(jí)數(shù)據(jù)中心,5M獨(dú)享,1W元/年。 本文出自:億恩科技【prubsntakaful.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |