基于linux的跨平台即时通讯系统

上传人:jiups****uk12 文档编号:39448658 上传时间:2018-05-15 格式:DOC 页数:28 大小:1.03MB
返回 下载 相关 举报
基于linux的跨平台即时通讯系统_第1页
第1页 / 共28页
基于linux的跨平台即时通讯系统_第2页
第2页 / 共28页
基于linux的跨平台即时通讯系统_第3页
第3页 / 共28页
基于linux的跨平台即时通讯系统_第4页
第4页 / 共28页
基于linux的跨平台即时通讯系统_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《基于linux的跨平台即时通讯系统》由会员分享,可在线阅读,更多相关《基于linux的跨平台即时通讯系统(28页珍藏版)》请在金锄头文库上搜索。

1、中文题目:基于中文题目:基于linuxlinux的跨平台即时通讯系统的跨平台即时通讯系统(系统实现部分)(系统实现部分)英文题目:英文题目:Linux-basedLinux-based cross-platformcross-platform instantinstant messagingmessaging systemsystem(SystemSystem ImplementationImplementation)目录1 环境.41.1.XMPP.41.2 Ubuntu(服务器系统).61.3 Openfire(服务器).71.4 Spark(客户端).71.5 Mysql(数据库).71

2、.6 Apache(web服务器).91.7 Java(运行环境).102 系统实现.102.1 操作系统安装.102.2 Java环境安装.142.3 Openfire安装.142.4 Mysql安装.152.5 Apache安装.162.6 PHP安装.162.7 全局配置.173 结束语.254致谢.265.参考文献.26摘摘 要要当前即时通讯业务正在不断兴起,QQ 的使用已经是相当普遍了。但是在公司内网使用的即时通讯工具软件相对来说还比较少。使用QQ作为通讯公司手段未尝不可,但是因为过程需要经过公网,所以带有一定的不稳定因素。其实,在linux系统下已经有了一套相对成熟的即时通讯系统实

3、现方案,并且具有开源免费及跨平台(Windows,Linux,Mac OS)。所以,在公司内部安装和使用即时通讯软件工具非常有利于提高公司的工作效率,因此,我们致力于够架设出一种集多种功能于一体的应用系统。通过我们架设的应用系统,可以满足公司内部人员多方面交流的需要,使大中型企业的员工能够顺利、即时的进行即时在线交流及发送各种通知、邮件,并进行文件的共享,从而更好、更顺利、高效地工作。由于我们这套系统是在公司内部的服务器中运行的,因此,所有资料都是保存在自己公司内部的服务器中,不但方便查找及管理,而且对公司内部资料也有很好的安全保密作用。关键词:Linux;跨平台;局域网,即时通讯系统实现系统

4、实现1 1 环境环境1.1.XMPP历历史史XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线 现场探测。它在促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。 XMPP的前身是Jabber,一个开源形式组织产生的网络即时通信协 议。XMPP目前被IETF国际标准组织完成了标准化工作。标准化 的核心结果分为两部分; 核心的XML流传输协议 基于XML流传输的即时通讯扩展应用 XMPP的核心XML流传输协议的定义使得XMPP能够在一个比以往网络通信协议更规范的平台 上。借助

5、于XML易于解析和阅读的特性,使得XMPP的协议能够非常漂亮。 XMPP的即时通讯扩展应用部分是根据IETF在这之前对即时通讯的一个抽象定义的,与其他业 已得到广泛使用的即时通讯协议,诸如AIM,QQ等有功能完整,完善等先进性。 XMPP的扩展协议Jingle使得其支持语音和视频。Q等有功能完整,完善等先进性。 XMPP的扩展协议Jingle使得其支持语音和视频。基本网基本网络结络结构构XMPP中定义了三个角色,客户端,服务器,网关。通信能够在这三者的任意两个之间双向发生。服务器 同时承担了客户端信息记录,连接管理和信息的路由功能。网关承担着与异构即时通信系统的互联互通,异构系统可以包括SMS

6、(短信),MSN,ICQ等。基本的网 络形式是单客户端通过TCP/IP连 接到单服务器,然后在之上传输XML。如下图,Jabber 网络由若干个服务器组成2,每个服务器可以给众多客户端提供服务,服务器之间通过 Internet 相互连接。该网络中还存在一个网关服务器,负责协议的转换,以和其他的即时消息系统进行互联。功能功能传输的是与即时通讯相关的指令。在以前这些命令要么用2进制的形式发送(比如QQ),要么用纯 文本指令加空格加参数加换行苻的方式发送(比如MSN)。而XMPP传输的即时通讯指令的逻辑与以往相仿,只是协议的形式变成了XML格式的纯文本。这不但使得解析容易了,也方便了开发和查错。而X

7、MPP的核心部分就是一个在网络上分片断发送XML的流协议。这个流协议是XMPP的即时通讯 指令的传递基础,也是一个非常重要的可以被进一步利用的网络基础协议。所以可以说,XMPP用TCP传的是XML流。1.2 Ubuntu(服务器系统)Ubuntu是2004年9月首次公布的。虽然相对来说Ubuntu是发行较晚的Linux发行版,该项目没有其他linux发行版本早,但是其邮件列表 很快被用户的渴望和热情的开发者讨论所填满。在随后几年中,Ubuntu成长为最流行的桌面Linux发行版,它朝着发展一种“易用和免费”的桌面操作系 统做出了极大的努力和贡献,能够与市场上任何一款个人操作系统相竞争。是什么因

8、素使得Ubuntu取得如此巨大的成功呢?首先,该项目是由Mark Shuttleworth,一位充满魅力的南非富翁,Debian的开发者和前世界第二太空游客所创建(他创建的的 Isle of Man-based Canonical Ltd 公司目前仍然是一个商业项目)。其次,Ubuntu从一开始就从其他类似Linux发行计划的失败中吸取教训并避免重蹈他们的错误, 它创造了一个优秀的以网络为基础的Wiki风格的文档,用专业的方法为最终用户创建了错误报告反馈机制。第三,得益于其富裕的创始人,Ubuntu 能够给所有互联网上感兴趣的用户发放免费 CD,从而促进了Ubuntu发行版的迅速扩大。在技术方

9、面,Ubuntu是基于Debian的发行版,包含一些著名的软件包,如GNOME,Firefox和OpenOffice.org其最新 版本的更新。它有一个可预测的每6个月发布的时间表,有时发布有长期技术支持的LTS版,一般为3 5年的安全更新支持,这取决于版本(非LTS版的技术支持期为18个月)的支持。 Ubuntu的其他特殊功能还包括一个可安装的live CD,美术创作和桌面主题,Windows用户迁移助手,支持最新新的技术,如3D桌面效果,易于安装的ATi和NVIDIA显卡驱动以及无线设备驱动的 支持等,并按需支持非免费或专利授权的媒体编解码器。主页: http:/ 马恩岛(位于英格兰岛和爱

10、尔兰岛之间) Isle of Man桌面: GNOME类型: Beginners, Desktop, Server, Live Medium, Netbooks处理器架构: i386, powerpc, sparc64, x86_64基于何种发行: Debian优点:固定的发布周期和支持期限;易于初学者学习;丰富的文档,包括官方和用户贡献的。缺点:缺乏与Debian的兼容性软件包管理:高级包管理工具(APT)的使用deb包这里我采用的是Ubuntu Server 9.101.3 Openfire(服务器)Openfire(原来的Wildfire)是一个跨平台(支持WINDOWS、LINUX、M

11、AC平台),采用Java开发,一个在开源 GPL 和商业双许可的实时协作(RTC)服务器基于XMPP(Jabber)协议。 Openfire安装和使用都非常简单,并利用Web进行管理,而且还有非常高的安全性和性能。单台服务器可支持上万并发用户。同时通过插件,可以在客户端登录 MSN,Yahoo,ICQ等即时通讯平台。这里我们使用的版本是Openfire 3.5.1,linux版本1.4 Spark(客户端)Spark是一个开放源码,跨平台专为企业和组织等客户的优化的IM客户端软件。它的特性支持集组聊天,电话集成的功能和强大的安全性。它还提供了整个卓越的终端用户体验的功能,如在线拼写校验,聊天室

12、标签、交谈记录等。由于业界上有所共识,如果企业内部部署IM使用Openfire+Spark是最佳的组合,于是我决定采用Spark作为客户端。这里我使用的版本是Spark 2.5.8,Windows版本1.5 Mysql(数据库)简简介介MySQL图标MySQL 最初的开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。不管怎样,在经过一些测试后,开发者得出结论:mSQL并没有他们需要 的那么快和灵活。这导致了一个使用几乎和mSQL一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个API被设计成允许为用于 mSQL而写的第三方代码更容易移植到MySQL。 M

13、ySQL这个名字是怎么来的已经不清楚了。基本指南和大量的库和工具带有前缀“my”已经有 10年以上,而且不管怎样,MySQL AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。 MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的 Arusha的一个小镇的名字。MySQL的概述的概述MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购.对于Mysql的前途,没有任何人抱乐观的态度.目前 MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网 站总体拥有成本而选择了MySQL作为网站数据库。MySQL的官方网站的网址是:MySQL的特性的特性1.使用C和C+编写,并使用了多种编译器进行测 试,保证源代

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

当前位置:首页 > 行业资料 > 其它行业文档

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