高并发系统最关键的要注意什么?什么需要注意?

KLQ 2020-05-08 15:33:49 java常见问答 5194

之前给大家介绍了一下高并发,那么一般来说的话,高并发系统最关键的需要注意一些什么呢?有哪些东西是必须要注意的呢?下面一起来了解一下吧!

通常来讲,商用的服务器常常会因为一些商业原因, 被很多hack扫荡!那么对于一个要支持高并发的系统来讲的话,就一定要注意以下几个方面的内容。

具体的有三个方面是需要注意的!

一、注意

1、在使用二级缓存时,在负载均衡的时候,一定要注意了,你的二级缓存对数据的处理是否还符合业务逻辑呢?

有很多人经常会忽略了这一点,但是这里特地提醒,这个是必须要关注的。

2、假如,你用hibernate,那么要注意,你的主键获取不要用increment,这个东西在并发的时候,会给你带来主键约束错误,所以的话,还是考虑使用sequence之类的主键策略是比较好的。

3、定时任务的考虑

所有的定时任务都要去考虑并发的情况吗?答案是并不是所有的都需要。

可是,例如,在定时些数据库的时候,假如,你做了负载均衡,每个服务器都会写,是否造成重复写脏数据就需要看业务逻辑而定了。

例如:

当你要定时给某个邮箱发送邮件,负载的时候,每个机器都会做同样的操作,定时任务会造成多个机器都发送邮件。

注:

你可以考虑将某些定时任务移动到存储过程或者使用单独的定时服务器来做。

二、延伸阅读

1、常见的负载均衡

常见的负载均衡也就是多个服务器执行相同的代码,我们通过tomcat将请求均衡的分布在某个服务器上。

假如,你使用increment策略,在开发组内多个成员在各自的开发机器上进行数据添加时,经常会出现主键约束错误。

2、定时任务

定时任务在多台机器做负载均衡的时候不适合使用,你可以考虑将任务使用一个链接请求处理,之后再做一个单独的请求链接的项目,定时请求链接。

好处有什么?

这样做即利用了系统的负载均衡,又利用了系统本身的业务逻辑。

以上就是对于高并发系统方面的一些内容介绍了,更多java常见问答,请继续关注我们来了解吧!

推荐阅读:

高并发解决方案,应该如何处理高并发问题?

高并发是什么?其定义标准是什么?