高并发和多线程

时间:2021-12-09 17:59:24

一、高并发含义

高并发不是JAVA的专有的东西,是语言无关的广义的,为提供更好互联网服务而提出的概念。高并发想让服务器(tomcat)能接受处理多用户多请求。

 

二、高并发例子

举个极端的例子,就是100个人,1人分配1台web服务器,
那么服务器资源是他们独占的,他们不需要抢占服务器资源,100个请求被100台服务器并行处理,速度必定很快,这就是高并发。
当然这是不可能的,但是,我们总是努力去做,让少量的服务器也能达到近似的能力。
这就需要服务器的HTML画面,后台业务逻辑,db数据存取等等细节上的处理都达到一个并行的极致,
以此来实现整个服务器对所有请求的高并行。这是战略上的并行。

 

三、多线程

多线程只是为了达到高并发目的(首先得有多线程接收处理多任务,才有高并发发生)。在某个细节点上,为实现某并发功能而采用的一种具体的实现方法,这种功能也可以由多进程实现,
当然,也可以由多进程,多线程一起实现。这是战术上的并行。

 

四、高并发和多线程关系

高并发是目的,多线程是某种手段(不是唯一的)。高并发可以由多线程实现,但是多线程不代表就是高并发。

上面话拆开两部分:【高并发可以由多线程实现:tomcat多线程处理多用户请求,从而达到高并发处理】。【但是多线程不代表就是高并发:分片上传】