https://www.zhihu.com/question/27575123

如何掌握java多线程,高并发,大数据方面的技能?

因为想进入互联网公司,然后发现互联网类型的公司问的主要问题都离不开这几个方面,但是由于现在主要开发的都是企业办公类软件,以上问题很少遇到 ,求大神分享经验或者通过什么途径学习以上技能

关注者

783

被浏览

75,195

关注问题写回答
​2 条评论
​分享

​邀请回答​举报

收起

18 个回答

默认排序​

殷马君
专业一点,再专业一点

50 人赞同了该回答

反对第一个匿名答案。
知易行难。但要想真正能够面试进互联网公司并能顺利通过试用期,光看书是不行的,必须得做!
只有自己实际动手操作后,你才能发现这方面的知识哪里有坑,并且往往实际做起来其实没有你想像的那么难(当然一般也没有想象中那么简单,所以肯定是需要有一定时间和精力的付出)。

我们假设你只看了书本上的知识就去面试。那会有两种情况,一种情况是面试官对于这方面的知识也很匮乏,这时你可以通过书本上的理论知识来忽悠一下(但是一般都是多轮面试,一般总有一个懂这方面的技术),然后顺利入职,结果实际工作中发现你这方面工作水平低,然后试用一过可能就让你卷包走人;另一种情况就是遇到这方面知识很有经验的面试官,那么不用想了,你的那点理论知识别人根本不屑于一问好么,要问都是问你实际操作中遇到了哪些坑,然后又是如何解决的这些坑,还会问面试官自己曾经遇到的坑,然后让你告诉他解决方案(当然面试官自己知道解决方案),以上这些,全部是需要你真正经手操作过以后才能知道的,然后你当场就Hold不住了,然后被婉拒。

另外不管你是通过看书,还是通过网上查资料学习,反正结论就是:Just do it!

回到题主的问题,如果题主认识任何一个有这方面技术经验的人士,一定要去请教,因为这种人不仅可以推荐给你靠谱的书籍和资料,更重要的是他能够清楚地知道如何学习这方面的知识能够最大限度避免走弯路,因为这人曾经已经走过弯路了,啊哈哈!!坐等这方面技术有经验的人士出现,我对这方面技术也挺感兴趣!

PS:本人互联网公司技术人员,并参与过多次面试。

编辑于 2015-01-14
50​4 条评论

​分享

​收藏​感谢

阿里云云栖社区
已认证的官方帐号

46 人赞同了该回答

java多线程体系-博客-云栖社区-阿里云

发布于 2017-02-21
46​1 条评论

​分享

​收藏​感谢

踏雪行
学海无涯

关于多线程,可以看看这些系列知识图谱,了解整体脉络

http://weixin.qq.com/r/8kx2blfEBwp4rRMN9xng (二维码自动识别)

后续还会不断在小号更新

编辑于 2018-06-09
0​添加评论

​分享

​收藏​感谢

徐磊
祖传烂代码,专克架构师!今天没带刀我他妈就放过你!

7 人赞同了该回答

看书,看代码,自己写,自己测试。

看书的目的是适当理解这些内容背后的原理或设计思路,不强求全部深究,但起码要看到相关的技术名词或图的时候可以快速的想到背后的技术栈,然后再翻书或搜索下更细节性的内容。

看代码肯定就是瞅瞅别人如何实现啊,补充书里略过的实现部分,同样造个轮子别人能用3年,你的挺不住3个月,不得跑人家作坊里取取经么,但是别忘记看代码前仔细看看背景介绍,软件都是有特定应用范围的,不然你看半天代码都不知道为什么这个地方要这么处理。

道理都懂点了,也被大牛的代码熏陶了好一阵子,自己动手写吧!写起来才发现看似自己都明白了,都领会了,其实写的那叫一个坑坑绊绊,多写几次吧,加深印象。

测试不能少,你自己为什么认为这么写就能扛得住?臆想不行!咱自己能压出来,不然你说的自己都不信。

以上是我自己学东西的路线,我自己就这么干的。当初为了学如何自己做性能测试,如何建立数据模型,我特意搬到测试组去写代码,偷学。。。。

发布于 2015-01-14
7​添加评论

​分享

​收藏​感谢

钟文
软件工程师,心理学爱好者

6 人赞同了该回答

同步 异步 锁 信号量 消费者.生产者 概念搞清,再用下netty这种并发设计框架,其他都是类似的。一定要多去实践,而不是看懂了,多动手实践。个人理解
编辑于 2015-01-14
6​添加评论

​分享

​收藏​感谢

douya0808
某项目经理乱改需求,后来他死了 ಥ_ಥ

24 人赞同了该回答

当然是看书了……

#深入理解Java虚拟机
#Java并发编程实战
#MongoDB权威指南
#Netty权威指南
#ICE协议官方文档
#MQTT协议官方文档
#ActiveMQ官方文档
#Redis入门指南

再见……

编辑于 2015-01-14
24​4 条评论

​分享

​收藏​感谢

张正林

8 人赞同了该回答

先从大公司写接口的初级工程师干起,做的好了就有机会做需要高并发等复杂问题的项目去做了。想一步登天?
编辑于 2015-01-16
8​1 条评论

​分享

​收藏​感谢

匿名用户

2 人赞同了该回答

Java并发编程与高并发解决方案

网盘地址:https://pan.baidu.com/s/1mEDnPAnHVKF9mQ3TR1j-JA 密码: y9ha

备用地址(腾讯微云):微云分享 密码:e324w9

学会高并发处理思路与手段,让跳槽面试从容不迫,并发与高并发是面试的重要考察点,常问面试问题与答案都在这里了!

无论面试还是实际开发,几乎都会涉及并发相关知识及高并发相关场景处理,如果你想系统的学习一下并发编程

并了解一下实际的高并发场景及应对方案,那这门课就是为你准备的。

第1章 课程准备

第2章 并发基础

第3章 项目准备

第4章 线程安全性

第5章 安全发布对象

第6章 线程安全策略

第7章 J.U.C之AQS

第8章 J.U.C组件拓展

第9章 线程调度-线程池

第10章 多线程并发拓展

第11章 高并发之扩容思路

第12章 高并发之缓存思路

第13章 高并发之消息队列思路

第14章 高并发之应用拆分思路

第15章 高并发之应用限流思路

第16章 高并发之服务降级与服务熔断思路

第17章 高并发之数据库切库分库分表思路

第18章 高并发之高可用手段介绍

第19章 课程总结

发布于 2018-04-08
2​1 条评论

​分享

​收藏​感谢

收起

泥人張
我已经被狗乎管理打死

7 人赞同了该回答

就是干!
发布于 2015-01-14
7​添加评论

​分享

​收藏​感谢

whw720
程序员

8 人赞同了该回答

在通信方面,建议阅读Mina的源码,会有很大帮助,
源码对并发有处理。
说一点自己的浅薄经验,高并发下,接受数据是来不急处理的,会导致阻塞。
建议用专门的线程接收数据。不负责处理,放在队列里面。
然后有专门的线程去处理,把接收和处理分开。这是基本原则。
如果处理数据过程太慢而队列里堆积过多,就需要监测队列大小,如果过大,就启动多个线程。至于启动多少线程,可以写算法优化。记得空闲时关闭。
编辑于 2015-01-16
8​2 条评论

​分享

​收藏​感谢

北龙
一刹即永恒,飞轮转,时光逝。

5 人赞同了该回答

有时候,我们只是缺乏提枪上马去干它的勇气
发布于 2015-01-22
5​3 条评论

​分享

​收藏​感谢

匿名用户

4 人赞同了该回答

看书好了,大部分所谓的要求高并发,大数据公司其实都没做过真正的高并发工作,有些公司的员工甚至连数据库索引都用不利索,看几本书很容易忽悠过去。

不过对淘宝百度这种公司无效。这种真做过高并发的企业没做过的估计很难忽悠过去。多看看算法书然后说自己算法很强也许可以?

发布于 2015-01-14
4​添加评论

​分享

​收藏​感谢

匿名用户

1 人赞同了该回答

多线程的问题你肯定在生活中遇到过,不知道为什么你没注意罢了。
先尝试着实现银行的叫号系统吧:2台发号机生成号码,5个窗口消费号码。
然后再试试实现电梯调度系统。
发布于 2016-11-15
1​添加评论

​分享

​收藏​感谢

周征

我已经做了两年的java web了,昨天面试官问我多线程的问题,一开始用我在书里看到的概念给他讲,后面让我将项目中用到的多线程,我只能说,从来没用过,因为确实没有用过,他问我们是怎么解决excel超过10万条数据的解析,我给他说,我们会限制用户上传的文件大小,他建议我平时多了解多线程方面的知识,最近在想办法解决面试问道的问题,好像面试都喜欢考多线程


今天下午收到了消息,面试通过了,真的很意外,之前还担心自己对多线程不懂,通过不了

编辑于 2018-05-04
0​1 条评论

​分享

​收藏​感谢

杉枫
架构师@京东 公众号:互联网开发者Club(id:mydevclub)

现有的问题,能不能换个方式解决,比如任务处理数据,企业开发常见功能,能不能多线程处理?答案是肯定的。能不能用线程池,答案还是肯定的。怎么同步是不是要用下CountDownLatch。每个问题都有不同处理方法,希望对题主有帮助。

发布于 2017-10-09
0​添加评论

​分享

​收藏​感谢

匿名用户

如果你是新手的话,推荐看这本书:Java并发编程系统与模型云帆_Java并发编程系统与模型全文阅读_百度阅读。对整个java并发有一个体系的了解

里面讲的很详细。好像作者在一直更新中。

发布于 2017-04-11
0​1 条评论

​分享

​收藏​感谢

顾闯
夜阑沧,繁星点缀,华灯更寂,归家!

一般在什么项目中会遇到,我从事的保险项目,几乎,或者我从来没遇到过多线程开发,并发。面试还要答。烦的不行
发布于 2016-06-14
0​1 条评论

​分享

​收藏​感谢

只是因为情非得已
架构师/大数据/马士兵 学习交流群:489034603

马士兵java高并发编程学习视频 合集

链接: https://pan.baidu.com/s/1bBWshC 密码: imu1

编辑于 2017-10-23

如何掌握java多线程,高并发,大数据方面的技能?相关推荐

  1. Java多线程高并发学习笔记(一)——ThreadRunnable

    进程与线程 首先来看百度百科关于进程的介绍: 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动.它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体.它不只是程序的代码,还包括当前的 ...

  2. 高并发大数据量的数据库的设计与优化

    1.可以使用静态页面的地方,使用静态页面,减少页面解析时间. 2.尽量使用缓存技术来做.用户缓存.页面缓存等一切缓存,使用特定的机制进行刷新.利用消耗内存空间来换取用户的效率.同时减少数据库的访问次数 ...

  3. 理解Java多线程高并发Executor框架的使用

    Executor Executor 管理多个异步任务的执行,而无需程序员显式地管理线程的生命周期.这里的异步是指多个任务的执行互不干扰,不需要进行同步操作. Executor框架和其扩展接口Execu ...

  4. 面对高并发,大数据 数据库分区、分表、分库,读写分离

    https://blog.csdn.net/liangz/article/details/79352870 https://www.cnblogs.com/sunny3096/p/8595058.ht ...

  5. Java多线程与并发系列从0到1全部合集,强烈建议收藏!

    在过去的时间中,我写过Java多线程与并发的整个系列. 为了方便大家的阅读,也为了让知识更系统化,这里我单独把Java多线程与并发的整个系列一并罗列于此,希望对有用的人有用,也希望能帮助到更多的人. ...

  6. java处理高并发高负载类网站的优化方法

    java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF ...

  7. java处理高并发高负载类网站问题

    java处理高并发高负载类网站问题 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF.尤其是Web2.0的应用,数据库的响应是首先要解决的. 一般来说MyS ...

  8. java多线程与并发原理

    三.java多线程与并发原理 1.进程和线程的区别: 进程和线程的由来: (1)串行:初期的计算机只能串行执行任务,并且需要长时间等待用户输入: (2)批处理:预先将用户的指令集集中成清单,批量串行处 ...

  9. Java多线程与并发相关 — 原理

    Java多线程与并发相关 - 原理 一 synchronized同步 1. 线程安全问题的主要诱因? 存在共享资源(也称临界资源); 存在多条线程共同操作这些共享数据; 2. 解决办法. 同一时刻有且 ...

最新文章

  1. 厉害了!一本正经地为单身狗推荐这个158万张图像的鉴黄数据集
  2. 林正刚本地化中摸索前进 称中国未来无可比拟
  3. 清空oracle表数据 外键,oracle清空所有表数据
  4. Python2 Python3 爬取赶集网租房信息,带源码分析
  5. Maven实战(二)——POM重构之增还是删
  6. ES01 数据类型、正则表达式、身份证校验
  7. 如何在linux下通过ssh运行X图形软件
  8. 信息网络传播权保护条例(2006)
  9. [蓝桥杯]字母组串-递归
  10. python爬取知乎问题_python爬取知乎首页问题
  11. 最热web前端技术精粹
  12. ViewPager轮播图自动无限循环滑动,手指按住停止滑动
  13. 微信小程序---详情页
  14. 知识树 = 系统思维 + 外接大脑
  15. npm publish 报错 403
  16. python的六种基本数据类型_Python基本数据类型
  17. PyTorch深度学习入门 || 系列(四)——非线性回归
  18. 上海交通大学出版社python教材答案_上海交通大学出版社python答案
  19. 领英工程VP:如何用 AI 消除 AI 偏见,打造高级人才推荐系统
  20. c语言编程第四版李丽娟课程,C语言程序设计教程 第4版 普通高等教育“十一五”国家级规划教材 教学课件 李丽娟 C语言程序设计教程(第4版)_第4章_分支结构.pdf...

热门文章

  1. 几个实用超酷网站收集
  2. Python对Windows程序窗口操作:最大化、最小化、关闭
  3. 一句话脚本系列之修改smb用户密码
  4. 服务器上需要虚拟内存吗,服务器需要设置虚拟内存吗
  5. from用法 prepare_MySQL prepare语句的SQL语法
  6. 简易计算器(有界面)
  7. Python实现桌面挂件,做一只可爱的桌面宠物~
  8. 可以任意安装想要的app 欧盟Android装置用户可自由选择
  9. RocketMQ TLS Client-initiated 重协商攻击(CVE-2011-1473)
  10. 【设计模式(11)】结构型模式之享元模式