我是靠谱客的博主 可耐哑铃,最近开发中收集的这篇文章主要介绍使用同一数据库基于TCP Socket和Websocket实现的相互即时通信系统,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

摘 要

随着网络通信和计算机技术的发展,人们越来越希望能够即时发送和接收互联网消息。与此同时随着互联网的发展在HTML5中提出了websocket协议,能更好的节省服务器资源和带宽并且服务器和浏览器能够双向实时通讯。为了能让用户体验传统客户端和web带来的即时通信结合的超爽体验,本次毕业设计将完成web端和客户端之间的即时通信系统,并利用在大学所学的知识打造高性能,高并发,高可拓展性服务器。同时更是为了方便人们之间的信息交流,让用户随时的接入即时通信,提升人们生活的效率。

该按照软件工程思想采用面向对象和模块化设计方法设计。其中采用了网络通信技术、数据库技术,多线程技术和信息安全技术的基础上设计并实现新型即时通信系统。该系统为用户提供点对点私聊,群聊,离线消息,消息提示于一体的即时通信平台。

关键字:即时通信;高性能;高并发;TCP/IP;Websocket

ABSTRACT

With the development of network communication andcomputer technology, more and more people want to be able to send and receiveinstant messages on the Internet. At the same time with the development of theInternet in HTML5 websocket Protocol is proposed, to better conserve server resourcesand bandwidth and the server and the browser is capable of two-waycommunication in real time. In order to make the user experience of traditionalWeb and client of instant messaging with super-cool experience, this designwill complete instant communications between the Web server and client systems,and use the knowledge learnt at University to create a high performance, highconcurrency, highly scalable server. But in order to facilitate the exchange ofinformation between people, allowing users to access instant messaging at anytime, make people’s lives more efficient.

According to the software engineering design method ofobject-oriented and modular design. Which uses the network communications,database technology, multi-thread technology and information securitytechnology designed and implemented on the basis of a new instant messagingsystem. The system provides a point-to-point private chat, group chat, offlinemessages, a message in one of the instant messaging platform.

Keywords: Instant Messaging; high-performance, high concurrency; TCP/IP; Websocket

第一章 引言

1.1 即时通信系统基本概念

即时通信(Instant Messaging,缩写为 IM),是以互联网为基础,实现交互双方文字、图片、视频、语言等信息实时传输。即时通信系统的最大特点就是能在网络上进行信息之间的实时交流。与之间交流、电话交流等通信方式相比,即时通信具有迅速、方便、隐蔽性强等特点,在网络上可以超越身份、年龄、行业、地域等限制,达到人与人之间的交流零距离,实时通信成为互联网时代人与人沟通的重要方式[1]。

1.2 即时通信系统的发展历程

1970年代早期,一种最早的实时通信形式是柏拉图系统(PLATO system)。之后在1980年代,UNIX/Linux系统的实时通信被广泛的使用于军事界与学术界,随着互联网的普及即时通信迅速的运用在各行各业。1996年11月,首个广泛被非UNIX/Linux用户用于互联网的实时通信软件ICQ被推出来了,英文“I seek you”是ICQ的谐称[1]。

随着互联网发展,即时通信系统在中国发展是非常迅速的。从1999年2月第一次推即时通信软件OICQ,即时通信在中国的发展已有16年左右历史。经历萌芽阶段后,即时通信在我国已经进入了迅速发展阶段。目前主要的即时通信产品主要有腾讯QQ、淘宝旺旺、飞秋、微软MSN、网易泡泡、百度Hi等。随着科技的发展,即时通信系统的功能日益丰富,即时通信不再只是即时交流简单文本内容,它已经发展成集娱乐、交流、电子商务、办公合作和知识共享等为一体的综合信息平台。它以迅速、低成本和方便等特点被越来越被人们所接受,即时通信成为互联网发展的趋势。

1.3 系统研究目的和意义

随着网络通信技术和计算机技术的发展,人们越来越希望能够快速得发送和接收互联网消息,服务器管理员也希望减轻服务器的负担。与此同时随着互联网的发展在HTML5中提出了websocket协议,能更好的节省服务器资源和带宽并且服务器和浏览器能够双向实时通讯。同时也是学习和实践网络编程、操作系统、软件工程、数据库概论、算法等相关知识。

为了能让用户体验传统客户端和web带来的即时通信结合的超爽体验,并利用在大学所学的知识打造高性能,高并发,高可拓展性服务器。同时更是为了方便人们之间的信息交流,让用户随时的接入即时通信,提升人们生活的效率。

1.4 系统可行性分析

可行性研究(feasibility study)的目的,是弄清楚将要开发的项目是不是能够实现和值得去实现,也是在高层次上进行的一次大大简化了的需求分析与设计。即使研究的结论是不值得进行,所花费的精力也并不白费,因为他避免了一次更大的浪费。

对研究中可能提出的任何一种解决方法,都要从经济、技术、运行和法律等诸多方面来考虑其可行性,最终给出明确的结论来决策是否可行。

经济可行性。即时通讯可以不赚钱,但没有却是不行的,就像一个地方要致富,不修路是不行的道理一样。有了大量用户群,提供其他服务自然会带来大量收益。因此经济上是可行的

技术可行性。通过TCP/UDP协议客户端的即时通信已经有很多成功的软件;在之前服务器要推送数据到浏览器,通过Ajax定时查询,严重浪费互联网和服务器资源。随着互联网的发展在HTML5中提出了websocket协议,能更好的节省服务器资源和带宽并达到实时通讯。通过消息队列实现不同类型服务器的互联互通。因此技术上是可行的

运行可行性。目前已经学习了C++语言和JavaScript语言,学习了网络编程、软件工程、操作系统、数据库原理等课程。因此运行是可行的

法律可行性。采用开源库openssl、protobuf、hiredis,开源数据库软件redis、代理服务器nginx。因此在法律上是可行的

综合上述分析,新的系统是可行的。

18423381-b185463ffd630097.png

源码下载地址:https://www.write-bug.com/article/1729.html

最后

以上就是可耐哑铃为你收集整理的使用同一数据库基于TCP Socket和Websocket实现的相互即时通信系统的全部内容,希望文章能够帮你解决使用同一数据库基于TCP Socket和Websocket实现的相互即时通信系统所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部