基于Protocol Buffers的企业即时通讯应用的研究与实现

被引量 : 0次 | 上传用户:sust_alex
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着3G网络的普及,移动网络速度大幅提升,而即时通讯软件作为人们生活中不可缺少的交流工具之一,已经从传统的桌面系统覆盖到移动应用。市场对即时通讯软件的需求越来越大,尤其是企业内部,出于内部交流、方便管理、信息保密等原因,大中小型企业都逐渐开始开发或者购买企业级通讯系统。每个企业都开发自己独有的即时通讯软件需要耗费大量人力物力,而开源社区相关开源软件大多基于XMPP协议,传输格式采用XML,缺乏对其他传输格式的探索和应用,而且缺少对主流移动平台的支持,特别是iOS。正是基于以上的背景,本文主要研究实现了一套基于Protocol Buffers的即时通讯系统,采用Google的Protocol Buffers作为文本传输格式,比传统的XML和JSON速度更快、数据更小。数据库采用轻量级的SQLite存放各种信息。最终在目前主流手机操作系统苹果的iOS上实现该即时通讯系统的客户端。可以实现两人或群组内的文本、语音的实时通讯,可以进行图片、文档等其他格式文件的传送,还可以查看好友列表,实现了主流即时通讯软件的大部分功能。另外添加了企业级需要的部门列表,方便内部人员的沟通。在研究和实现过程中,采用软件工程、设计模式作为指导,使得软件的重用性和扩展性更加完善,比如采用面向对象的继承解决两人聊天与群组聊天功能重复代码重复的问题,将数据库设计为单例模式,用委托方式实现Socket断开后的重连,采用通知模式完成消息的分发等。本文主要讲述在研究和实现过程中核心部分的具体实现,遇到的问题及解决方案,最终的效果和测试。包括利用iOS高级特性GCD结合block编程采用异步方式解决并发编程,数据库的设计与实现,通讯协议的设计和实现,Socket长连接的实现,动态聊天界面的绘制,Protocol Buffers的性能分析等。旨在为开源的企业级即时通讯软件提供新的思路和实现方式。
其他文献
通过分子印迹技术,以磺胺(SNM)为模板分子,甲基丙烯酸(MAA)为功能单体,利用Fe3O4磁性纳米微球制备具有特异性识别磺胺的磁性分子印迹聚合物.通过紫外分光光度法对磁性印迹聚
研究了传统南通蓝印花布的元素构成,提出在现代社会南通蓝印花布应该与现代时尚理念融合的建议,并以此为立足点,从面料结构的创新设计、色彩搭配理念的提升、图案符号的创新
首先介绍了当前国内外数据中心空调群控技术的发展概况和基本概念,然后就某大型数据中心案例,分别介绍了当前数据中心末端精密空调群控和冷水机组群控的特点及原理,并分析了该技
随着生活水平的提高,人们的物质需求不断得到满足。从而对于精神文化的需求日益增长,与此同时也促进了科学技术的发展进步。3D电视就是在这样的推动力下,技术不断进步、产品不断
<正>一、课题的提出(一)研究背景:本世纪初,经济合作与发展组织(OECD)率先提出了"核心素养"结构模型。它要解决的问题是:21世纪培养的学生应该具备哪些最核心的知识、能力与
会议
史料是历史研究的基础,党史资料准备是党史研究的前提。做好党史资料准备工作,对党史部门和党史研究者至关重要。党史资料种类繁多,包括文字史料、实物史料、口述史料、声像
高血压病是临床常见病,多发病,是致残和死亡的重要原因之一。随着社会经济的发展及生活方式的改变,高血压的危险因素也发生了显著的改变,使高血压病的中医学病机演变规律也发
近年来P2P网络借贷平台在全球范围内快速发展,对丰富贷款人的投资渠道,满足借款人的融资需求,填补金融服务空白等发挥了积极作用。本文以美国的Lending Club、Prosper和So Fi
咖啡、丁香和胡椒的多层次栽培体系V.S.Korikanthimath等咖啡园内稳定的栽培体系将包括对天然资源如土壤水分和太阳辐射的成功管理,以满足占86.2%的小型农户和边远地区农户(低于2.0公顷)增加的需要。在印度
钒在自然界中分布极其广泛,是动物体内的必需微量元素之一,经过一个多世纪的研究确认,钒不仅具有一定的毒性,而且是人和动物重要的微量元素。钒的化合物开始被应用于糖尿病、