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

2020-05-08 13:08:32 java常见问答 9282

最近总是能听到这样一个词,高并发。可能还有很多朋友不是很了解其含义,如果有兴趣的话,可以跟小编一起来看看什么是高并发,以及高并发的标准是什么呢?

在java中,高并发属于是一种编程术语,意思就是有很多用户同时在访问,导致系统数据不正确的异常现象。并发就是说可以使用多个线抄程或进程,同时去处理不同的一些操作。它通常是指:通过设计保证系统能够同时并行处理掉很多的请求。

我们下面来看看高并发相关常用的一些指标:

响应时间(Response Time):系统对请求做出响应的时间。假设系统处理一个HTTP请求需要200ms,这个200ms就是系统的响应时间。

吞吐量(Throughput):是指单位时间内处理的请求数量。

QPS(Quety Per Second):每秒响应请求数量。在互联网领域,这个指标和吞吐量区分的不是这么的明显。

并发用户数:同时承载正常使用系统功能的用户数量。例如一个即时通讯系统,同时在线量一定程度上是代表了系统的并发用户数的。

高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够去同时并行处理很多请求。

提高系统并发能力的方式,方法论上主要有两种:垂直扩展(Scale Up)与水平扩展(Scale Out)。前者垂直扩展可以通过提升单机硬件性能,或者提升单机架构性能,来提高并发性,但是单机性能总是有极限的,互联网分布式架构设计高并发终极解决方案还是后者:即水平扩展。

互联网分层架构中,各层次水平扩展的实践又有所不同,我们可以大概了解下:

(1)反向代理层可以通过“DNS轮询”的方式来进行水平扩展;

(2)站点层可以通过nginx来进行水平扩展;

(3)服务层可以通过服务连接池来进行水平扩展;

(4)数据库可以按照数据范围,或者数据哈希的方式来进行水平扩展;

各层实施水平扩展后,能够通过增加服务器数量的方式来提升系统的性能,做到理论上的性能无限。说到底其实高并发是没有什么具体标准的。

那么以上就是有关高并发的所有内容了,还想了解更多java常见问答信息,可以马上关注本站消息,获取最新信息哦。

推荐阅读:

redis队列实现高并发怎么用?Java如何使用redis队列解决高并发?