# tcpsocket_server **Repository Path**: tekintian/tcpsocket_server ## Basic Information - **Project Name**: tcpsocket_server - **Description**: 单机轻松支持百万并发的 tcp socket server client 服务端,客户端程序 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: https://dev.tekin.cn - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-05-09 - **Last Updated**: 2024-05-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 快速入门应用实例 程序框架图示意图 服务器端功能: 1) 编写一个服务器端程序,在8888端口监听 哿匪谈限焉公客塞誉樂鷕鐵装 链接成功后,客户端可以发送数据,服务器端接受数据,并显示在终端上.先使用telnet 来测试,然后编写客户端程序来测试 NewFile(uintptr(syscall.Stdin), "/dev/stdin") ## 相关资源 ### package net import "net" net包提供了可移植的网络I/O接口,包括TCP/IP、UDP、域名解析和Unix域socket。 虽然本包提供了对网络原语的访问,大部分使用者只需要Dial、Listen和Accept函数提供的基本接口;以及相关的Conn和Listener接口。crypto/tls包提供了相同的接口和类似的Dial和Listen函数。 Dial函数和服务端建立连接: ~~~go conn, err := net.Dial("tcp", "google.com:80") if err != nil { // handle error } fmt.Fprintf(conn, "GET / HTTP/1.0\r\n\r\n") status, err := bufio.NewReader(conn).ReadString('\n') // ... //Listen函数创建的服务端: ln, err := net.Listen("tcp", ":8080") if err != nil { // handle error } for { conn, err := ln.Accept() if err != nil { // handle error continue } go handleConnection(conn) } ~~~