《CS模式-李萍.ppt》由会员分享,可在线阅读,更多相关《CS模式-李萍.ppt(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C/S C/S 模式模式模式模式-李萍目目 录1 1C/S模式基本介绍2 2C/S模式的构件和连接件3 3C/S模式的配置和约束4 4C/S模式的特点以及优缺点5 5C/S模式的不定式和代码以及典型应用C/S风格基本介格基本介绍名称:客户/服务器风格风格计算模型:计算模式的演化算模式的演化计算模式经历了以下六代:1965-1985:以大型机为核心的集中式处理模式;1986-1990:以PC/文件服务器为核心的文件共享计算模式;1990-1996:以C/S结构为主流的分布式计算模式;1996-:以Web为核心、B/S结构为主流的分布式计算模式;2000-:以各类移动设备为核心的普适计算模式(无所
2、不在的计算,无所不在的通讯)2005-:以Grid、P2P、Cloud等技术为核心的分布式计算模式;集中式集中式计算模式算模式所有的计算能力均属于中央宿主计算机用户通过一台物理上与宿主机相连接的非智能终端来访问宿主机上的应用程序客户机可能为PC或工作站集中式集中式计算模式算模式A 1990 Honeywell-Bull DPS 7 mainframe CPUC/S风格构件和格构件和连接件接件构件:客户端:向其他组件请求服务;服务器:向其他组件提供服务连接件:网络;连接关系决定哪个服务可以被哪些客户端所请求C/S风格配置和格配置和约束束配置:一般情况下,C/S结构在拓扑上没有限制,也有些特例可能
3、会做以下限制:某个服务的最大连接数、服务器之间的交互关系和层约束:服务器:可以连接的客户端的数量和类型,性能属性;连接器:交互的协议限制可以连接到一个服务器的客户端数量,限制服务器不能跟其他服务器进行交互C/S风格特点格特点1.C/S模式将应用与服务分离,系统具有稳定性和灵活性2.C/S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性3.由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快4.在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂C/S风格格优点点由于客户端实现与服务器的直接相连,没有中
4、间环节,因此响应速度快。操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。C/S风格格缺点缺点开发成本较高客户端程序设计复杂信息内容和形式单一用户界面风格不一,使用繁杂,不利于推广使用软件移植困难软件维护和升级困难新技术不能轻易应用C/S风格不格不变式式组件通过请求其他组件的服务进行交互WinSock C/S模式程序源代模式程序源代码#include#include#pragmacomment(lib,Wsock32.lib)/服务器端口号为5050#defineDEFAULT_PORT5050#defineDATA
5、_BUFFER1024voidmain(intargc,char*argv)WSADATAwsaData;SOCKETsClient;intiPort=DEFAULT_PORT;/从服务器端接收的数据长度intiLen;/接收数据的缓冲charbufDATA_BUFFER;/服务器端地址structsockaddr_inser;/判断输入的参数是否正确if(argc2)/提示在命令行中输入服务器IP地址/printf(Usage:client172.16.0.218n);printf(Usage:clientserverIPaddressn);/getchar();return;/接收数据的缓
6、冲区初始化memset(buf,0,sizeof(buf);if(WSAStartup(MAKEWORD(2,2),&wsaData)!=0)printf(FailedtoloadWinsock.n);return;WinSock C/S模式程序源代模式程序源代码/填写要连接的服务器地址信息ser.sin_family=AF_INET;ser.sin_port=htons(iPort);/inet_addr()函数将命令行的点分IP地址转化为用二进制表示的网络字节顺序的IP地址ser.sin_addr.s_addr=inet_addr(argv1);/建立客户端流式套接口sClient=soc
7、ket(AF_INET,SOCK_STREAM,0);if(sClient=INVALID_SOCKET)printf(socket()Failed:%dn,WSAGetLastError();return;/请求与服务器端建立TCP连接if(connect(sClient,(structsockaddr*)&ser,sizeof(ser)=INVALID_SOCKET)printf(connect()Failed:%dn,WSAGetLastError();return;else/从服务器端接收数据iLen=recv(sClient,buf,sizeof(buf),0);if(iLen=0)return;elseif(iLen=SOCKET_ERROR)printf(recv()Failed:%dn,WSAGetLastError();return;printf(recv()datafromserver:%sn,buf);closesocket(sClient);WSACleanup();C/S风格参考典型格参考典型应用用基于C/S模式的机房排课系统设计与实现基于C/S模式考试系统的设计与实现基于CS模式的高效教务管理系统的构件化设计谢谢!
限制150内