网络编程

本章内容:

  • 简介:
  • 客户端服务器架构
  • 套接字:通信端点
  • Python中的网络模块
  • *SockServer模块
  • *Twisted 框架介绍:

2.1 简介

本节将简要介绍使用套接字进行网络编程的知识。 然而,在深入研究之前,将介绍一些有关网络编程的背景信息,以及套接字如何应用于Python中,然后展示如何使用Python的一些模块来创建网络应用程序。

2.2 客户端/服务器架构

什么是客户端/服务器架构?对不同的人来说,它意味着不同的东西,这取决于你问谁以及描述的是软件还是硬件系统。在这两种情况的任意一种下,前提都很简单:服务器就是一系列硬件或软件,为一个或多个客户端提供所需要的“服务”。它存在的唯一目的就是等待客户端的请求,并响应它们,然后等待更多请求。

另一方面,客户端因特定的请求联系服务器,并发送必要的数据,然后等待服务器的回应,最后完成请求或给出故障原因。服务器无限的运行下去,并不断地处理请求:而客户端会对服务进行一次性请求,然后接受该服务,最后结束它们之间的事务。客户端在一段时间后可能会再次发出其他请求,但这些被当做不同的事务。

2.2.1 硬件客户端/服务器架构

打印(打印机)服务器是硬件服务器的一个例子。它们处理传入的打印机作业并将其发送给系统的打印机(或其他的打印设备)。这样的计算机通常可以通过网络进行访问,并且客户端计算机将向它发送打印请求。

硬件服务器的另外一个例子就是文件服务器。这些通常都是拥有庞大通用存储容量的计算机,可以被客户端远程访问。客户端计算机会挂载服务器计算机的磁盘,看起来好像这个就在本地计算机上一样,支持文件服务器的一个最流行的的系统就是Sun公司的网络文件系统(NFS).如果正在访问一个网络磁盘驱动器,并且无法分辨它是在本地还是网络上,那么此时客户端/服务器系统以及完成了它的任务。它的目标就是让用户得到与访问本地磁盘一样的体验,抽象起来就是正常的磁盘访问,而这些都是通过编程确保这种方式进行。

2.2.2 软件客户端/服务器架构

有人看么??没有看我就不写了啊。。。手打太累咯

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 计算机网络概述 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输。 按照计算机网络的定义,通过一定...
    蛋炒饭_By阅读 4,997评论 0 10
  • Socket编程 1基础知识 协议 端口号(辨别不同应用) TCP/IP协议 是目前世界上应用最广泛的协议是以TC...
    __豆约翰__阅读 4,741评论 0 3
  • iOS网络编程读书笔记 Facade Tester客户端门面模式的实例(被动版本化) 被动版本化,所以硬编码URL...
    melouverrr阅读 5,527评论 3 7
  • 涤烈生阅读 2,958评论 0 0
  • 前世以重逢终结 今生以重逢开始 我把心脏捧给你 鲜血跌进了土里 血凝固成茧 被灰尘裹瞎了双眼 前世的痴傻 换得今生...
    梅凉阅读 3,838评论 20 22