“高并发和多线程”总是被被一起提起,给人的感觉好像他们相等,其实 高并发 不等于 多线程

多线程是完成任务的一种方法,高并发是系统运行的一种状态,通过多线程有助于系统承受高并发的状态的实现。

高并发是系统运行过程张遇到的一种“短时间内遇到大量的操作请求” 的情况,主要发生在web系统集中大量访问或者socket端口集中行收到大量请求(例如12306抢票;天猫双十一活动)。该情况会导致系统在这段时间内大量操作,例如对资源的请求,对数据库的集中操作等。如果并发处理不好,不仅降低了客户体验度(请求时间过长) ,同时可能导致宕机,系统停止工作等。如果想要系统适应高并发的状态,则需要从,硬件,软件,网络,系统架构,开发语言的选取,数据结构的运用,算法优化,数据库优化等。。。而多线程只是解决方案其中之一。

实现高并发需要考虑:

系统的架构设计,如何在架构层面减少不必要的处理(网络请求,数据库操作等)

网络拓扑优化网络请求的时间,如何设置网络拓扑的结构,分布式如何实现

服务集群,负载均衡

系统代码级别的优化,如何选取合适的设计模式,哪些需要是单例,哪些需要是尽量减少new操作

提高代码层面的运行效率,如何选取合适的数据结构进行数据的存取,如何设计合适的算法。

任务级别的同异步操作,在哪里同步,在哪里异步。

jvm调优 是以server模式还是以client模式运行,如何设置Heap、Stack、Eden的大小,如何选择GC策略,控制Full GC的频率。

数据库级别的优化,如何减少增删改查的时间。数据库的选取,数据库表设计,数据库索引,触发器的设计。是否使用读写分离,是否考虑数据仓库。

缓存数据库的使用,如何选取缓存数据库?是使用Redis还是使用Memcache?如何设置缓存机制。

数据通讯问题,如何选择数据通讯方式?是使用TCP还是UDP,是使用长连接还是短连接,是NIO还是BIO,是netty还是原生的socket?

操作系统的选取是winserver还是Linux还是Unix、

硬件的配置,8G内存还是32G内存

。。。

以上问题需要在高并发中深入的考虑,想木桶原理一样,只要其中的某一个方面没有考虑到,会造成系统的瓶颈,影响整的性能。而高并发不仅涉及面之广而且有要求有足够的深度。

多线程知识从同/异步角度上解决高并发的问题的其中之一的方法手段,是在同一时刻利用计算的闲置资源。

多线程在解决高并发的问题中所起到的作用是使用计算机的资源在每一个时刻都能达到最大的利率,不至于浪费计算机的闲置资源。

多线程和高并发的区别相关推荐

  1. 多线程导出excel高并发_大牛带你深入java多线程与高并发:JMH与Disruptor,确定能学会?...

    前言 今天我们讲两个内容,第一个是JMH,第二个是Disruptor.这两个内容是给大家做更进一步的这种多线程和高并发的一些专业上的处理.生产环境之中我们很可能不自己定义消息队列,而是使用 Disru ...

  2. java多线程实例_多线程&高并发(全网最新:面试题+导图+笔记)面试手稳心不慌...

    前言 当你开始开始去跳槽面试的时候,明明只是一份15K的工作,却问你会不会多线程,懂不懂高并发,火箭造得让你猝及不防,结果就是凉凉:现如今市场,多线程.高并发编程.分布式.负载均衡.集群等可以说是现在 ...

  3. 多线程&高并发(全网最新:面试题 + 导图 + 核心学习笔记)面试手稳心不慌,轻松拿下 offer,秋招跳槽必不可少的底层能力

    前言 当你开始开始去跳槽面试的时候,明明只是一份 15K 的工作,却问你会不会多线程,懂不懂高并发,火箭造得让你猝及不防,结果就是凉凉:现如今市场,多线程.高并发编程.分布式.负载均衡.集群等可以说是 ...

  4. 尚硅谷-互联网大厂高频重点面试题 (第2季)JUC多线程及高并发

    本期内容包括 JUC多线程并发.JVM和GC等目前大厂笔试中会考.面试中会问.工作中会用的高频难点知识. 斩offer.拿高薪.跳槽神器,对标阿里P6的<尚硅谷_互联网大厂高频重点面试题(第2季 ...

  5. java基础巩固-宇宙第一AiYWM:为了维持生计,多高(多线程与高并发)_Part1~整起(线程与进程篇:线程概念、线程状态、线程死锁)

    这个题目我感觉很多大哥大姐和我一样,虽然夹在众位大哥大姐中跟着一块喊着"多线程与高并发"的口号,但是这里面其实包含的东西并不像名字里面这么少.现在就开始咱们的旅程吧. 特此感谢,低 ...

  6. 多线程与高并发基础一(超发--多线程悲观锁,乐观锁、类数据库悲观锁乐观锁)

    PS:看完文章后对自己以前所做过的并发和锁机制有了深入原理的了解. 知其然和知其所以然! 遂以记之! 关键词: 线程,同步,单例,高并发,高访问,死锁 一.大规模并发带来的挑战 在过去的工作中,我曾经 ...

  7. 【Java】多线程与高并发

    多线程与高并发 synchronized 篇 进程 线程 协程/纤程(Quasur) 线程:一个程序里不同的执行路径 public static class T1 extends Thread{@Ov ...

  8. 纯干货,从源码解析多线程与高并发,再说不会,我不再踏足IT圈

    没什么太多说的,多线程与高并发,面试重点,咱直接进入正题,联合底层源码,我们从源码看一下,多线程与高并发底层的知识点,这也是阿里p8+的面试官建议的学习到的级别 CAS Compare And Swa ...

  9. java 多线程 安全 源码,纯干货,从源码解析多线程与高并发,再说不会,我再也不踏足IT圈...

    没什么太多说的,多线程与高并发,面试重点,咱直接进入正题,联合底层源码,咱们从源码看一下,多线程与高并发底层的知识点,这也是阿里p8+的面试官建议的学习到的级别java CAS Compare And ...

  10. 多线程与高并发-volatile与CAS

    多线程与高并发-volatile与CAS 1.volatile 1.1volatile的作用 1.2 DCL单例模式 1.3 volatile与synchronized的区分 2.CAS ABA问题 ...

最新文章

  1. android基于蓝牙实验,基于Android智能蓝牙的血糖实时监测系统的设计与实现
  2. uniapp+typeScript+vue3.0+vite
  3. $.each()和$().each(),以及forEach()的用法
  4. 【kafka】Kafka中的动态配置源码分析
  5. pointers on c (day 1,chapter3)
  6. java 枚举源码解析
  7. C# TCP服务器和客户端
  8. 全新版大学英语综合教程第二册学习笔记(原文及全文翻译)——1 - Learning, Chinese-Style(中国式的学习风格)
  9. 《创业维艰》笔记 2
  10. ios漂亮的启动动画
  11. 个人博客网站搭建-WordPress-NameSilo-云左虚拟主机
  12. 蹩脚英语——Translation Of Model Test Two
  13. win10 nginx安装和使用
  14. mysql 1500万_1500万的天价配送费?懂这行代码的人送外卖永远不会吃亏!
  15. Unity GPS定位之逆地理编码(获取经纬度并转换成地理位置)
  16. 2022.3.4总结+45. 跳跃游戏 II 力扣
  17. DEEP COMPRESSION: COMPRESSING DEEP NEURAL NETWORKS WITH PRUNING, TRAINED QUANTIZATION AND HUFFMAN
  18. mobaxterm在线实时查看日志-命令
  19. docker离线安装与卸载
  20. 曼尼托巴大学计算机科学硕士,加拿大曼尼托巴大学优势专业有哪些

热门文章

  1. Vue项目使用v-drag实现拖拽功能
  2. UE4全套自学视频教程
  3. 正则表达式总结regex
  4. word如何让单页变横向
  5. 地图瓦片坐标系定义及计算原理
  6. springboot uniapp小说阅读APP源码
  7. Java处理图片和视频文件——视频抽帧与图片压缩
  8. 阿里云服务器申请免费ssl证书
  9. python如何调用函数三次_python中如何调用函数
  10. 操作系统的三个抽象概念