B/S结构

B/S(Brower/Server,浏览器/服务器)模式又称B/S结构,是Web兴起后的一种网络结构模式。Web浏览器是客户端最主要的应用软件。
这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用;
客户机上只需要安装一个浏览器,服务器上安装SQL Server, Oracle, MySql等数据库;浏览器通过Web Server同数据库进行数据交互。
B/S架构的分层:
与C/S架构只有两层不同的是,B/S架构有三层,分别为:
第一层表现层:主要完成用户和后台的交互及最终查询结果的输出功能。
第二层逻辑层:主要是利用服务器完成客户端的应用逻辑功能。
第三层数据层:主要是接受客户端请求后独立进行各种运算。

B/S架构工作原理:
网络编程(tcp socket编程) - 图1
image.png

Go网络编程有两种

1、TCP socket 编程,是网络编程的主流,之所以叫 TCP socket 编程,是因为底层是基于 TCP/IP 协议的。比如:QQ聊天()
2、B/S结构的 http 编程,我们使用浏览器去访问服务器的时候,使用的就是 htpp 协议,而http底层依旧是用 TCP socket 实现的。比如:京东商城(这是 go web 的范畴)

网线、网卡(无线网卡)

网络协议: https://www.yuque.com/allblue-byynd/gy51vo/zmzwsg

tcp socket 编程的快速入门

服务端的处理流程

  1. 监听端口
  2. 接收客户端的tcp链接,建立客户端和服务器端的链接.
  3. 创建goroutine,处理该链接的请求(通常客户端会通过链接发送请求包)

    客户端的处理流程

  4. 建立与服务端的链接

  5. 发送请求数据,接收服务器端返回的结果数据
  6. 关闭链接

    程序示意图

    image.png