用户登录  |  用户注册
首 页毕业论文毕业设计下载定做交易过程截图支付宝在线支付
当前位置:完美毕业网毕业设计下载计算机毕业设计PHP

企业即时通讯系统讨论场景功能的后端设计与实现

联系方式:点击这里给我发消息QQ212181988
官方主页:www.biye114.com
图片预览: ;论坛转帖
插件情况:
售后服务:请联系客服QQ:212181988
一键分享拿折扣:
  • 好的评价 如果您觉得此软件好,就请您
      0%(0)
  • 差的评价 如果您觉得此软件差,就请您
      0%(0)

软件简介

  选择《企业即时通讯系统讨论场景功能的设计与实现》这个题目,目的在于通过学术研究与工程实践的结合完成对现有解决方案的更新或改善,提高企业小组在会议等场景下的沟通效率;意义一方面在于通过调动我们在大学时期的知识积累,触发与实际生活相关的工程思考,进而形成一套良好的工程思维,培养发现问题、研究问题和解决问题的能力,另一方面则在于刺激企业服务领域的创新性思考,引发更多关于不同场景下协作方案的思考和实践。

国内外关于企业服务应用,尤其是即时通讯领域的研究比较少,而探究特定场景下的解决方案的更是凤毛麟角。在学术检索中能够找到的大多是对现有技术架构下通讯工具的研究或者设计实现,并没有针对特定场景提出较为创新的解决方案,没有尝试使用新技术解决问题的探索。相比学术领域,在工程实践中倒是出现了不少企业即时通讯的应用,较为出色的应用有国外的Slack,国内的钉钉等,显然随着企业级市场的发展与成熟,专业的工具会受到越来越多的关注,自然也会引发越来越多的工程探索,而相应的,学术上的研究也会增多,从而让粗放式的产品开发变得更加符合用户和市场需求。
关键词:即时通讯;Google Wave;实时文字;PHP
1绪论
1.1概述
1.2项目背景 1
1.3 现有企业即时通讯产品分析 1
1.4 会议等场景下即时通讯解决方案的改善 2
2实时文字通讯系统的设计概述
2.1 需求分析 35
2.2 技术选型 37
2.3 实现原理 39
2.4 设计简述 39
3用户系统的后端设计与实现
3.1 需求分析 35
3.2 技术选型 37
3.3 数据库设计与实现 39
3.4 MVC架构设计与实现 39
3.5 API设计与实现 39
3.6 部署与测试 39
结论 57
参考文献 59
致谢 62
附录 72
选择《企业即时通讯系统讨论场景功能的设计与实现》这个题目,目的在于通过学术研究与工程实践的结合完成对现有解决方案的更新或改善,提高企业小组在会议等场景下的沟通效率;意义一方面在于通过调动我们在大学时期的知识积累,触发与实际生活相关的工程思考,进而形成一套良好的工程思维,培养发现问题、研究问题和解决问题的能力,另一方面则在于刺激企业服务领域的创新性思考,引发更多关于不同场景下协作方案的思考和实践。
在这篇文章中,我们主要完成了“冒号讨论板”系统的技术选型、产品功能设计以及后端系统的开发实现。该系统实现了微信注册登录、创建实时讨论板、加入及退出实时讨论板以及简单的权限控制。
首先我简单介绍“冒号讨论板”系统开发的前期准备工作。
下面我将对本文的主要内容进行简要介绍:
第一章:这一章主要介绍了“冒号讨论板”系统的项目背景及意义。我们通过纵向联络即时通讯的发展历史,横向比对企业即时通讯工具的功能及问题,引出该系统开发的目的和意义。
第二章:这一章我们对“冒号讨论板”从产品视角进行了审视,从整体角度对系统的技术选型,实施可行性进行了分析。
第三章:这一章是全文的核心,我们先对系统的后端进行了必要的需求分析,然后将需求转化为产品功能并将产品功能模块化进行描述。接着我们完成了系统后端数据库的搭建,并完成了MVC框架的设计以及主要API的设计,最后我们在以上设计的基础上完成系统后端的开发并对系统进行了部署和测试,完成了整个系统的设计与实现。
第四章:这一章对本次毕业设计进行了总结,一方面陈述了“冒号讨论板”在产品形态上的创新与突破,另一方面也剖析了系统存在的缺陷与问题,最后对于系统的利用价值进行了展望,并给出了简单的完善方案。
2.1.2 系统界面设计
该系统是一个测试性的版本,主要的功能逻辑比较简单,因此前端的设计也并不复杂,主要页面的设计如下:
首页设计:

系统主界面设计

创建讨论板模块设计

微信服务号中间页面:

2.2 技术选型
系统的技术选型对于开发来说至关重要,我们需要综合考虑开发成本与效率,还要兼顾应用的拓展能力。由于“冒号讨论板”系统是一个相对强调实践性的项目,我们有意向在开发完成后推向市场进行上线测试,因此在技术选择上就要考虑产品设计、部署、测试、兼容性等问题。比如由于我们决定使用绑定微信服务号代替普通的邮箱注册,因此在后端语言的选择上就优先选择了PHP作为开发语言。
2.2.1 用户系统后端
这是本次毕业设计的主要内容。“冒号讨论板”实时文字沟通系统的用户系统后端采用 PHP开发;数据库选择 Mysql。PHP语言简单高效, 在 web 开发领域应用广泛,并且有很多成熟的方案可供参考,开发效率相对快。
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
MySQL是最流行的关系型数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

2.2.2 实时通信后端
这里采用了 NodeJS语言,数据库选择 Mysql。理由是NodeJS 异步与非阻塞的特性适合处理大量的并发连接。同时NodeJS 拥有成熟的 websocket 库 socket.io,可以为开发带来很大的便利。
Node.js是一个Javascript运行环境(runtime)。实际上它是对Google V8引擎进行了封装。V8引擎执行Javascript的速度非常快,性能非常好。Node.js对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好。Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用,非常适合在分布式设备上运行的数据密集型的实时应用。

2.2.3 Web前端
web 前端主要功能是提供图形界面,与用户系统后端和实时通信后端通信,处理用户输入。
具体功能包括:
GUI
与用户系统后端通信处理用户个人信息操作
与实时通信后端通信处理用户的聊天信息
提供“所见即所得”编辑器方便用户输入
“冒号讨论板”系统前端使用 AngularJS 框架。本系统的特性使其更适合单页 web 应用的形式,而 AngularJS 是目前开发单页 web 应用使用最广泛的前端框架之一。
作为一款优秀的前端JS框架,Angular已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVVM、模块化、自动化双向数据绑定、语义化标签、依赖注入等等。这为系统的模块化开发带来了很大的便利。

2.3 实现原理与可行性分析
在本系统的三个子系统中(用户系统后端、实时通信后端,web 前端),用户系统后端主要是常规的 CRUD 操作,PHP能够很好地实现所有逻辑需求,并为前端提供相应的http api。用户系统主要涉及对用户信息的管理,用户的登陆与注册,与实时通信后端通信以管理用户创建的讨论。其中,为了简化用户注册和登陆的流程,系统将采用微信扫描二维码的方式登陆,因此注册与登陆过程将涉及与微信服务器的交互。
用户系统对外提供 RESTful api 。
用户系统的具体功能有:
处理用户登录注册等操作
用户个人信息管理
用户创建与参与的讨论的管理

实时通信后端主要涉及实时转发用户输入的信息给位于同一讨论中的其他用户,用户聊天记录的存储。实时通信系统与 web 前端通过 websocket 连接进行聊天信息的实时发送与接收处理,对于不支持 websocket 的浏览器降级为 xhr 或 jsonp 进行通信。
实时通信后端对外提供 RESTful api。
实时通信后端的具体功能有:
处理与 web 浏览器的 websocket 连接
接收并转发用户发送的信息
存储用户发送的信息
对于实时通信系统,我们采用了成熟的 websocket 框架 socket.io。有了 socket.io 对于底层 websocket 连接的支持,实时通信系统的开发难度在很大程度上得以降低。开发难度主要集中在 web 前端的 “所见即所得” 编辑器。这将涉及两个方面:一是 “所见即所得” ,二是讨论文本的用户端与后端同步。
“所见即所得”编辑器是 web 前端开发领域开发较为困难的一种应用,通常需要经验丰富的开发者进行较长时间的开发才能完成。这对我们来说难度很大,为了完成整个项目,我们决定在现有的开源编辑器的基础上进行二次开发,以满足我们的需求。
讨论文本的同步主要困难在于,为了高效率在服务器和浏览器之间进行同步,必须提取到用户对整个讨论文本编辑的内容,使得同步的内容是用户对讨论文本的增加、删除或修改,而不是整个讨论文本。为此,我们参考了一家国外公司 AppJet 所发明的 “EasySync” 的技术,它将用户对文档的修改用名为 “changeset” 的字符结构表示,只需要少量的文本即可标识用户对讨论文本的修改。

以上的技术方案充分满足了系统需求,并且能够提供较好的系统体验,因此系统开发可行性较高。

2.3 本章小结
在这一章里,我们简要地描述了“冒号讨论板”系统的整体情况,一方面梳理了产品的使用流程,同时完成了产品的界面设计,侧面确定了产品的功能逻辑;另一方面确定了系统的组织结构以及技术选型,并通过论述明确了设计的可行性。
3 用户系统后端设计与实现
3.1 需求分析

3.2 功能模块设计
3.3 数据库设计
3.4 MVC架构设计与实现
3.5 API设计与实现
3.6 部署与测试
3.7 本章小结

下载地址

点击此处→注册会员上传设计赚钱
以上是大纲和介绍,如需要完整的资料请在线购买.

软件评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 本站所有资料均已审核通过,内容原创保密,标准格式,质量保证
* 无需注册,点击在线购买后即可获取该套毕业设计(论文)完整
* 支付后请联系在线客服QQ:212181988发送资料
  • 官方微信