天天看点

golang(4):编写socket服务,简单支持命令

使用golang开发socket服务还是非常简单的。

socket的库都封装好了。

参考文档:

<a href="https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/08.1.md">https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/08.1.md</a>

通过net.listentcp(“tcp”, tcpaddr) 创建一个服务,

然后用for循环,通过listener.accept() 再创建一个goroutinue处理。

测试,使用telnet测试

当客户端输入参数的时候,服务端可以处理。

这里遇到几个问题一个是客户端输入的带回车\r\n要替换掉。

在一个字符串比较用等号即可,但是byte转换字符串长度不一样,需要特殊处理。

客户端telnet调用:当输入time返回时间,当输入exit关闭连接。

使用golang开发服务端还是非常方便的。

代码非常简洁,配合上goroutinue就可以写出高效的服务端代码。