什么是高并发?

80 篇文章 4 订阅
订阅专栏
9 篇文章 0 订阅
订阅专栏

什么是高并发?

高并发(High Concurrency)是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求,数据库的操作等。

高并发的处理指标?

高并发相关常用的一些指标有:

1.响应时间(Response Time)

响应时间:系统对请求做出响应的时间。例如系统处理一个HTTP请求需要200ms,这个200ms就是系统的响应时间

2.吞吐量(Throughput)

吞吐量:单位时间内处理的请求数量。

3.每秒查询率QPS(Query Per Second)

QPS:每秒响应请求数。在互联网领域,这个指标和吞吐量区分的没有这么明显。

4.并发用户数

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

高并发和多线程的关系和区别

“高并发和多线程”总是被一起提起,给人感觉两者好像相等,实则 高并发 ≠ 多线程

1.多线程

多线程是java的特性,因为现在cpu都是多核多线程的,可以同时执行几个任务,为了提高jvm的执行效率,java提供了这种多线程的机制,以增强数据处理效率。多线程对应的是cpu,高并发对应的是访问请求,可以用单线程处理所有访问请求,也可以用多线程同时处理访问请求。

在过去单CPU时代,单任务在一个时间点只能执行单一程序。之后发展到多任务阶段,计算机能在同一时间点并行执行多任务或多进程。虽然并不是真正意义上的“同一时间点”,而是多个任务或进程共享一个CPU,并交由操作系统来完成多任务间对CPU的运行切换,以使得每个任务都有机会获得一定的时间片运行。

再后来发展到多线程技术,使得在一个程序内部能拥有多个线程并行执行。一个线程的执行可以被认为是一个CPU在执行该程序。当一个程序运行在多线程下,就好像有多个CPU在同时执行该程序。

总之,多线程即可以这么理解:多线程是处理高并发的一种编程方法,即并发需要用多线程实现。

2.高并发

高并发不是JAVA的专有的东西,是语言无关的广义的,为提供更好互联网服务而提出的概念。

典型的场景,例如:12306抢火车票,天猫双十一秒杀活动等。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求,数据库的操作等。如果高并发处理不好,不仅仅降低了用户的体验度(请求响应时间过长),同时可能导致系统宕机,严重的甚至导致OOM异常,系统停止工作等。

如果要想系统能够适应高并发状态,则需要从各个方面进行系统优化,包括,硬件、网络、系统架构、开发语言的选取、数据结构的运用、算法优化、数据库优化等……而多线程只是其中解决方法之一。

多线程并发技术

1.并发编程三要素

  •  原子性原子,即一个不可再被分割的颗粒。在Java中原子性指的是一个或多个操作要么全部执行成功要么全部执行失败。
  •  有序性程序执行的顺序按照代码的先后顺序执行。(处理器可能会对指令进行重排序)
  •  可见性当多个线程访问同一个变量时,如果其中一个线程对其作了修改,其他线程能立即获取到最新的值。

2. 线程的五大状态

  •  创建状态当用 new 操作符创建一个线程的时候
  •  就绪状态调用 start 方法,处于就绪状态的线程并不一定马上就会执行 run 方法,还需要等待CPU的调度
  •  运行状态CPU 开始调度线程,并开始执行 run 方法
  •  阻塞状态线程的执行过程中由于一些原因进入阻塞状态比如:调用 sleep 方法、尝试去得到一个锁等等
  •  死亡状态run 方法执行完 或者 执行过程中遇到了一个异常

3.悲观锁与乐观锁

  •  悲观锁:每次操作都会加锁,会造成线程阻塞。
  •  乐观锁:每次操作不加锁而是假设没有冲突而去完成某项操作,如果因为冲突失败就重试,直到成功为止,不会造成线程阻塞。

4.线程之间的协作:wait/notify/notifyAll等

5.synchronized 关键字

6.CAS

CAS全称是Compare And Swap,即比较替换,是实现并发应用到的一种技术。操作包含三个操作数 —— 内存位置(V)、预期原值(A)和新值(B)。 如果内存位置的值与预期原值相匹配,那么处理器会自动将该位置值更新为新值 。否则,处理器不做任何操作。

7.线程池

如果我们使用线程的时候就去创建一个线程,虽然简单,但是存在很大的问题。如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。线程池通过复用可以大大减少线程频繁创建与销毁带来的性能上的损耗。

高并发技术方案:提高高并发能力

1.分布式缓存:redis、memcached等,结合CDN来解决图片文件等访问。

2.消息队列中间件:activeMQ等,解决大量消息的异步处理能力。

3.应用拆分:一个工程被拆分为多个工程部署,利用dubbo解决多工程之间的通信。

4.数据库垂直拆分和水平拆分(分库分表)等。

5.数据库读写分离,解决大数据的查询问题。

6.还可以利用nosql ,例如mongoDB配合mysql组合使用。

7.还需要建立大数据访问情况下的服务降级以及限流机制等。

高并发具体指的是什么
m0_46376834的博客
09-02 704
【代码】高并发具体指的是什么。
线程与并发:(一)高并发和多线程的关系
zhaolang2009的博客
12-26 6474
高并发和多线程”总是被一起提起,给人感觉两者好像相等,实则 高并发 ≠ 多线程   多线程是完成任务的一种方法,高并发是系统运行的一种状态,通过多线程有助于系统承受高并发状态的实现。    高并发是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问或者socket端口集中性收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况
【高性能、高并发、高可用】
最新发布
严文文 Chris
08-29 843
高性能、高并发、高可用是构建现代大规模系统的三个关键目标,它们各自解决不同的问题,但在实际系统中往往需要综合考虑,互为补充。例如,高并发可能会带来性能瓶颈,而高可用需要在性能和资源消耗之间找到平衡。通过合理的架构设计和技术选型,可以构建出既能应对大量并发请求,又具有快速响应和高可用性的系统。
究竟啥才是互联网架构“高并发
weixin_33835103的博客
02-06 4508
为什么80%的码农都做不了架构师?>>> ...
阿里P8架构师谈:高并发与多线程的关系、区别、以及高并发的系统解决方案
u011277123的博客
09-03 6880
原创: 架构师进阶 优知学院 5天前 “ 很多只知道高并发,却不知道高并发与多线程的关系,以及真正的高并发应该如何设计技术方案”   01 — 什么是高并发   高并发(High Concurrency)是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系...
高并发和多线程的关系
zqhao的博客
03-20 229
高并发和多线程”总是被一起提起,给人感觉两者好像相等,实则 高并发 ≠ 多线程 多线程是完成任务的一种方法,高并发是系统运行的一种状态,通过多线程有助于系统承受高并发状态的实现。 高并发是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问或者socket端口集中性收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系统在...
什么是高并发 ,详细讲解
weixin_42408447的博客
05-26 7767
一、什么是高并发 高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。   高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒查询率QPS(Query Per Second),并发用户数等。   响应时间:系统对请求做出响应的时间。例如系统处理一个HTTP请求需要200ms,这个200ms就是系...
面试最让你手足无措的一个问题:你的系统如何支撑高并发
02-24
这篇文章,我们聊聊大量同学问我的一个问题,面试的时候被问到一个让人特别手足无措的问题:你的系统如何支撑高并发?大多数同学被问到这个问题压根儿没什么思路去回答,不知道从什么地方说起,其实本质就是没经历过...
到底什么才算是高并发
weixin_43870079的博客
09-23 1032
高并发通常是指我们提供的系统服务能够同时并行处理很多请求。 高并发的问题,我们具体该关心什么? 1.QPS(TPS):每秒钟 request/事务 数量,在互联网领域,指每秒响应请求数(指http请求); 2.吞吐量:单位时间内处理的请求数量(通常由QPS与并发数决定); 3.响应时间:系统对一个请求做出响应的平均时间。例如系统处理一个HTTP请求需要200ms,这个200ms就是系统的响应时间(...
怎样才算高并发
jiaweiok123的博客
02-20 2805
一、什么是高并发 定义: 高并发(High Concurrency)是使用技术手段使系统可以并行处理很多请求。 关键指标: -响应时间(Response Time) -吞吐量(Throughput) -每秒查询率QPS(Query Per Second) -每秒事务处理量TPS(Transaction Per Second) -同时在线用户数量 关键指标的维度...
如何处理负载、高并发
wuhaifei
02-04 1968
答:从低成本、高性能和高扩张性的角度来说有如下处理方案: 1、HTML静态化 其实大家都知道,效率最高、消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的 网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法。 2、图片服务器分离 把图片单独存储,尽量减少图片等大流量的开销,可以放在一些相关的平台上,如骑牛等 3、数据库集群和库表散列及缓存 数据库的并发连接为...
互联网高可用架构技术实践
智庵的博客
05-11 1129
作者/沈剑,“架构师之路”公众号作者,58到家高级总监,技术委员会主席。前百度高工,58同城高架,技委主席。 一、什么是高可用 高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。 假设系统一直能够提供服务,我们说系统的可用性是100%。如果系统每运行100个时间单位,会有1个时间单位无法提供服
什么是高并发
m0_73757009的博客
06-06 3304
站点层通过RPC-client调用下游的服务层RPC-server时,RPC-client中的连接池会建立与下游服务多个连接,当服务成为瓶颈的时候,只要增加服务器数量,新增服务部署,在RPC-client处建立新的下游服务连接,就能扩展服务层性能,做到理论上的无限高并发。当web后端成为瓶颈的时候,只要增加服务器数量,新增web服务的部署,在nginx配置中配置上新的web后端,就能扩展站点层的性能,做到理论上的无限高并发。响应时间:系统对请求做出响应的时间。站点层的水平扩展,是通过“nginx”实现的。
还有人以为高并发=多线程吗?跟着大佬带你了解二者关系与区别,面试难题轻松拿下!
老男孩的架构路
11-24 790
高并发和多线程”总是被一起提起,给人感觉两者好像相等,实则高并发≠多线程多线程是完成任务的一种方法,高并发是系统运行的一种状态,通过多线程有助于系统承受高并发状态的实现。高并发是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问或者socket端口集中性收到大量请求(例如:12306的抢票情况、天猫双十一活动)。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求,数据库的操作等。
详细介绍:多线程高并发
weixin_47043353的博客
11-25 3513
高并发与多线程的关系与区别 liuhuiteng 2019-03-09 21:30:41 13357 收藏 80 分类专栏: Java进阶 文章标签: 高并发 多线程 高并发指标 高并发解决方案 一、什么是高并发 高并发(High Concurrency)是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求、数据库的操作等。 二、高并发
Nginx如何实现高并发
08-22
Nginx通过以下几个方面实现高并发: 1. **事件驱动模型**:采用非阻塞I/O事件驱动架构,每个连接都在单线程中处理,避免了传统多进程架构中线程切换带来的上下文切换开销,提高了并发能力。 2. **轻量级线程**:Nginx使用的是用户空间线程(也称为epoll或kqueue),相比于操作系统的内核线程,它们更高效,消耗资源少。 3. **连接池复用**:对于持久连接,Nginx会复用套接字,减少了创建和销毁TCP连接的开销。 4. **异步处理**:Nginx能同时处理多个请求,而无需等待一个请求完成后再开始下一个,显著提升了响应速率。 5. **高效的缓存策略**:内置的缓存机制可以帮助减轻服务器的负载,尤其是对于静态内容,加快了页面加载速度。 6. **模块化设计**:Nginx可以根据需要动态加载和卸载模块,保持核心的精简,从而更好地处理大量并发请求。 7. **负载均衡**:通过负载均衡技术,将请求分散到多台服务器上,进一步提高了并发处理能力。 总之,Nginx的设计和优化使其非常适合高并发场景,特别是在互联网服务中广泛使用。
写文章

热门文章

  • Pandas中 DataFrame中添加一行/一列 56906
  • Pandas行数和列数获取 25156
  • 内网和外网的区别是什么? 22112
  • docker 配置环境变量 21645
  • cron表达式详解 18782

分类专栏

  • 量化交易 16篇
  • 机器学习 7篇
  • 数据结构 4篇
  • 算法 6篇
  • Anaconda 3篇
  • 大数据 3篇
  • 数据处理 18篇
  • pandas系列 24篇
  • numpy系列 3篇
  • matplotlib系列 3篇
  • 数据库 9篇
  • mysql 20篇
  • mongo 3篇
  • es 4篇
  • neo4j 1篇
  • bcolz 1篇
  • redis 3篇
  • 运维环境 11篇
  • linux环境 8篇
  • docker 14篇
  • wsgi协议 3篇
  • git 4篇
  • 网络 7篇
  • python 80篇
  • spider 4篇
  • flask 3篇
  • django 19篇
  • go 7篇
  • beego
  • go基础 3篇
  • C 12篇
  • 消息队列 9篇
  • 后端 2篇
  • 前端 14篇
  • 随笔 3篇
  • 笔记 21篇

最新评论

  • Kibana详细入门教程

    Lollipop ²⁰¹⁹: 写点啥 dp

  • Matplotlib图形绘制

    RebelYoung: 请问,如何去掉边框的同时将数学意义上的y=0这条x轴显示且加刻度?

  • pip与apt-get的区别

    a_789_: udo ubuntu-drivers install No drivers found for installation.

  • pip与apt-get的区别

    a_789_: Usage: ubuntu-drivers [OPTIONS] COMMAND [ARGS]... Try "ubuntu-drivers -h" for help. Error: No such command "autionstall".

  • pip与apt-get的区别

    a_789_: $ lspci | grep -i nvidia 0001:00:00.0 PCI bridge: NVIDIA Corporation Device 229e (rev a1)

大家在看

  • HHHHH 22
  • 【数据结构与算法】链表(上) 19
  • Verilator——最简单、最细节上手教程 1096
  • CorelDRAW2024最新版25.2.0.301破解注册机+激活码+序列号 379

最新文章

  • Numpy 如何让 argsort 两个相等的值排序
  • Python导出mysql 表ORM模型
  • DataFrame转换为字典
2024年2篇
2023年11篇
2022年129篇
2021年53篇
2020年16篇
2019年39篇
2018年22篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳坪山网站建设公司襄阳关键词网站优化郑州专业网站优化公司哪家好企业网站优化费用湛江公司网站优化湖南网站优化解决方案网站优化引流怎么做网站内容优化注意什么清溪网站关键词优化贵州聊城网站seo优化公司广东网站优化建设选哪家海阳个性化网站优化公司兴化网站优化如何收费无锡网站seo关键字优化费用许昌网站自然优化哪家不错河东区网站seo优化排名松江区企业官网网站优化案例百度为什么禁止推广网站优化烟台网站优化绍兴公司宁波做网站优化价格郑州推荐机械行业网站优化龙城怎么样进行网站优化濮阳家装行业网站优化推广岚山网站优化公司黄埔公司网站优化推广公司服务行业网站优化案例网站插件优化图片鄞州区网站优化报价好的网站推广优化是怎么做的四平网站综合优化青岛企业网站优化香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

深圳坪山网站建设公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化