用 Java 实现多线程 HTTP 服务器

用 Java 实现多线程 HTTP 服务器

一、用Java实现一个多线程HTTP服务器(论文文献综述)

薛粤桂[1](2020)在《支持Web直播的视频监控系统的研究与开发》文中认为随着4G、5G技术的发展和互联网的高速发展,流媒体技术需求日益增多。视频监控是流媒体技术传统的应用场景,视频监控系统在政府、企业以及个人消费市场有着广泛的应用。视频监控系统主要由摄像头、流媒体服务器以及客户端组成。目前的视频监控系统中,摄像头主要基于RTSP协议传输实时视频。视频监控客户端一般是基于特定操作系统的API开发,在i OS、Android、Windows等系统中分别开发一个客户端,开发和维护成本较高,用户体验不佳。Web网页版本的客户端通常需要安装插件,插件的安全性和兼容性还有待提高。随着前端摄像头输出音视频格式的标准化和HTML5前端技术的迅速发展,开发无插件的Web客户端,能够解决跨平台性和兼容性,降低企业的开发和部署成本,提升用户体验。本文主要工作内容如下:(1)基于Muduo网络库设计并实现了协议转换流媒体服务器,它能够将网络摄像头上传的RTSP/RTP协议流媒体转换成WS-FLV、HTTP-FLV、HLS、Web RTC协议流媒体。(2)将P2P的Web RTC改进成适合B/S架构的流媒体服务器,分析并移植了Web RTC拥塞控制算法,保证Web RTC实时视频传输质量。(3)结合Media Source Extensions和RTCPeer Connection等HTML5技术设计并实现了Web播放器客户端,支持播放WS-FLV、HTTP-FLV、HLS、Web RTC协议的码流。(4)基于Hi3520D和Muduo网络库设计并实现了一个支持RTSP协议的嵌入式网络摄像头系统。最后,本文对视频监控系统的单元进行了功能测试和性能测试。测试表明,系统实现了视频监控的基本功能,在不同操作系统的浏览器上能播放实时视频且具有较好性能。

石聪明[2](2019)在《海量射电天文观测数据的存储与处理研究》文中研究表明随着科学技术的快速发展,人类社会信息化程度不断提高,大数据带来的深刻影响和巨大价值逐渐被人类社会所认识,让我们以一个全新的视野来看待世界的同时,全方位地改变了我们的生活、工作和思维模式,更为科学研究带来重大的机遇。信息管理及相关学科是大数据技术发展的根本核心,重点研究与解决大数据时代中的数据采集、传输、存储(归档)、检索、处理、分析、挖掘、发布以及应用等一系列关键问题。近几十年来,随着新一代天文望远镜的不断涌现,天文学进入大数据时代,天文观测所获得的数据成为人类社会最大的数据源之一。天文学科与信息学科不断融合与相互促进,逐渐发展成为一个新兴的前沿交叉学科—天文信息学。本文充分应用了信息管理及相关学科知识,根据当前天文海量数据管理中存在的关键问题,重点开展存储与检索、传输和归档三个方面的关键技术研究。最后,以两个射电望远镜的数据管理为用例(明安图射电频谱日像仪(MUSER)和平方公里阵列(SKA)射电望远镜),通过数据仿真、实例化测试、性能对比、理论分析来验证本文相关工作的正确性。具体说明如下:1)针对海量射电天文观测数据记录的高效存储与检索需求,基于观测数据具有固定的采样间隔和固定数量的连续观测数据记录按序存放在文件中的时序数据特征,本文提出了一种以集合中的补集思想为核心的面向时序数据的数据库系统,即负数据库系统。负数据库系统将文件中存在记录以及首尾记录之间丢失记录的元数据信息视为全集,把文件中首尾记录之间丢失记录的元数据信息看成补集,通过补集构建出来的文件逻辑结构关系,能够推导出文件中存在记录的元数据信息。论文给出了完整的形式化定义以及严格的理论证明。实测结果表明:在记录入库、数据检索以及要入库的记录数方面,负数据库系统比需要存储文件中所有存在记录的元数据信息的常用数据管理系统分别快18.8倍、快1.5-6.9倍以及降低!"倍(N指文件中的固定记录数)。进而说明,负数据库系统能够在大幅度降低存储开销和记录数的同时还能提供快速的检索功能。2)针对海量射电天文观测数据的跨区域高速传输需求,本文提出了带状态检测和重传功能的两路异步消息传输模型—高效消息传输模型。该模型是指用两路异步消息传输来分别单向高速传输数据消息和反馈消息,通过超时重传来确保数据消息一定送达接收方,以及通过实时状态检测来决定是否继续向接收方发送消息。该模型能够克服当前很多远程数据传输技术都使用的出错重传方法存在的需要等待对端反馈消息而降低数据传输效率的不足。基于高效消息传输模型实现了一套高效数据传输系统,该系统的性能测试结果表明:在传输文件大小为数百KB时,该系统获得的平均传输速度比天文中现有系统快将近40倍;同时,在数百兆字节这个量级和使用较少的并发数时,该系统获得的平均传输速度达到1172MB/s(该速度基本上实现了10Gb/s网络带宽的满负载),比现有系统快将近3.4倍。进而说明,实现的高效数据传输系统有效地提高了数据传输性能,缩短了数据传输时间。3)针对海量射电天文观测数据在进行高可靠性归档时尽可能降低数据冗余的需求,本文提出了基于纠删码的归档模型—低冗余归档模型。该模型是指将纠删码技术集成到研究2提出的高效消息传输模型中的数据消息接收方而形成的归档模型。该模型能够克服现有系统使用副本技术归档时存在的高数据冗余的不足。基于低冗余归档模型和RS(4,2)算法实现了一套低冗余归档系统,该系统的性能测试结果表明:在相同的实验环境下,该系统获得的平均异地归档速度是现有系统未启用3副本策略时的1.4倍,且只需要增加50%的额外存储开销就能达到基于3副本策略时需要200%的额外存储开销才能达到的数据可靠性;并发数和HWM是该系统调优的关键参数。进而说明,实现的低冗余归档系统具有较高的归档速度和能以较低的数据冗余获得较高的数据可靠性。综上所述,本文立足学科交叉,面向天文数据管理需求,应用信息学科知识来解决天文海量数据管理中的高效存储与检索、高速数据传输以及归档难题。为天文海量数据管理解决了部分关键问题,这在一定程度上有利于提升天文海量数据管理的总体功能。研究成果也为有类似数据管理需求的应用领域提供了参考,具有一定的理论价值和工程应用价值。

吉喆[3](2019)在《基于Elasticsearch的实时大数据统计分析平台的研究与设计》文中研究指明为了全面落实《电信和互联网用户个人信息保护规定》和《电话用户真实身份信息登记规定》的要求,工信部下属的信息与通信研究院建设电信身份信息核查平台,为电信企业提供统一的身份信息核查。同时,为推动实施国家大数据战略,对身份信息核查业务进行实时的、多角度的大数据业务统计和平台监测,本论文从实际需求出发,结合新版本的Kafka 2.0.0、Spark Streaming 2.4.0、Elasticsearch 6.4.0,设计并开发一款实时大数据统计分析平台。本论文采用Spark Structured Streaming数据流处理系统作为基础,设计了一个基于Elasticsearch全文检索系统的实时大数据统计分析平台。该平台以Grizzly Nio Http接口作为数据入口,Kafka为数据管道,充分利用Kafka数据高速传输和负载均衡的能力。采用Spark Structured Streaming对数据进行流计算和批计算,即时输出简单的统计信息,并将处理后的结构化数据存储至Elasticsearch。本系统采用最新的Grizzly Nio Http接口和Java11,以代替目前通用的Netty Nio Http接口。Grizzly和Java11的组合提供了高质量应用服务器的结构化接口,能高速提供Http服务。系统采用Spark 2.0所提供新特性Spark Structured Streaming架构。该架构同时包含高效的流计算和批计算,能有效地对数据流进行实时处理和转发。其特有的端到端设计能有效减少网络IO读写延时,并且架构中有针对Kafka和Elasticsearch的专用优化接口。为了节省硬件资源,通过合适的方案设计和系统配置,Kafka、Spark Streaming和Elasticsearch三个核心组件将分别着重消耗不同的硬件资源,能同时部署在同一台服务器上,从而减少了服务器数量。系统架构简单,数据流向清晰,而且部署简单,开发方便,移植性强。本文在3台10核2.4GHz CPU,256GB内存,24块2TB 3.5寸SATA硬盘的服务器上部署本系统,并进行功能和性能测试。测试结果表明,该测试系统在每条数据227字节、40万条/s的数据输入中,能达到数据延迟不大于1s。在使用了Java11后,Full GC频率明显下降;在使用了Grizzly Nio后,相比通用的Netty Nio平台提速22%;在使用了Spark Structured Streaming后,入库延迟相比Spark Streaming减少了34%。

张劲峰[4](2019)在《基于Qt的跨平台web服务开发框架》文中研究说明在使用Java技术开发信息管理系统,尤其是软硬件结合的系统时,存在如下问题:(1)许多硬件厂家只提供C++的开发包,很难集成进Java开发的系统;(2)Java虚拟机对内存有自己的管理机制,开发人员不能自由操作,在开发一些需要反复申请和释放资源的系统时,很难保证系统的实时性,并且对系统硬件资源也有比较高的要求;(3)使用CGI等方式连接信息管理系统和底层硬件控制系统,性能不高;(4)另外,用户使用的操作系统多种多样,从而要求系统能够跨操作系统平台,降低开发难度,支撑新业务的开发。为此,本文开发了一个“基于Qt的跨平台web服务开发框架”。采用常见的软件开发模式,完成了框架的需求分析、设计、编码实现和测试。本文做了如下工作:(1)采用网络通信协议进行进程通信,使用跨平台的Qt开发框架作为开发基础,实现了多编程语言开发的程序间的通信,并搭建了一个跨平台的C++应用程序开发框架。(2)使用Socket网络编程接口进行开发,实现了web服务器的基本功能,同时也支持fastCGI请求和一般Socket请求。(3)参考Java环境下常用的MVC框架Struts和Spring的MVC实现,实现了MVC分层框架。(4)使用Qt的数据库连接框架及容器数据结构,连接postgresql数据库,实现了数据库连接池功能。(5)采用在cookie中存储session信息,要求客户端在HTTP头信息中发送session信息的通信方式,实现了用户登录及登录后的菜单权限控制,使应用本框架开发的系统能通过单点登录功能,同其他业务系统无缝集成在一起。(6)通过配置定义表单内容,结合extjs界面框架,根据配置展现表单,开发了业务表单框架,初步实现了业务表单界面的模板化定制。最后,使用本框架开发了用户卡读卡系统和热用户信息展示系统两个系统,并对其进行了验证,同时对框架进行了测试。使用本框架开发系统,在Windows和Linux操作系统上实现了同原有的Java应用顺利整合,降低了开发难度,实现了预期目标。与常见的CGI开发方式相比,使用本框架开发的系统,可以常驻内存,不需要每次收到请求都从硬盘加载程序,降低了系统硬盘读写压力,系统负载能力有明显提升,提高了系统性能,同时便于多个业务间共享资源,有利于代码复用。系统比采取ocx与浏览器的通信方式更加稳定,兼容性更强。本框架还提供了应用开发时需要的数据库连接池、日志管理等服务组件,方便业务开发者使用。作为开发框架,本框架还有许多不足,需要进一步研究,同Ngnix等服务器相比性能还有提升空间,http协议也只支持部分特性,另外还有多种进程通信方式没有被支持,需要进一步完善。

杨林[5](2016)在《基于Node.Js的Web系统性能提高方法研究》文中提出近十年,不断发生的一件事情就是,越来越多的应用开始在浏览器里运行,就是说越来越多的桌面应用、手机应用也会在Web上安家。随之带来的问题就是Web访问量的急剧上升及并发访问压力的不断增加。而传统方法主要通过缓存、负载均衡、增加服务器等后端架构的改进来提升并发处理能力,基本都采取多线程模式来处理并发,直到Node.js的出现。本文主要研究Node.js单进程基于事件驱动的非阻塞异步I/O技术,并总结Web并发的发展情况及现有常用的高并发解决方案,在此基础上实现Node.Js的非阻塞多核服务器的设计。首先,由于Node.Js原生是单进程模型,而在如今多核普及的情况下会存在资源利用率不足的问题。针对此情况,本文结合负载均衡、分布式存储与现代Web流行工具等技术,提出了一种简洁、高效的Node.Js多核多进程并行框架,并在该框架基础上设计、实现Node.js多核HTTP服务器,旨在解决海量并发访问中的高效、稳定、可扩展的难题提供新的思路和解决方案。其次,结合本文提出的Node.Js多核多进程HTTP服务器解决方案,设计并实现了一个高并发的Node.Js在线观影系统,并将其作为代表来研究Node.Js技术及高并发架构的优势,将本文提出的多核多进程Node.Js框架应用于实践,最终实现一个可以获得高并发性能且快速响应客户的Web应用。最后,通过Apache的ab压力测试工具模拟高并发访问场景进行性能测试,验证该Node.Js的网络应用异步并发架构方案的可行性,并与传统的实现方法进行对比,结论表明Node.Js的网络应用性能明显优于传统的通用实现方法。证实了 Node.js在I/O密集型应用下对高并发Web系统更加合适。

陈凌阳[6](2014)在《可伸缩web架构中的并发编程模式》文中研究表明随着互联网的迅速发展,web早已成为人们生活中不可或缺的一部分,人们越来越多的通过各种web应用程序来娱乐和工作,虽然计算机硬件的性能也是逐年提升,但对于一个用户量成百上千万甚至是亿级别的web应用来说,如何处理高并发的访问和操作仍然是一个很大的挑战。而要想解决这些难题,就要求web应用的整个架构必须具有很好的可伸缩性,从而使得网站或者服务能够持续良好的运行。本文首先解释了构成整个web的技术基础,以及相关的技术术语,尤其是详细地解释了并发和可伸缩在web领域的含义。同时还介绍了web架构中的常用组件,为下面的论述做一个铺垫。本文的第三,四,五章分别从web应用架构的局部组件,具体是web服务器,应用业务逻辑和后端存储来论述其中的并发编程模式,各种模式的特点,如何通过这些模式实现高并发可伸缩的组件,从而保证整体应用架构也具有很好的并发性和可伸缩性。本文的第六章基于前面的论述,分别编程实现了一个web服务器程序,以及一个大规模feed系统的应用业务逻辑和后端存储。最后本文介绍了前文中提到的并发编程模式各自的适用场景,通过比较来帮助选择合适的并发模式。本文总结了web领域的核心技术,并分析了构建高性能可伸缩web架构的常用方法,重点放在了论述如何应用合适的并发模式来提高整个系统架构的可伸缩性上。对于和开发者关系最密切的应用业务逻辑层,详细的总结论述了多种并发编程模式,并提供了相应的代码示例,方便学习参考文中论述的理论知识,并把它们应用到实际的项目中。

于大海,张岩[7](2012)在《浅谈HTTP服务器的设计与实现》文中指出HTTP(hypertext transport protocol)即超文本传输协议。本文主要针对HTTP协议和HTTP服务器进行简要的介绍,并对HTTP服务器进行了整体设计。在此基础上,本文介绍了采用c++语言开发的多线程HTTP服务器的工作原理,并进行了结果测试。

龚奕利,雷迎春,张文,吴产乐,张国安[8](2010)在《MEANS:基于微线程结构的网络服务器》文中研究表明Internet应用需要高性能的网络服务器体系结构.提出MEANS结构,这是一种针对Internet应用的网络服务器软件体系结构.通过引入一种新的线程抽象——微线程,MEANS向上层的程序员提供微线程环境,并通过传统线程并发访问下层操作系统的服务,而微线程的管理和调度则使用事件驱动机制,从而综合多线程和事件驱动结构的各自优点.此外,MEANS还具备通用性、扩展性、健壮性和适应性.经初步验证,在并发策略方面,MEANS具有相似于事件驱动结构的特性;在I/O策略方面,MEANS具有比多线程结构更好的I/O访问特性.

邵芬,于国防,张宁[9](2008)在《基于多线程的HTTP服务器的设计与实现》文中指出HTTP服务器是Web服务器的一种,它是基于超文本传输协议HTTP的服务器。文章介绍了采用VC开发的多线程HTTP服务器的应用技术要点、工作原理及其模型设计,结合代码分析了HTTP服务器可以实现的功能,并进行了结果测试。

郑一强[10](2007)在《嵌入式web服务器的实时性研究》文中指出随着web技术的发展,嵌入式web技术在工业远程监控和过程控制系统得到广泛的应用。由于工业嵌入式系统是实时系统,要求EWS(Embedded Web Server,嵌入式web服务器)也具备实时性。在单片机上设计的EWS,通常不使用嵌入式实时操作系统,采用的是完全使用服务器硬件资源运行的CGI(Common Gateway Interface,公共网关接口)应用程序接口模块实现动态数据交互,只能实现一些简单界面的远程网络监控。但随着智能仪表监控和组态功能的丰富,EWS还需要在绘制动态曲线图形等复杂图形以及传输庞大数据的网页,这类设计方案难以达到工业仪表对实时性的要求。针对上述问题,本文深刻分析影响实时性的各种因素,以C3000控制器为研究对象,提出了实时EWS设计方案:在32位高性价比微处理器AT9140008硬件开发平台上,采用了μC/OS-Ⅱ实时操作系统和LwIP协议栈设计了嵌入式web服务器,使用多任务编程来提高系统的实时性。客户端程序利用ActiveX技术,使用B/S(Brower/Server)和C/S(Client/Server)混合监控模式,针对C3000的特性设计远程监控界面。控件可下载到客户机上,利用客户端资源绘制图形并动态刷新界面。在工业局域网内,可以通过EPA现场总线技术解决工业以太网网络不确定性传输问题。工业仪表的实时响应速度要求为4~10ms,C3000最小的数据发送间隔为0.125s;通过系统测试,ping包的响应时间为0.4ms、HTTP建立连接的时间为4ms、数据包发送时间间隔为0.025s;客户端的动态网页刷新速度也保持和仪表界面的速度几乎一致。通过上述实验结果,可以证实本设计完全满足工业仪表对实时性要求。在本文中,首先研究影响EWS的实时性的三个关键因素:硬件、软件和网络通讯。接着本文描述通过软件设计提高系统的实时性。在服务器端,介绍了μC/OS-Ⅱ实时操作系统和精简TCP/IP协议栈LwIP的移植,以及HTTP服务器和Flash文件系统的设计;为了提高数据交互速度,本文设计了实时性很高的快速数据交互任务。在客户端,本文采用面向构件思想设计一个监控界面,并尽量模拟真实仪表的功能和界面,设计了存储模块、网络通讯模块、实时监控模块、历史监控模块等。最后,本文对课题的工作进行了总结和展望。

二、用Java实现一个多线程HTTP服务器(论文开题报告)

(1)论文研究背景及目的

此处内容要求:

首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。

写法范例:

本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。

(2)本文研究方法

调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。

观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。

实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。

文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。

实证研究法:依据现有的科学理论和实践的需要提出设计。

定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。

定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。

跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。

功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。

模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。

三、用Java实现一个多线程HTTP服务器(论文提纲范文)

(1)支持Web直播的视频监控系统的研究与开发(论文提纲范文)

摘要
Abstract
第一章 绪论
    1.1 研究背景及意义
    1.2 国内外研究现状
    1.3 本文的研究内容
    1.4 本文的组织架构
第二章 相关技术研究及介绍
    2.1 嵌入式平台相关技术
    2.2 流媒体传输协议相关技术
        2.2.1 RTSP
        2.2.2 Web RTC
        2.2.3 RTP/RTCP
        2.2.4 SDP
        2.2.5 HTTP-FLV/WS-FLV
        2.2.6 HLS
    2.3 浏览器播放平台相关技术
        2.3.1 Media Source Extensions技术
        2.3.2 Web RTC浏览器API
        2.3.3 Web Socket
    2.4 本章小结
第三章 基于HTML5的流媒体播放技术
    3.1 HTTP-FLV/WS-FLV协议转换
        3.1.1 RTP分包组包
        3.1.2 FLV格式转换
        3.1.3 fMP4格式转换
    3.2 HLS协议转换
        3.2.1 TS格式转换
        3.2.2 M3U8索引文件
    3.3 Web RTC协议转换
        3.3.1 Web RTC交互过程
        3.3.2 拥塞控制算法
        3.3.3 发送策略
    3.4 本章小结
第四章 系统详细设计
    4.1 系统功能
    4.2 系统总体架构设计
        4.2.1 视频采集端架构设计
        4.2.2 流媒体服务器架构设计
        4.2.3 Web播放器架构设计
        4.2.4 系统工作流程
    4.3 Muduo网络框架
    4.4 嵌入式网络摄像头设计与实现
        4.4.1 视频采集模块
        4.4.2 视频编码模块
        4.4.3 RTSP服务器设计
        4.4.4 RTSP推流模块设计
    4.5 流媒体服务器设计
        4.5.1 流媒体服务设计意义
        4.5.2 视频流接收模块设计
        4.5.3 媒体资源管理模块设计
        4.5.4 HTTP服务器设计
        4.5.5 Web Socket服务器设计
        4.5.6 Web RTC服务器设计
    4.6 Web浏览器播放器设计
        4.6.1 HTTP-FLV/WS-FLV播放器设计
        4.6.2 HLS播放器设计
        4.6.3 Web RTC播放器设计
    4.7 本章小结
第五章 系统测试
    5.1 测试环境
    5.2 功能测试
        5.2.1 嵌入式网络摄像头测试
        5.2.2 流媒体服务器测试
        5.2.3 Web播放器测试
    5.3 性能测试
        5.3.1 时延测试
        5.3.2 流媒体服务器性能测试
        5.3.3 浏览器播放器性能测试
        5.3.4 与Easy Dss的对比测试
    5.4 本章小结
总结与展望
参考文献
攻读硕士学位期间取得的研究成果
致谢
附件

(2)海量射电天文观测数据的存储与处理研究(论文提纲范文)

摘要
Abstract
第一章 绪论
    1.1 研究背景
        1.1.1 大数据时代的信息管理
        1.1.2 天文大数据时代对信息管理的需求
        1.1.3 天文大数据处理面临的问题与困难
    1.2 研究意义及价值
    1.3 国内外研究现状
        1.3.1 海量数据的存储
        1.3.2 海量数据的处理
        1.3.3 海量数据的传输
        1.3.4 存储/归档系统中的数据冗余技术
    1.4 研究内容及思路
    1.5 论文的结构
第二章 负数据库模型与原理
    2.1 时序数据的基本定义
    2.2 时序数据管理
        2.2.1 时序数据文件中的术语
        2.2.2 时序数据相关的函数定义
        2.2.3 时序数据组织结构
        2.2.4 有损时序数据文件
        2.2.5 时序数据管理
    2.3 负数据库
        2.3.1 记录结构
        2.3.2 记录入库
        2.3.3 数据检索
        2.3.3.1 获取符合条件的Value1 实例
        2.3.3.2 获取精准位置序号范围
        2.3.3.3 推导出符合检索条件的记录集合
    2.4 性能分析与讨论
        2.4.1 记录数分析
        2.4.2 最优性能分析
        2.4.3 最差性能分析
        2.4.4 讨论
    2.5 本章小结
第三章 观测数据远程传输
    3.1 应用需求
    3.2 NGAS介绍
        3.2.1 数据归档功能
        3.2.2 数据同步功能
        3.2.3 远程传输
    3.3 消息传输模型
        3.3.1 带重传的同步消息传输模型
        3.3.2 带状态检测和重传功能的两路异步消息传输模型
    3.4 数据传输系统的设计与实现
        3.4.1 Pub-Server与 Sub-Server设计
        3.4.2 Pub-Server与 Sub-Server的实现
        3.4.3 Subscriber-Server与 Subscriber-Client的设计与实现
    3.5 性能测试
        3.5.1 单机环境下的性能测试
        3.5.2 模拟环境下的性能测试
    3.6 分析与讨论
    3.7 本章小结
第四章 观测数据低冗余归档
    4.1 应用需求
    4.2 纠删码算法选择
        4.2.1 相关概念和性能指标
        4.2.2 算法分析
    4.3 归档模型及其归档系统
        4.3.1 归档模型
        4.3.2 归档系统的设计与实现
    4.4 性能测试
        4.4.1 实验环境
        4.4.2 小文件对性能的影响
        4.4.3 文件大小对性能的影响
        4.4.4 并发数对性能的影响
        4.4.5 HWM对性能的影响
    4.5 分析与讨论
    4.6 本章小结
第五章 负数据库在MUSER中的应用
    5.1 明安图射电频谱日像仪简介
    5.2 MUSER负数据库的设计与实现
        5.2.1 记录结构的设计
        5.2.2 记录结构的实现
        5.2.3 记录入库
        5.2.4 数据检索
    5.3 三种系统的部署
    5.4 MUSER负数据库的性能测试
        5.4.1 记录入库性能
        5.4.2 数据检索性能
        5.4.3 丢帧率对检索性能的影响
    5.5 分析与讨论
    5.6 本章小结
第六章 结论与展望
    6.1 研究结论
    6.2 不足与展望
致谢
参考文献
附录 A攻读学位期间发表的论文和专利
附录 B攻读学位期间参与的科研项目

(3)基于Elasticsearch的实时大数据统计分析平台的研究与设计(论文提纲范文)

摘要
Abstract
第一章 绪论
    1.1 研究背景及意义
    1.2 研究现状及发展趋势
    1.3 论文的主要工作
    1.4 论文的各章节安排
    1.5 本章小结
第二章 相关理论及关键技术介绍
    2.1 数据接口模块组件
        2.1.1 Grizzly Nio Http接口简介
        2.1.2 Java11简介
    2.2 数据处理模块组件
        2.2.1 Kafka简介
        2.2.2 Spark Structured Streaming简介
    2.3 数据存储统计模块组件
        2.3.1 Lucene简介
        2.3.2 Elasticsearch简介
    2.4 本章小结
第三章 平台整体设计方案
    3.1 系统架构
        3.1.1 系统总体架构
        3.1.2 软件层次结构
        3.1.3 功能模块结构
        3.1.4 软件实现技术结构
        3.1.5 数据流程描述
    3.2 系统功能模块设计
        3.2.1 数据接口模块
        3.2.2 数据处理模块
        3.2.3 数据存储统计模块
    3.3 本章小结
第四章 平台开发和实现
    4.1 GRIZZLY NIO HTTP接口实现
        4.1.1 Http Server
        4.1.2 Http Handler
    4.2 数据写入KAFKA实现
    4.3 SPARK STRUCTURED STREAMING数据处理实现
        4.3.1 数据抽取
        4.3.2 数据清洗
        4.3.3 数据解析
        4.3.4 数据入库
    4.4 ELASTICSEARCH数据统计实现
        4.4.1 索引模板映射
        4.4.2 统计查询
    4.5 性能调优
        4.5.1 JVM调优
    4.6 本章小结
第五章 平台软件部署方案
    5.1 总体部署架构
    5.2 实际部署实施
        5.2.1 硬盘分区配置
        5.2.2 Java环境安装与配置
        5.2.3 Linux环境配置
        5.2.4 Kafka安装配置
        5.2.5 Spark安装配置
        5.2.6 Elasticsearch安装配置
    5.3 本章小结
第六章 平台测试与验证
    6.1 测试用例说明
    6.2 测试环境搭建
    6.3 测试结果分析
        6.3.1 Java11测试
        6.3.2 Grizzly测试
        6.3.3 Spark Structured Streaming测试
        6.3.4 性能测试
        6.3.5 稳定性测试
    6.4 本章小结
总结与展望
    1.论文工作总结
    2.后续工作展望
参考文献
攻读硕士学位期间取得的研究成果
致谢
附件

(4)基于Qt的跨平台web服务开发框架(论文提纲范文)

摘要
ABSTRAC T
缩略语对照表
第一章 绪论
    1.1 课题研究的背景和意义
    1.2 研究现状
    1.3 主要工作和论文结构
        1.3.1 主要工作
        1.3.2 论文结构
第二章 开发框架需求分析
    2.1 开发框架的总体需求分析
    2.2 功能需求分析
        2.2.1 网络应用服务器
        2.2.2 服务请求处理框架
        2.2.3 常用业务框架
        2.2.4 验证用的业务功能
    2.3 性能需求分析
    2.4 本章小结
第三章 开发框架设计
    3.1 开发框架总体设计
    3.2 网络应用服务器设计
    3.3 服务请求处理框架设计
    3.4 常用业务框架设计
        3.4.1 数据库连接池设计
        3.4.2 日志框架设计
        3.4.3 登录框架设计
        3.4.4 主页面框架设计
        3.4.5 业务表单框架设计
    3.5 验证用的业务功能设计
        3.5.1 热用户卡读写卡系统设计
        3.5.2 供热用户档案展示设计
    3.6 系统发布目录结构设计
    3.7 本章小结
第四章 开发框架实现
    4.1 网络应用服务器的实现
    4.2 服务请求处理框架的实现
    4.3 常用业务框架的实现
        4.3.1 数据库连接池的实现
        4.3.2 日志框架的实现
        4.3.3 登录框架的实现
        4.3.4 主页面及菜单权限控制的实现
        4.3.5 业务表单框架的实现
    4.4 验证用的业务功能的实现
        4.4.1 热用户卡读写卡系统的实现
        4.4.2 供热用户档案展示的实现
    4.5 本章小结
第五章 开发框架测试
    5.1 功能测试
        5.1.1 功能测试用例的选择
        5.1.2 功能测试的结果
    5.2 压力测试
        5.2.1 工具及测试环境的选择
        5.2.2 压力测试业务场景的选择
        5.2.3 压力测试的结果
    5.3 本章小结
第六章 总结与展望
    6.1 工作总结
    6.2 工作展望
参考文献
致谢
作者简介

(5)基于Node.Js的Web系统性能提高方法研究(论文提纲范文)

摘要
Abstract
1 绪论
    1.1 研究背景与意义
    1.2 国内外研究现状
    1.3 主要研究内容
    1.4 论文的结构安排
    1.5 本章小结
2 相关技术介绍
    2.1 Node技术深入研究
        2.1.1 Node.js是什么?
        2.1.2 JavaScript与Node
        2.1.3 Web环境I/O的演化
        2.1.4 Node的I/O模型
        2.1.5 Node应用场景
    2.2 Express框架
        2.2.1 Express简史
        2.2.2 Express特点
    2.3 持久化数据
        2.3.1 NoSQL是什么?
        2.3.2 MongoDB数据库
    2.4 本章小结
3 Node的多核多进程方案研究
    3.1 Node单线程非阻塞I/O的优势
    3.2 Node单线程模型的不足
    3.3 现有的Node多核解决方案及问题
    3.4 本文的Node多核解决方案
        3.4.1 多进程创建
        3.4.2 负载均衡
        3.4.3 进程管理
    3.5 基于Node的多核HTTP服务器
        3.5.1 master进程的工作
        3.5.2 worker进程的工作
    3.6 单线程与多线程性能对比
    3.7 本章总结
4 基于Node的在线观影系统
    4.1 系统总体架构设计
    4.2 RESTFul路由设计
    4.3 MongoDB数据库设计
        4.3.1 Mongoose实现数据库的模型化
        4.3.2 MongoDB数据库关系设计
    4.4 核心功能模块的设计与实现
        4.4.1 用户管理
        4.4.2 电影管理
        4.4.3 评论管理
        4.4.4 电影分类管理
    4.5 本章小结
5 系统测试
    5.1 测试原理和目的
    5.2 测试方法
        5.2.1 测试工具
        5.2.2 测试环境
    5.3 实验数据及结果分析
    5.4 本章小结
6 总结与展望
    6.1 本文工作总结
    6.2 未来研究工作展望
致谢
参考文献
在校学习期间所发表的论文、专利、获奖及社会评价等

(6)可伸缩web架构中的并发编程模式(论文提纲范文)

摘要
ABSTRACT
第一章 引言
    1.1 课题背景
    1.2 课题任务
        1.2.1 课题内容
        1.2.2 本人承担任务
    1.3 论文结构
第二章 万维网,并发,伸缩性及常用组件
    2.1 基础知识
        2.1.1 Web基本概念概述
        2.1.2 并发性
        2.1.3 可伸缩性
    2.2 可伸缩web架构中的常用组件介绍
    2.3 本章小结
第三章 高性能web服务器架构中的并发模式
    3.1 概述
        3.1.1 web请求的处理流程
        3.1.2 c10K问题
        3.1.3 I/O操作模型
    3.2 常用web服务器架构
        3.2.1 基于线程的web服务器架构
        3.2.2 基于事件驱动的web服务器架构
        3.2.3 混合模式的web服务器架构
    3.3 本章小结
第四章 应用业务逻辑中的并发模式
    4.1 概述
    4.2 基于线程,锁,共享状态的并发模式
        4.2.1 共享和可变状态的含义
        4.2.2 案例分析:Java中的并发
        4.2.3 基于线程和锁的并发业务逻辑
    4.3 基于软件事务内存的并发模式
        4.3.1 软件事务内存的含义
        4.3.2 案例分析:Clojure中的并发
        4.3.3 基于软件事务内存的并发业务逻辑
    4.4 基于角色的并发模式
        4.4.1 角色模型
        4.4.2 案例分析:Scala中的并发
        4.4.3 基于软件事务内存的并发业务逻辑
    4.5 基于事件驱动的并发模式
        4.5.1 事件驱动架构
        4.5.2 案例分析:Node.js中的并发
        4.5.3 基于事件驱动的并发业务逻辑
    4.6 本章小结
第五章 后端存储中的并发模式
    5.1 概述
    5.2 分布式数据库的挑战
    5.3 分布式数据库系统的类型
        5.3.1 关系型数据库系统
        5.3.2 非关系型数据库系统
    5.4 本章小结
第六章 编程实现与测试
    6.1 概述
    6.2 用Ruby实现一个基于多线程和事件驱动混合模式的web服务器
        6.2.1 开发环境及工具
        6.2.2 代码讲解
        6.2.3 测试说明
    6.3 用Java实现一个基于多线程模式的大规模feed系统应用业务逻辑
        6.3.1 大规模feed系统简介
        6.3.2 开发环境及工具
        6.3.3 核心代码详解
        6.3.4 测试代码说明
    6.4 用MySQL集群实现一个大规模feed系统的后端存储
        6.4.1 大规模feed系统的后端存储简介
        6.4.2 开发环境及工具
        6.4.3 核心代码及架构详解
        6.4.4 测试代码说明
    6.5 本章小结
第七章 选择合适的并发模式
    7.1 概述
    7.2 选择合适的web服务器架构
    7.3 选择适合应用业务逻辑的并发策略
    7.4 选择合适的后端存储架构
    7.5 本章小结
第八章 结束语
    8.1 论文工作总结
    8.2 问题和展望
参考文献
致谢

(7)浅谈HTTP服务器的设计与实现(论文提纲范文)

一、HTTP简介
二、HTTP服务器简介
三、界面设计
四、程序具体实现
    1. 实现主程序。
    2. 实现各个调用模块函数。
五、结果测试

(8)MEANS:基于微线程结构的网络服务器(论文提纲范文)

0 引 言
1 Internet应用与传统的服务器结构
    1.1 Internet应用
    1.2 多线程与事件驱动结构
2 MEANS结构
    2.1 MEANS的设计目标
    2.2 设 计
        2.2.1 微线程
        2.2.2 微引擎
        2.2.3 任务队列
3 评 价
    3.1 测试环境
    3.2 性能分析
4 相关研究及讨论
5 结 论

(9)基于多线程的HTTP服务器的设计与实现(论文提纲范文)

0 引言
1 HTTP服务器应用技术要点
    1.1 HTTP协议
    1.2 HTTP服务器的基本工作原理
2 多线程HTTP服务器的设计与实现
    2.1 多线程HTTP服务器的总体设计
    2.2 主要功能的实现代码
    2.3 结果测试
3 结语

(10)嵌入式web服务器的实时性研究(论文提纲范文)

摘要
Abstract
第1章 绪论
    1.1 课题研究背景
    1.2 EPA分布式网络控制系统简介及其关键技术
    1.3 本论文研究的对象
    1.4 本论文研究的意义和研究目标
    1.5 本论文任务和结构
第2章 嵌入式web服务器的实时性分析
    2.1 嵌入式实时系统
        2.1.1 实时系统概念
        2.1.2 实时级别
    2.2 嵌入式实时web服务器的设计思想
    2.3 影响嵌入式web服务器的实时性的硬件因素
        2.3.1 单片机设计嵌入式web服务器的局限性
        2.3.2 高性能微处理器设计嵌入式web服务器的优越性
    2.4 影响嵌入式web服务器的实时性的软件因素
        2.4.1 实时操作系统
        2.4.2 TCP/IP协议栈
        2.4.3 嵌入式web文档技术
    2.5 影响嵌入式web服务器的实时性的网络通讯因素
        2.5.1 网络通信通用技术分析
        2.5.2 EPA通信机制
    2.6 系统硬件开发环境
        2.6.1 硬件开发平台介绍
        2.6.2 开发方式
        2.6.3 开发工具
    2.7 本章小结
第3章 嵌入式实时web服务器的服务器端实现
    3.1 嵌入式实时web服务器设计方案
    3.2 μC/OS-Ⅱ结合LwIP协议栈设计实时开发环境
        3.2.1 μC/OS-Ⅱ操作系统在AT9140008上的移植
        3.2.2 LwIP在μC/OS-Ⅱ操作系统中的移植
    3.3 实时任务创建和同步
    3.4 HTTP服务器和文件系统
        3.4.1 HTTP服务器的设计
        3.4.2 文件系统实现
    3.5 快速数据交互设计
        3.5.1 R-BUS协议
        3.5.2 实时数据交互设计
        3.5.3 历史数据交互设计
    3.6 以太网驱动程序
    3.7 服务器端测试
    3.8 本章小结
第4章 嵌入式实时web服务器的客户端实现
    4.1 ActiveX技术
    4.2 实时客户端设计方案
    4.3 虚拟仪表界面
        4.3.1 通讯模块
        4.3.2 存储模块
        4.3.3 总态图
        4.3.4 实时监控界面
        4.3.5 历史监控模块
    4.4 客户端测试
    4.5 本章小结
第5章 结论与展望
    5.1 结论
    5.2 课题展望
参考文献
致谢

四、用Java实现一个多线程HTTP服务器(论文参考文献)

  • [1]支持Web直播的视频监控系统的研究与开发[D]. 薛粤桂. 华南理工大学, 2020(05)
  • [2]海量射电天文观测数据的存储与处理研究[D]. 石聪明. 昆明理工大学, 2019(06)
  • [3]基于Elasticsearch的实时大数据统计分析平台的研究与设计[D]. 吉喆. 华南理工大学, 2019(01)
  • [4]基于Qt的跨平台web服务开发框架[D]. 张劲峰. 西安电子科技大学, 2019(02)
  • [5]基于Node.Js的Web系统性能提高方法研究[D]. 杨林. 西安理工大学, 2016(04)
  • [6]可伸缩web架构中的并发编程模式[D]. 陈凌阳. 北京邮电大学, 2014(04)
  • [7]浅谈HTTP服务器的设计与实现[J]. 于大海,张岩. 教育教学论坛, 2012(S1)
  • [8]MEANS:基于微线程结构的网络服务器[J]. 龚奕利,雷迎春,张文,吴产乐,张国安. 计算机研究与发展, 2010(08)
  • [9]基于多线程的HTTP服务器的设计与实现[J]. 邵芬,于国防,张宁. 工矿自动化, 2008(04)
  • [10]嵌入式web服务器的实时性研究[D]. 郑一强. 浙江大学, 2007(02)

标签:;  ;  ;  ;  ;  

用 Java 实现多线程 HTTP 服务器
下载Doc文档

猜你喜欢