Go核心开发学习笔记(三十) —— TCP/IP,网络编程

本文主要介绍了TCP/IP基础知识,包括OSI七层模型和TCP/IP四层结构,并探讨了C/S和B/S结构的区别。重点讲解了Go语言中TCP SOCKET编程的Server和Client端的实现流程,强调了服务器端的监听、连接处理和goroutine使用,以及客户端的链接建立、数据发送与接收。最后,提供了实战练习,实现了一个C/S模型的发送接收信息的例子。
摘要由CSDN通过智能技术生成

TCP/IP知识略过,大致总结一下几点

  1. 理解OSI七层模型理论,理解TCP/IP模型的四层结构:应用层,传输层,网络层,网络接口层。
  2. TCP/IP协议包含非常多的协议,TCP和IP只不过是其中最有代表性的两种。
  3. C/S结构:代表IM,属于TCP SOCKET编程; B/S结构:代表JD商城,属于HTTP编程,HTTP也是TCP/IP协议的一部分。
  4. 关于网络部分,必须深刻理解TCP/IP,才能做好后续开发,本处不再赘述。
  5. 端口少开,多开一个多一份风险,服务器能少开端口就少开;系统必须纯净版;单端口对应单程序,不能复用;

TCP SOCKET编程的Client端和Server端

  1. 一般是多Client对应少数Server。
  2. 服务器端的处理流程:
    监听端口(Listening);
    接收客户端的TCP请求,建立客户端与服务器端链接;
    创建goroutine,处理该链接请求(Client通过发送请求包)。
  3. 客户端的处理流程:
    建立与服务端的链接(通过随机定义的端口链接服务器监听端口);
    发送请求数据,接收服务器端返回的结果数据;
    关闭链接(TCP占资源开销,类似打开文件要defer关闭防止内存泄漏);

实战练习,写一个Server和Client的C/S模型发送接收信息,终端输入,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值