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项目中高并发问题的简单解决方案的主要内容,如果未能解决你的问题,请参考以下文章

JAVA中高访问量高并发的问题怎么解决?

java中高并发和高响应解决方法

Java教程!Java中高级面试必知必会

linux中高并发socket最大连接数的优化

多线程必看之JAVA线程并发辅助类

真实项目开发中高并发实战经验总结