`
rcfalcon
  • 浏览: 228086 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

跨JAVA WEB工程远程数据传输方案设计

 
阅读更多

JAVA WEB工程远程更新方案设计

版本:V0.1

作者:CG

背景

需要在JAVAWEB工程,基于HTTP协议可靠的传输大规模数据。

原因:在使用数据库远程连接的时候由于远程数据库连接本身的不可靠性(服务器端经常断开与JDBC的连接),而造成事务不断回滚而造成数据始终无法传递。所以需要设计一个可靠的、通用的远程更新方案。

方案流程

技术选型及实验结果

l 序列化、反序列化实验

使用第三方JAVAxstream-1.3.1

此包支持将数据进行XML格式的序列化、反序列化。

实验结果:

1. 该工具支持JAVA数据对象的序列化、反序列化。

2. 该工具支持JAVA容器对象的序列化、反序列化。

完全满足数据传输需求。

l 文件压缩实验

使用JAVA基本类库的java.util.zip工具,可以正确的将不包含中文字符的文件、目录打包。

满足本方案需求。

l 文件传输实验

上传方使用 commons-httpclient-3.1 工具模拟进行文件POST方法。

接收方使用 commons-fileupload-1.2.1 工具接收文件上传。

可以正确的传输文件,满足本方案需求。

l 数据实验

模拟实际数据,在一个任务批次下进行以上序列化、压缩。情况如下:

使用topv3库,模拟传输应用到的数据量。

数据记录如下:

表名

tasked

记录条数

序列化后文件大小

Display_top

8257568

774

89KB

display_top_url

8257568

15024

1967KB

video_information

all

997

392KB

总计数据库记录条数:16795

总计文件大小:2.38MB

压缩之后大小:223KB

序列化、反序列化、压缩和解压时间忽略不计,按文件传输时间为瓶颈估算一个批次时间:

假设上传速度为10KB/S(实际情况应该更快), 一共需要22秒,可以接受。


流程保证

l 客户端

1. 客户端的序列化、打包在本地运行,调试完成之后处理静态数据一般不会出错(若出错则报告管理员),此处不再赘述。

2. HTTP传输过程中,若本地超时(包括连接不到服务器)、或者服务器返回超时、失败信息,则中止当次传输任务,等待若干秒(需结合实际情况调整),再进行连接。

3. 若始终任务未成功(重试次数范围内未传输成功),则发邮件报警通知管理员。

4. 若服务器端解压缩、反序列化失败,立即返回任务失败。

客户端流程


l 服务器端

1. 接受到上传任务,则立即将当前任务清空。

2. 处理上传过程中,若遇到数据超时、失败,则立即给客户端返回相应信息。

3. 在解压、反序列化过程中若异常,则发邮件报警通知管理员。并返回给客户端失败。

服务器端流程

最终流程及选型汇总

分享到:
评论

相关推荐

    Java实现远程桌面(参赛作品)

    Java是一种跨平台、面向对象的编程语言,具有“一次编写,到处运行”的特性,因此这个远程桌面解决方案理论上可以在任何支持Java的设备上运行。 2. **网络编程**:实现远程桌面功能的关键是网络通信。开发者可能...

    java实现远程控制

    总结,本Java实现的远程控制程序是一个高效、易用的解决方案,它利用了Java的强大功能,如多线程和B/S架构,以实现远程控制的需求。配合详细的开发文档和可执行文件,开发者和用户都能轻松理解和使用这个系统,...

    基于Web的远程实时监测框架.pdf

    设计和实现数据传输模块,是基于Web的远程实时监测框架的关键。数据传输模块可以使用HTTP、HTTPS等协议来实现。 (五)设计和实现客户端模块 设计和实现客户端模块,是基于Web的远程实时监测框架的关键。客户端...

    基于Java AWT、SpringBoot、websocket、canvas的跨平台远程桌面实现

    总的来说,这个项目融合了Java GUI编程、微服务架构、实时通信技术以及前端图形渲染,实现了高效、安全的跨平台远程桌面解决方案。对于开发者而言,了解并掌握这些技术对于提升自身在分布式系统开发和运维领域的专业...

    基于JAVA网络远程监控系统软件的实现(源码)

    Java网络远程监控系统是一种能够实时收集、分析和管理分布在不同地理位置的计算机系统状态的软件解决方案。这个基于JAVA的网络远程监控系统提供了强大的功能,包括硬件性能监控、软件运行状况检查、网络流量分析以及...

    java web 仓库管理系统

    该系统利用Web技术实现远程访问和跨平台操作,为企业提供高效、便捷的仓库管理解决方案。下面将详细探讨Java Web在仓库管理系统中的应用及其相关知识点。 1. **Java Web 技术栈** - **Servlet**:作为服务器端处理...

    基于JAVA的远程视频监控系统设计答辩ppt.ppt

    本系统设计采用JAVA作为主要开发语言,以实现跨平台的远程视频监控功能。 一、课题背景及研究意义 1. 随着对安全需求的日益增长,人工现场值守变得不经济且效率低下,因此,设计一种基于JAVA的远程视频监控系统显得...

    基于Java Web的社区医院远程预约挂号管理系统源码.zip

    总结,这个基于Java Web的社区医院远程预约挂号管理系统,充分利用了Java的技术优势和Web的便利性,为社区医院提供了智能化、高效的预约挂号解决方案。通过合理的架构设计和功能实现,不仅提升了医疗服务的效率,也...

    利用XML实现WEB远程打印

    利用XML实现WEB远程打印,不仅可以简化数据传输,还能提供灵活的结构化信息,方便服务端处理和客户端交互。通过结合Web服务和XML,开发者可以构建高效、安全的远程打印解决方案,适应各种网络环境和设备需求。在实际...

    Java技术在机组振动远程监测诊断系统中的应用

    系统设计人员需要熟悉网络编程、图形用户界面设计、多线程编程以及网络数据传输等关键Java技术。 8. 服务器端和客户端开发 在B/S架构的远程监测诊断系统中,服务器端需要负责处理数据采集、分析和逻辑运算等核心...

    Java.Web服务开发

    而JSON轻量级且易于解析,更适合Web应用中的数据传输。 7. **Tomcat与Jetty**:这些都是流行的Java Web应用服务器,用于运行Servlet和JSP。Tomcat是Apache软件基金会的产品,小巧且性能优秀;Jetty则是轻量级且快速...

    Java Web 项目开发案例精粹 20

    在Java Web中,可以使用Java IO和File API进行本地文件操作,或者使用FTP、SFTP等协议进行远程文件传输。对于大型文件,可能还需要考虑分块上传和下载,以及文件的版本控制。 至于前端界面,可能使用HTML、CSS和...

    基于Web的设备远程监控系统的设计与实现_2.pdf

    在远程监控系统中,串口通信用于连接现场控制器与服务器之间的数据传输。由于其简单、高效的特点,串口通信在工业现场设备中应用广泛。 5. 数据库技术:远程监控系统中的数据库用于存储和管理监控设备信息、生产...

    【Java毕业设计】基于Java Web的智能二维码门禁管理系统(本科毕业论文+毕业设计).zip

    【Java Web智能二维码门禁管理系统】是一个典型的Java技术栈实现的Web应用,旨在提供安全、高效、便捷的门禁管理解决方案。系统的核心功能是通过二维码识别技术,对人员出入进行控制,适用于各种场所如办公楼、住宅...

    Java轻量级跨语言跨平台面向对象的高性能远程动态通讯中间件.zip

    高效的性能主要体现在其对网络通信的优化,如使用高效的序列化和反序列化机制,以及最小化的数据传输量,确保了远程调用的快速响应。 面向对象的特性使得Hprose能够很好地适应Java这样的面向对象编程环境,允许...

    web远程视屏实时监控系统

    "Web远程视频实时监控系统"是一种利用网络技术实现...综上所述,"Web远程视频实时监控系统"结合了Web、Qt和Java等技术,构建了一个从硬件采集、网络传输到用户端展示的完整解决方案,强调实时性、安全性和可扩展性。

    java毕业设计-基于Java的远程视频会议系统(系统+论文).zip

    【标题解析】 "java毕业设计-基于Java的远程视频会议系统(系统+论文).zip" 这个标题表明这是一...通过这个项目,学生可以全面地掌握Java编程和软件工程实践,同时也能了解远程视频会议系统背后的技术挑战和解决方案。

    Java毕设之远程家庭健康监测管理系统.rar

    【Java毕设之远程家庭健康监测管理系统】是一个完整的Java毕业设计项目,主要涵盖了Java后端开发、前端界面设计以及数据库管理等多方面的技术知识。该项目致力于实现一个远程的家庭健康监测系统,用户可以通过该系统...

    多媒体远程教育平台系统的设计方案.pdf

    ### 多媒体远程教育平台系统的设计方案 #### 摘要 随着信息技术的快速发展,远程教育已成为提升教育质量、拓宽教育资源的重要途径。本文基于多媒体远程教育平台系统的设计方案,深入探讨了其架构、关键技术及系统...

Global site tag (gtag.js) - Google Analytics