关于SSM+mysql框架大数据量的支持优化
来源:互联网 发布:天海翼 知乎 编辑:程序博客网 时间:2024/06/05 08:13
关于SSM+mysql框架大数据量的支持优化说明:
一、背景说明:
1. 框架简要:
a. 上传数据: ajax-->struct2-->java接收-->自有的DB处理框架-->存储数据库(mysql);
b. 获取数据:自有框架获得数据库数据-->json转换--> 客户端接收json-->展示
2. ajax提交的数据超过2M,获得的数据也超过2M
3. 问题;
a. mysql 数据库频繁报错:
Packet for query is too large(841859 >4194304).You can change this value on the server by setting the max_allowed_packet' variable.
b. JAVA class 整个类将无法接收请求, 请求报错:
No result defined for action com.xxx.xxxAction and result input
c. ajax 超时请求,后台报错:
ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error
二、Struct2
- struts.xml 增加如下配置, 更改框架对请求的限制。
<constant name="struts.multipart.maxSize" value="10000000"/>
在serve.xml的connector 节点配置如下:
<Connector port="8080" protocol="HTTP/1.1" maxPostSize="0" redirectPort="8443" URIEncoding="UTF-8" maxThreads="600" minSpareThreads="100" maxSpareThreads="500" acceptCount="700" connectionTimeout="120000" maxKeppAliveRequests="100" keepAliveTimeOut="60000" maxConnections="300"/>
四、my.ini
max_allowed_packet=100M
配置完后,记得重启mysql 服务。
五、ajax
因为返回的数据量较大,当ajax请求已经超时时,服务器请求的接口还在处理,当返回时,找不到连接,将报如下错误:
ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error
此事,我们需要将ajax的请求调整:
$.ajax({ url:ajaxBase+'/site_toEnt', type:'POST', async:true, data:{ id:id }, timeout:120000, dataType:'json',
以上,仅为现有的处理办法。
后续还有以下几点,还需要优化,共勉:
1. 上传数据的压缩处理(包含图片的压缩处理)
2. 上传数据存储,由数据库更改为文件存储(需要考虑并发的文件读取问题)。
3. 下发数据的压缩以及页面展示时的解压。
4. 分段请求
阅读全文
0 0
- 关于SSM+mysql框架大数据量的支持优化
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- MySQL大数据量insert的优化
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- 大数据量时Mysql的优化要点
- MySQL随机获取数据的方法,支持大数据量
- MySQL随机获取数据的方法,支持大数据量
- 关于Sql Servel 表数据量大的优化处理。
- Mysql 大数据量高并发的数据库优化
- mysql如何优化大数据量情况下的distinct
- 大数据量时Mysql的优化要点[转]
- SSH三大框架实现用户登录及用户表增删改查的测试
- 初始数据结构+算法复杂度
- Linux C++ 简单爬虫
- Qt学习之路(1):前言
- Verif-y——数字经济基于区块链的强大身份证
- 关于SSM+mysql框架大数据量的支持优化
- wordpress小工具文件
- SVN 多项目管理(强烈建议每个项目建一个库)
- bzoj 1058: [ZJOI2007]报表统计(set+multiset)
- 逻辑运算符与或非
- 将Eclipse中的项目push 到 GitHub上面去
- Java的static关键字
- linux 实现秒级定时任务
- QT编程基础的一些介绍