Java项目中高并发问题的简单解决方案
Posted 苏格拉的底
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java项目中高并发问题的简单解决方案相关的知识,希望对你有一定的参考价值。
Java项目中高并发问题的简单解决方案
1、尽量使用缓存技术来做。用户缓存,页面缓存等一切缓存,使用特定的机制进行刷新。利用消耗内存空间来换取用户的效率,同时减少数据库的访问次数。
2、把数据库的查询语句进行优化,一般复杂的SQL语句就不要使用ORM框架自带的做法来写,采用自己来写SQL,例如hibernate的hql中的复杂语句就会很耗时。
3、优化数据库的表结构,在关键字、主键、访问率极高的字段中加入索引。但尽量只是在数字类型上面加,因为使用字段is null 的时候,索引的效果就会失效。
4、报表统计的模块,尽量使用定时任务执行,如果非要实时进行刷新,那么就可以采用缓存来做数据。
5、可以使用静态页面的地方,尽量使用静态页面,减少页面的解析时间。同时页面中的图片过多时,可以考虑把图片单独做成一个服务器,这样可以减少业务服务器的压力。
6、使用集群的方式来解决单台服务器的性能问题。
7、把项目拆分成多个应用小型服务器的形式来进行部署。采用数据同步机制(可以使用数据库同步形式来做)达到数据一致性。
8、使用负载均衡模式来让每一个服务器资源进行合理的利用。
9、缓存机制中,可以使用redis来做内存数据库缓存起来。也可以使用镜像分担,这样可以让两台服务器进行访问,提高服务器的访问量。
10、分布式Session共享解决方案 https://blog.csdn.net/u011955252/article/details/82083864
11、 java高并发解决方案 http://www.bjpowernode.com/tutorial_bf/
12、使用数据库索引 https://www.cnblogs.com/wwxzdl/p/11116446.html
(数据库的五种索引)、https://blog.csdn.net/gaotiedun1/article/details/88584362
13、使用后端框架系统
①、springboot、springcloud,微服务架构体系。
②、安全框架、Apache shiro core模块
③、引擎模板、thymeleaf
④、持久层框架 Mybatis
⑤、定时任务、Quartz
⑥、数据库连接池、Druid
⑦、代码生成、基于mybatis-plus的代码生成工具
⑧、项目管理、Maven
⑨、缓存技术、Redis shiro自带缓存,
⑩、负载均衡、使用nginx配置网络实现负载
⑪、其他插件lombok
前端框架、
前端使用vue页面、
①、vue页面的创建安装axios(ajax)
②、页面使用elementUI饿了么框架。
以上是关于Java项目中高并发问题的简单解决方案的主要内容,如果未能解决你的问题,请参考以下文章