网络聊天系统的设计与实现

上传人:大米 文档编号:506698982 上传时间:2023-06-02 格式:DOCX 页数:30 大小:163.28KB
返回 下载 相关 举报
网络聊天系统的设计与实现_第1页
第1页 / 共30页
网络聊天系统的设计与实现_第2页
第2页 / 共30页
网络聊天系统的设计与实现_第3页
第3页 / 共30页
网络聊天系统的设计与实现_第4页
第4页 / 共30页
网络聊天系统的设计与实现_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《网络聊天系统的设计与实现》由会员分享,可在线阅读,更多相关《网络聊天系统的设计与实现(30页珍藏版)》请在金锄头文库上搜索。

1、网络教育学院,论文(设计)题 目:网络聊天系统的设计与实现学习中心:层专年次:业:级:专科起点本科季年春/秋学号学生:指导教师:完成日期:年月日内容摘要随着互联网技术的飞速发展,网络已经成为人们生活中不可缺少的一部分, 通过网上聊天已经成为人与人之间的网络通信的聊天,交流和联系的一种方式。因此,更多的网站开始提供在线聊天功能 .与此同时,以其方便,快捷,成本 低的优势,聊天室众多企业的青睐,许多企业网站也加入了聊天室,从而促进消费 者与消费者和消费者之间的通信模块。本文是一个软件工程的在线聊天系统,专注于系统的开发,使用系统的分析 设计和思维测试软件工程知识来实现的描述 ,其中包括三个主要方面

2、的软件生命 周期:软件定义(问题定义,可行性研究,需求分析),软件开发(总体设计,详细 设计,编码,测试)和运行维护。通过运用软件工程知识处理实际,加强的问题,清 晰,可靠的标准化,使得程序易于维护.该软件使用 JAVA 编写,具有良好的兼容性, 易于实现。操作简单,使用方便结构简单,易于搜索,实用的聊天室。关键词:网络;通信;套接字目录内容摘要I引言41概述51。1 课题研究背景和意义51.2 本文的主要内容及组织结构52网络应用系统开发技术介绍72.1 TCP/IP协议概述72.2客户/服务器模型72.3 Socket网络编程72。4开发工具与运行环境82。5其他技术83网络聊天系统的分析

3、与设计103。1可行性分析103。2 需求分析103.3系统总体设计113.3。1 系统架构模型123。3.2功能模块设计123.3.3 系统通信设计123。3.4数据库设计134网络聊天系统详细设计及实现144.1服务器端设计与实现144.1.1服务器等待连接进程/线程设计154.1.2服务器处理客户端信息进程/线程设计164.2 客户端设计与实现164.2.1 登陆模块164.2.2 主界面模块164.2.3 私聊模块194.2。4聊天记录管理模块215 测试235。1软件测试概述235。2测试策略与结果分析23结论28参考文献29引言随着不断投入的信息技术,网络,作为一种新生事物,近年来

4、现代技术的普 及得到了前所未有的深入,网络应用不断涌现层出不穷,所有的层级和所有年龄的 用户提供不同的个性化服务。现代小型和中小型企业的领导人认识到,进一步提 高企业信息化的必要性.为了使企业在瞬息万变的信息时代生存,适应激烈的市场 竞争,现代企业的要求是能够特别是领导具有能力的员工,实时通信系统是搭建 在员工之间的沟通和交流,是必要的条件。系统开发是一个非常复杂的系统工程。 这里,对基本的方法和系统发展的方法进行介绍,和有内容是在论文里列出。为了提高市场竞争力,我们必须全面调查和对市场的详细研究,同时也有良 好的客户服务。企业应该在复杂的环境对策。员工与员工和领导之间的交流立即X 性就显得尤

5、为重要,对于企业网上聊天系统是一种交流和沟通的平台,系统可以 成为中小企业沟通的理想平台。如果信息能及时反馈,及时处理并做出相应的动 作,将能进一步加强在现代经济市场的中小型企业的竞争力。网络通信是网络应用的一个重要体现。即时通讯是网络应用的一个重要方面。 聊天系统,主要用于小型企业,学校或小型局域网 .该应用程序使得短距离通信更 高效,更便捷,更高效,以反映现代 IM 的特点。该系统可满足中小型企业,学校内部网络即时通讯需求的需要,内部网络业 务的正常环境下,提供了即时通信的能力,本系统采用的 JAVA 开发.该系统可为 中小型企业的共同努力,相互沟通提供了一个功能强大的工具,在局域网中使用

6、 这个系统,可以为企业提供员工沟通的帮助,以提高工作效率。1 概述1.1 课题研究背景和意义随着现代技术的普及和信息技术的不断普及,网络作为一种新事物,近年来得 到了前所未有的普及和深入,网络应用层出不穷,给用户的各个阶层和各个年龄 段提供了不同的个性化服务。和现代中小企业的领导认识到进一步提高企业信息 化的必要性。为使企业在瞬息万变的信息时代生存下来,适应激烈的市场竞争,现 代企业的要求是能够沟通 ,尤其是领导者和员工之间的共同能力和实时通信系统 是在这样的条件下诞生的。系统开发是一个非常复杂的系统工程。介绍了系统开 发的基本过程和方法,并对相关文献进行了介绍.为了提高市场竞争力,我们必须充

7、分调查和详细研究市场,而且还有一个良好 的客户服务.企业在复杂环境中应作出对策。员工与员工之间的即时交流和领导是 特别重要的,网上聊天系统是企业的一种沟通和沟通的平台 ,系统可以成为中小企 业沟通的理想平台.如果能够及时反馈信息,及时处理并做出相应的行动 ,将能够 进一步提高中小企业在现代经济市场中的竞争力。网络通信是网络应用的一个重要体现。即时消息是网络应用的一个重要方面。 该聊天系统主要用于小企业、学校或小局域网.此应用使短距离通信更高效、方便, 更有效地体现了现代通信的特点。该系统可以满足中小企业的需求,学校内部网络即时通信的需求,内部网络 的正常操作环境下,提供即时通信的能力,本系统采

8、用JAVA开发。该系统可以为 中小企业的协同工作,相互沟通提供一个强大的工具,利用该系统在局域网中,可 以为企业员工沟通提供帮助,提高工作效率.1.2 本文的主要内容及组织结构本文研究的内容为局域网聊天系统的设计与实现。本文的组织结构: 全文共分五章。第一章,主要部分是概述。第二章,介绍网络应用系统开发技术介绍.第三章,介绍网络聊天系统的分析与设计。第四章,介绍网络聊天系统详细设计及实现。第五章,介绍相关测试部分的内容。2 网络应用系统开发技术介绍2。1 TCP/IP协议概述TCP / IP是专为大型网络协议的行业定制标准套件在TCP / IP协议族包括 IPv4和IPv6的套协议。对TCP

9、/ IP的标准是发表在一系列的文件名为RFC文档。在 一个基于TCP / IP的网络,路由器可以转发给路由器,一个节点或者是主机或路由 器。在一个基于TCP / IP的网络,一个子网是被路由器使用相同的IP地址前缀的 一个或多个LAN段,和一个网络是通过路由器连接的两个或更多个子网。2。2 客户/服务器模型客户/服务架构结构简称C/S结构,是一种网络架构,它把客户端(Client)(通 常是一个采用图形用户界面的程序)与服务器 (Server)区分开来每一个客户 端软件的实例都可以向一个服务器或应用程序服务器发出请求。有很多不同类型 的服务器,例如文件服务器、游戏服务器等。C/S通过不同的途径

10、应用于很多不同类型的应用程序,最常见就是目前在因特 网上用的网页。例如,当你在维基百科阅读文章时,你的电脑和网页浏览器就被 当做一个客户端,同时,组成维基百科的电脑、数据库和应用程序就被当做服务 器当你的网页浏览器向维基百科请求一个指定的文章时,维基百科服务器从维基 百科的数据库中找出所有该文章需要的信息,结合成一个网页,再发送回你的浏览 器。2。3 Socket网络编程套接字是通信的基石,是支持TCP/IP协议的网络通信的操作单元。可以将套 接字看作不同主机间的进程进行双向通信的端点,它构成了单个主机内及整个网 络间的编程界面。套接字存在于通信域中。通信域是为了处理一般的线程通过套 接字通信

11、而引进的一种抽象概念。套接字通过通常和同一个域中的套接字交换数 据(数据交换也可能穿越域的界限,但这时一定要执行某种解释程序)套接字可以 根据通信性质分类,这种性质对于用户时可见的。应用程序一般仅在同一类的套接 字间通信不过只要底层的通信协议允许,不同类型的套接字间也照样可以通信。进入九十年代后,随着计算机和网络技术的发展,很多数据处理系统都采用 开放系统结构的客户机/服务器网络模式,即客户机提出任务请求,通过网络发送 给服务器,由服务器做相应处理,执行被请求的任务,然后将结果返回给客户机。 例如:银行ATM的前置机和数据处理的主机之间即构成客户机/服务器网络模式; 电话银行的前置机和银行数据

12、处理机之间也构成这种网络模式结构等.这样,如何 在前置机和数据主机之间进行信息交换,即进程网络通信,就成为实现这种网络模 式的基础。而TCP/IP的套接字技术是解这一问题的有力工具.它从提出时就一直发 挥着愈来愈重要的作用,并已成为UNIX操作系统下TCP/IP网络编程标准;甚至 WINDOW、JAVA都配有它的通用接口有了这个强有力的工具,我们可以实现异种机、 异种操作系统应用程序间的相互连接和通信。套接字是支持TCP/IP协议的网络通 信的基本操作单元。可以将套接字看作不同主机间的进程进行双向通信的端点。 它构成了在单个主机内及整个网际间的编程界面。一般来说,跨机应用进程之间 要在网络环境

13、下进行通信,必须要在网络的每一端都要建立一个套接字,两个套接 字之间是可以建立连接的,也是可以无连接的,并通过对套接字的“读”、“写 操作实现网络通信功能。类似于UNIX系统中的I/O概念,像文件那样有打开、读、 写、关闭的方式。2。4 开发工具与运行环境本实验的主要开发工具是Eclipse, Eclipse是开放源代码的项目,可以在网上 免费下载Eclipse的最新版本,一般Eclipse提供几个下载版本:Release, St able Build, Integration Build和Nightly Build.Eclipse本身是用Java语言编写,但 下载的压缩包中并不包含Java运

14、行环境,需要用户自己另行安装JRE,并且要在操 作系统的环境变量中指明J RE中bin的路径。2。5其他技术诸如Web服务器、数据库服务器、文件服务器或邮件服务器之类的许多服务 器应用程序都面向处理来自某些远程来源的大量短小的任务。请求以某种方式到 达服务器,这种方式可能是通过网络协议(例如HTTP、FTP或POP)、通过JMS队 列或者可能通过轮询数据库。不管请求如何到达,服务器应用程序中经常出现的 情况是:单个任务处理的时间很短而请求的数目却是巨大的。构建服务器应用程序的一个过于简单的模型应该是:每当一个请求到达就创 建一个新线程,然后在新线程中为请求服务。实际上,对于原型开发这种方法工作

15、 得很好,但如果试图部署以这种方式运行的服务器应用程序,那么这种方法的严 重不足就很明显。每个请求对应一个线程(thread-perreques t)方法的不足之 一是:为每个请求创建一个新线程的开销很大;为每个请求创建新线程的服务器在 创建和销毁线程上花费的时间和消耗的系统资源要比花在处理实际的用户请求的 时间和资源更多.除了创建和销毁线程的开销之外,活动的线程也消耗系统资源。在一个 JVM 里创建太多的线程可能会导致系统由于过度消耗内存而用完内存或“切换过度. 为了防止资源不足,服务器应用程序需要一些办法来限制任何给定时刻处理的请 求数目。线程池为线程生命周期开销问题和资源不足问题提供了解决方案 .通过对多 个任务重用线程,线程创建的开销被分摊到了多个任务上。其好处是,因为在请求 到达时线程已经存在,所以无意中也消除了线程创建所带来的延迟。这样,就可 以立即为请求服务,使应用程序响应更快。而且,通过适当地调整线程池中的线 程数目,也就是当请求的数目超过某个阈值时,就强制其它任何新到的请求一直等 待,直到获得一个线程来处理

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号