###C/S模型编程
####C/S模型概述 C/S(客户端/服务器)模型,是经常使用的服务器模型,包括如今说的B/S(浏览器/客户端)模型,都是对C/S结构的一种变化或者改进的结构。 TCP/IP协议在设计和实现上并无客户端和服务器的概念,在通讯过程当中全部服务器都是对等的。但因为资源被数据提供者所垄断,因而产生了C/S模型:全部客户端都经过服务器获取所需资源。模型以下图1所示:浏览器
####C/S模型的逻辑流程 C/S模型的TCP服务器与TCP客户端工做流程以下图2所示 服务器
####C/S模型的分析网络
###P2P模型异步
#####P2P模型概述 P2P(Peer to Perr, 点对点)模型,摒弃以服务器为中心的格局,让全部主机重归对等,使得每台机器在消耗服务的同时也给别人提供服务,云计算机集群能够看做P2P模型的一个典范。从编程角度,P2P能够看做C/S的扩展:每台主机便是客户端,又是服务器。P2P模型以下图3所示 socket
####P2P分析 缺点:用户之间传输的请求过多时,网络负载加剧,同时主机直接很难互相发现。因此实际P2P模型一般带有一个专门的发现服务器,用于查找服务(甚至能够提供内容服务),使得每一个客户都尽快地找到本身所需的资源。下图3为带发现服务器的P2P模型性能
注(本文内容参考 Linux高性能服务器编程——第八章 游双著)云计算