開發(fā)一個(gè)并發(fā)TCP服務(wù)器,該服務(wù)器僅使用大約65行GO代碼生成隨機(jī)數(shù)。
TCP和UDP服務(wù)器隨處可見,通過TCP/IP網(wǎng)絡(luò)為網(wǎng)絡(luò)客戶端提供服務(wù)。在本文中,我將在GO編程語(yǔ)言,返回隨機(jī)數(shù)。對(duì)于來自TCP客戶端的每個(gè)傳入連接,TCP服務(wù)器將啟動(dòng)一個(gè)新的goroutine來處理該請(qǐng)求。
你可以找到這個(gè)項(xiàng)目,concTCP.go,在GitHub上。
處理TCP連接
程序的邏輯可以在handleConnection()職能,其實(shí)現(xiàn)方式如下:
func handleConnection(c net.Conn) { fmt.Printf("Serving %s\n", c.RemoteAddr().String()) for { netData, err := bufio.NewReader(c).ReadString('\n') if err != nil { fmt.Println(err) return } temp := strings.TrimSpace(string(netData)) if temp == "STOP" { break } result := strconv.Itoa(random()) + "\n" c.Write([]byte(string(result))) } c.Close() }
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。