高并发系统的开发注意事项

来源:互联网 发布:黄金交易模拟软件 编辑:程序博客网 时间:2024/04/30 08:10

   商用服务器经常因为一些商业的原因被很多为生活苦苦奋斗的hack们扫荡。对于一个要支持高并发的系统来说,在开发阶段有几个事情需要我们注意:

  1、如果你用hibernate,注意你的主键获取不要用increment了,那玩意在并发的时候给你带来主键约束错误,还是考虑使用sequence之类的主键策略吧

  2、定时任务的考虑,并不是所有的定时任务都需要考虑并发的情况。但是例如定时些数据库的时候,如果你做负载均衡了,每个服务器都会写,是否造成重复写脏数据就需要看业务逻辑而定了。例如:你要定时给某个邮箱发送邮件,负载的时候,每个机器都会做相同的操作,定时任务会造成多个机器都发送邮件。(你可以考虑将某些定时任务移动到存储过程或者使用单独的定时服务器来做。)

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

 

  解释下你常见的负载均衡:就是多个服务器执行相同的代码,我们通过tomcat将请求均衡的分布在某个服务器上。如果你使用increment策略,在开发组内多个成员在各自的开发机器上进行数据添加的时候,经常会出现主键约束错误

  定时任务:有些定时任务在多台机器做负载均衡的时候不适合使用,你可以考虑将任务使用一个链接请求处理,然后在做一个单独的请求链接的项目,定时请求链接。这样做的好处是:即利用了系统的负载均衡,同时还利用了系统本身的业务逻辑。

原创粉丝点击