软件研发

如何做到服务的高并发、高可用?

2020-08-03 16:01:16 | 来源:中培企业IT培训网

在软件研发过程中,经常会听到高并发、高可用这两词,但是很多人都不知道如何做到服务的高并发、高可用?要实现这个要求,多线程技术,分布式技术,缓存技术和epoll多路复用技术等都是非常有效的。除了服务开发过程中需要注意相关技术的应用,关键还是服务部署时需要注意的问题。专业的事需要交给专家来完成。一个专业级别的服务器(集群)已经包含了用户大部分的关注和需求,能让用户能更专注于系统实施及应用。

如何做到服务的高并发、高可用?

这个看起来好像只有一个问题?实际上却需要专著来阐述才能完成清晰的解答,在此只能泛泛而谈说个概念。高并发,高可用是两个方面。

  高并发:在同一时间内能够处理越多的请求越好,这就要求我们的服务器能够响应这些请求,比如需要加大内存,加大带宽,在这些达到一定程度的时候,我们就只能通过水平扩展了,就是进行分布式部署,让请求落在不同的机器上,这样就可以处理更多的请求,如何让请求落在不同的机器上呢,这就需要我们设置代理转发,一般是nginx进行负载均衡,让请求合理的分配到各个机器上。同时还要做到如下几点:

1、应用级缓存

2、HTTP缓存

3、多级缓存

4、池化

5、异步并发

6、扩容

7、队列

高可用:就是数据不能丢失,出现问题之后,要能有自愈能力,就是一个服务器挂了,并不影响服务的提供,这里我们就可以设置数据库备份,主从配置,服务器也进行监听,如果有服务器宕机,可以自动切换到可用的机器上。haproxy可以做到这样的控制。同时还要做到如下几点:

1、负载均衡

2、限流

3、降级

4、隔离

5、超时与重试

6、回滚

7、压测与预案

通过上述介绍,如何做到服务的高并发、高可用相信大家已经清楚了吧,想了解更多关于高并发、高可用的信息,请继续关注中培伟业。

标签: 高并发 高可用