高并发
普通网友
这个作者很懒,什么都没留下…
展开
-
收藏吃灰系列:1199道一线大厂Java面试题全梳理!内容涵盖多线程并发、JVM、设计模式、分布式、数据库等诸多技术栈!
写在前面古人云:凡事预则立,不预则废。机会都是垂青有准备的人的。为了得到一份满意的工作,大家一定要对整个求职过程有清醒的了解。把能够预见的、必须做的事情早一些做完,这样在大规模招聘开始的时候就可以专心地为面试做准备。求职过程中会发生很多预料不到的事情,当你的计划被这些事情打乱之后,要做的事会越堆越多,一步落后,步步落后。如果能够尽早把能做的事做完,即便有计划外事件发生,也不会产生太严重的影响。努力地使事态的发展处在自己能控制的范围之内,这样无论发生任何事都能有应对之策。如今,一线互联网行业对IT人才原创 2020-10-30 18:02:06 · 349 阅读 · 1 评论 -
理论实战双管齐下!阿里技术官眼中的并发世界原来如此简单!
本书内容丰富,实例典型,实用性强,适合有一定Java基础的技术开发人员阅读。前言在过去单核CPU时代,单任务在一个时间点只能执行单一程序,随着多核CPU的发展,并行程序开发就显得尤为重要。由于单核CPU的主频逐步逼近极限,多核CPU架构成为了一种必然的技术趋势。所以, 多线程并行程序便显得越来越重要。并行计算的一个重要应用场景就是服务端编程。可以看到,目前服务端CPU的核心数已经轻松超越10核心,而Java显然已经成为当下最流行的服务端编程语言,因此熟悉和了解基于Java的并行程序开发有着重.原创 2020-10-24 17:03:25 · 1878 阅读 · 16 评论 -
深入理解Java虚拟机——类加载机制详解
类加载的时机加载阶段合适开始,《Java虚拟机规范》并没有强制约束,交由虚拟机自己实现。而初始化阶段,严格规定有且只有以下六种情况,如果类型没有进行过初始化,必须对类进行初始化:遇到以下字节码指令: new:实例化对象的时候 getstatic和putstatic,读取或设置一个类型的静态字段(被final修饰、已在编译期把结果放入常量池的静态字段除外)。 invokestatic:调用一个类型的静态方法的时候。 使用java.lang.reflect包对类型进行反射调用的时原创 2020-09-16 14:47:00 · 363 阅读 · 0 评论 -
再造轮子?有了synchronized为何还要提供Lock?
写在前面在Java中提供了synchronized关键字来保证只有一个线程能够访问同步代码块。既然已经提供了synchronized关键字,那为何在Java的SDK包中,还会提供Lock接口呢?这是不是重复造轮子,多此一举呢?今天,我们就一起来探讨下这个问题。再造轮子?既然JVM中提供了synchronized关键字来保证只有一个线程能够访问同步代码块,为何还要提供Lock接口呢?这是在重复造轮子吗?Java的设计者们为何要这样做呢?让我们一起带着疑问往下看。为何提供Lock接口?很原创 2020-09-16 14:46:51 · 331 阅读 · 2 评论 -
金九银十迫在眉睫!这份Github超火的阿里技术团队编写的面试指南一定不能错过!
前言又要到金九银十了,每年9、10月份各大互联网公司都会周期性地发生人事变动,无论是刚进社会的职场小白,还是准备跳槽的“外卖员”,都会争取在这个时候获得新工作,或迎来晋升涨薪的最佳机会。写下这篇文章没有别的意义,就单纯的分享一份阿里技术团队(权威性不言而喻)整合的对标金九银十的面试指南文档,希望能助力各位“格子衫骑手”,在面向金九银十时起到一定的帮助作用。这份文档涵盖了分布式架构(大型网站架构特点与历程/微服务架构/前后端分离/CAP定理等)、消息中间件(缓存/消息队列/搜索引擎等)、.原创 2020-08-29 14:53:47 · 563 阅读 · 2 评论 -
先睹为快!Github上一些超火的Java并发编程神仙笔记
并发编程谈到并发编程,可能很多人都有过经验,甚至比我了解的更多。那么并发与并行的区别又是什么?并发编程是编程中的核心问题,实践中,当人们希望利用计算机处理一些现实世界问题,以及希望同时处理多个问题的时候,并发也就出现了。在需要对同一共享资源进行操作,多个事务之间存在关联,人们把这种看起来多个事务同时运行的特性称为并发性。有个经常容易跟并发混肴的概念叫并行,其实真正懂了之后理解并不困难,可以把并行看过是并发实现中某个局部可以引入的运行设施;在讨论并发时,我们一般不需要假设这个运行或者调度设施究竟是原创 2020-08-21 17:17:32 · 667 阅读 · 0 评论 -
我佛了!Java开发者福音:并发编程源码剖析+高并发系统搭建
多线程和高并发的关系和区别“高并发和多线程”总是被人一起提起,给人感觉两者好像相等,实则 高并发 ≠ 多线程多线程多线程是Java的特性,因为现在cpu都是多核多线程的,可以同时执行几个任务,为了提高jvm的执行效率,Java提供了这种多线程的机制,以增强数据处理效率。多线程对应的是cpu,高并发对应的是访问请求,可以用单线程处理所有访问请求,也可以用多线程同时处理访问请求。在过去单CPU时代,单任务在一个时间点只能执行单一程序。之后发展到多任务阶段,计算机能在同一时间点并行执行多任务或多进原创 2020-08-16 16:43:27 · 447 阅读 · 0 评论 -
电商平台每逢节日是如何做到几亿并发的?
高可用设计是互联网系统架构的基础之一,以天猫双十二交易数据为例,支付宝峰值支付次数超过 8 万笔。大家设想一下,如果这个时候系统出现不可用的情况,那后果将不可想象。而解决这个问题的根本,就是服务层的高可用。什么是服务层众所周知,服务层主要用来处理网站业务逻辑,是大型业务网站的核心。比如下面三个业务系统就是典型的服务层,提供基础服务功能的聚合。 用户中心:主要负责用户注册、登录、获取用户信息功能; 交易中心:主要包括正向订单生成、逆向订单、查询、金额计算等功能; 支付中心:主原创 2020-08-16 16:39:25 · 631 阅读 · 0 评论 -
高并发与多线程关系与区别
一、什么是高并发 高并发(High Concurrency)是一种系统运行过程中遇到的一种“短时间内遇到大量操作请求”的情况,主要发生在web系统集中大量访问收到大量请求(例如:12306的抢票情况;天猫双十一活动)。该情况的发生会导致系统在这段时间内执行大量操作,例如对资源的请求、数据库的操作等。二、高并发的处理指标高并发相关常用的一些指标有:响应时间、吞吐量、每秒查询率QPS、并发用户数1、响应时间(Response Time)响应时间:系统对请求做出响应的时间。例如系统处...原创 2020-08-15 23:19:51 · 906 阅读 · 0 评论 -
跪了!将技术应用于业务、理论应用于实践搭建高可用高并发系统
前言大家都知道,在我们的技术生涯中,总是要不断针对新的需求去设计研发新的系统,但是系统设计是一个不断迭代的过程,在迭代中发现问题并修复问题,即满足需求的系统是不断迭代优化出来的,这是一个持续的过程,我个人不相信完美架构银弹。不过,如果一开始就有好的基础系统设计,未来可以更容易达到一个比较满意的目标。在设计系统时,我们应该适当参考墨菲定律(个人见解)。1. 任何事都没有表面看起来那么简单。2.所有的事都会比你预计的时间长。3. 可能出错的事总会出错。4.如果你担心某种情况发生,那么它原创 2020-08-07 14:55:22 · 458 阅读 · 0 评论 -
高并发:RocketMQ削峰实战
MQ的主要特点为解耦、异步、削峰,该文章主要记录与分享个人在实际项目中的RocketMQ削峰用法,用于减少数据库压力的业务场景,其中RocketMQ的核心组件概念如下: Producer:生产发送消息 Broker:存储Producer发送过来的消息 Consumer:从Broker拉取消息并进行消费 NameServer:为Producer或Consumer路由到Broker 其中消费流程有以下几点是必须注意的: RocketMQ的Consumer获取消原创 2020-07-07 13:25:50 · 496 阅读 · 0 评论