3、系统介绍
系统才有C/S模式,服务器端用mysql储存用户数据,客户端使用文件io流读写数据。客户端通过socket连接服务器。
2.系统的相关研究
2.1 C/S开发模式
C/S 结构,即大家熟知的客户机和服务器结构。它是软件系统结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
C/S结构的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快,应用服务器运行数据负荷较轻,数据的储存管理功能较为透明。缺点主要有以下几个:
而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。
客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或文护。还有,系统软件升级时,每一台客户机需要重新安装,其文护和升级成本非常高。(大多数没法自动升级而需要人工升级)
对客户端的操作系统一般也会有限制。可能适应于win7,但不能用于Windows 2000或Windows XP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。
2.2 即时通讯原理
登陆进入聊天软件后,即显示出好友列表,双击好友头像即会显示出聊天界面。在聊天页面上,有发送文字,发送图片,和发送文件的功能按钮。与QQ相识,点击“发送”按钮之后,程序就会把输入的信息的种类,信息内容、以及用户端一些数据编辑成xml数据通过Socket发送到服务器端。
服务器接收到数据之后,按照协议进行解析和转发。这样,双方的即时通讯就实现了。
2.3 Socket通信技术
Socket程序的工作过程:
1、建立Socket连接:在通信开始之前由通信双方确认身份,建立一条专用的虚拟连接通道。
2、数据通信:利用虚拟连接通道传送数据信息进行通信。
3、关闭:通信结束时,再将所建的虚拟连接拆除。
具体如下:
服务器 图 2-1 socket通信
3.系统分析
3.1 系统需求
聊天交流是目前互联网提供的主要内容。聊天系统有多种实现方式,类似ICQ属于一种点对点的聊天系统;还有一种是基于Socket的集中式聊天系统,这种聊天系统需要登陆统一的聊天服务器。在基于Socket的聊天系统中,主要有两种角色:服务器和客户端,不同的客户端登陆集中式的服务器,通过服务器将一个客户端发出的信息推送到其他所有客户端。
基于Socket的聊天系统最早实现是使用网页刷新方式,通过客户端不断地自动刷新,将服务器端整个页面内容下载到客户端显示,这种方式的聊天速度慢,而且有刷屏现象,很快被更新的聊天技术所替代。 java仿QQ局域网聊天软件设计(3):http://www.youerw.com/jisuanji/lunwen_7710.html