威尼斯人娱乐场Java程序猿跳槽应该学哪些方面的技术

互联网产品、大型企业级项目常会用到的:

工作1-5年开发经验,当你们提出涨工资的时候,或者要offer的时候底气怎么样,是不是底气十足,不给涨工资就辞职,是不是有自信提出来主管、或者是项目经理都能同意,他们相当设法把你留住。如果这样你才是成功。什么技术都没有何谈工资!

建议不要管那个常不常用这些问题!你想找工作就老老实实的学。操作系统、计算机网络这些基础知识,工作之后基本都忘的差不多了。但是,我个人觉得也还是要学的。很多人都说数据结构和算法就像一个程序员的内功,前期可能你看不出来,等到后面你再和那些算法和数据结构厉害的人比可能就会相形见绌。所以,我觉得除了应付找工作之外。搞好基础知识。如果非要学那些常用,我个人觉得:Spring、Hibernate、Mybatis
等框架、Dubbo、Zookeeper、常见的消息队列(比如ActiveMq)的使用、缓存Redis、MySQL等等这些东西都应该是每个Java初中级程序员必备的技能了吧!

并发处理技术。具体到Java上通常是涉及java.util.concurrent、并发锁机制、NIO等方面,当然最近比较火爆的Netty框架也可以作为高并发处理的备选方案之一,这需要对Java的线程调度机制有着比较深的理解。不过这些可能会涉及并发控制的对象(比如reentrantlock等)只能存在于一个JVM里的问题,一旦系统规模大到需要部署多个JVM来处理并发的情况,则需要采用共享session的技术(比如spring-session),或者尽可能将系统后台设计为无状态的服务,这需要对RESTful有着较深的理解。

给你分析一下这些技术,给大家罗列一些技术,看你有没有学到这些技术。

Java 该学习那些东西

高可用、负载均衡技术。互联网产品、企业级应用通常要求一年里的Downtime控制在很小的范围内,这需要足够的高可用和负载均衡架构来支撑,这个一般和Java技术本身没太大关系,但却是一名初级程序员向高级程序员甚至是架构师CIO进阶的必备技术,因此可以适当了解一下Nginx、HAProxy等对这方面的支持。另外现在最“时髦”的做法是将应用docker化,配合ETCD、kubernetes等工具在容器的层面上实现高可用和负载均衡,当然这需要看实际的需求,最时髦的不见得是最适用的,要考虑构建成本。

1.阿1巴巴的数据库连接池druid

很多初学者或者有经验的开发者都会陷入这个泥潭:“不知道自己该学什么?”。

缓存技术。缓存应该是大型系统中或高并发条件下提高响应速度的亘古不变的真理(虽然也看到过淘宝搜索商品功能采用的大数据处理技术实现的零缓存的文章,但能达到淘宝的体量和技术水平一般不太可能),这方面的工具太多了,ehcache、memcached、redis……从Java的角度来讲,需要了解的一是Java对这些工具的连接器,二是缓存技术背后的JSR-107标准,可以参考spring-cache的实现,阅读一下源码加深理解。

2.阿里巴巴Dubbo+Zookeeper注册中心

我觉得最简单的方法就是你去招聘官网上看看公司要求什么技能,比如初级 Java
工程师的招聘要求肯定和高级 Java 工程师的招聘要求不一样,阿里的 Java
工程师的招聘要求肯定和 普通公司的Java 工程师招聘要求不一样。

异步处理技术。这通常也是抵消高并发的处理手段之一,从Java的角度看最简单的异步处理就是新启动一个异步线程,这同样也需要对Java的线程调度有所了解,当然也可使用Spring中的@Async之类的也可以简单实现异步线程的处理。如果是非常消耗资源的业务处理,简单的异步线程是满足不了需求的,这就需要一些消息中间件来做这些异步处理了,消息中间件有很多,activemq、rabbitmq、kafka……需要了解的是Java对这些中间件的连接器。不过异步处理中最关键的是事务保证的问题,这可能需要对事务的两步提交有所了解。

3.阿里巴巴MyCat分库分表

阿里:阿里巴巴招聘官网

4.pushlets推送技术

<img
src=””
data-caption=”” data-size=”normal” data-rawwidth=”777″
data-rawheight=”1229″ width=”777″
data-original=”;

5.Linux操作系统下shell编程

威尼斯人娱乐场 1

6.Redis缓存技术(session统一管理案例实现)

我在我的Github开源了一个【Java学习+面试指南】:
JavaGuide,上面也总结了一些 Java 学习必备的知识。目前已经接近 19k
Star,应该对大家有帮助。

7.引入接口联调过程

JavaGuide 地址:

8.支付宝和微信支付

下面是 JavaGuide 的目录:

9.支付中的掉单处理

<img
src=””
data-caption=”” data-size=”normal” data-rawwidth=”655″
data-rawheight=”991″ width=”655″
data-original=”;

10.处理常见超卖问题

威尼斯人娱乐场 2

11.互联网金融项目的撮合业务系统

总结:初中级 Java 程序员必须掌握的知识。

12.互联网金融项目的满标审核、散标发布

熟练掌握数据结构、算法、操作系统、计算机网络等基础知识

13.消息队列ActiveMQ的具体应用

熟练掌握Java编程、熟悉Java高并发开发手段、对JVM
虚拟机(Java内存区域、虚拟机垃圾算法、虚拟垃圾收集器、JVM内存管理)有一定研究

14.乐观锁、悲观锁、分布式锁

熟练掌握SOA分布式系统开发,具有优化系统性能、提高系统并发量以及系统可用性的实际经验

15.接口安全方案

熟练掌握Struts2、Spring、Hibernate、Mybatis 等框架的使用,熟悉 Spring
原理

16.集群环境下的定时任务

熟练掌握Dubbo、Zookeeper、常见的消息队列(比如ActiveMq)的使用

17.分布式文件系统FastDFS

熟悉Linux 系统的使用,在Linux系统下具有实际的开发经验

分布式文件系统存储合同文件

熟悉MySQL数据库的使用、常见SQL语句的书写以及常见的优化手段

18.NoSQL&MongoDB&Cassandra

掌握 Spring Boot +Spring Cloud +Docker

19.HttpComponents

了解Hadoop 生态相关技术中的 HDFS、Storm、MapReduce、Hive、Hbase

21.20FreeMarker/Velocity

Java 程序员必备书单

22.SpringBoot

这些书籍大部分我自己都看完了,非常不错。大家如果需要这些书籍的
PDF资源可以关注我的公众号之后回复关键字“1”获取。我的公众号ID:Java_Guide。

23.Log4j2.

核心基础知识

24.性能调优

《图解HTTP》(推荐,豆瓣评分 8.1 , 1.6K+人评价):
讲漫画一样的讲HTTP,很有意思,不会觉得枯燥,大概也涵盖也HTTP常见的知识点。因为篇幅问题,内容可能不太全面。不过,如果不是专门做网络方向研究的小伙伴想研究HTTP相关知识的话,读这本书的话应该来说就差不多了。

25.JVM调优

《大话数据结构》(推荐,豆瓣评分 7.9 ,
1K+人评价):入门类型的书籍,读起来比较浅显易懂,适合没有数据结构基础或者说数据结构没学好的小伙伴用来入门数据结构。

26.Java程序性能优化

《数据结构与算法分析:C语言描述》(推荐,豆瓣评分
8.9,1.6K+人评价):本书是《Data Structures and Algorithm Analysis in
C》一书第2版的简体中译本。原书曾被评为20世纪顶尖的30部计算机著作之一,作者Mark
Allen
Weiss在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛好评.已被世界500余所大学用作教材。

27.Tomcat

《算法图解》(推荐,豆瓣评分
8.4,0.6K+人评价):入门类型的书籍,读起来比较浅显易懂,适合没有算法基础或者说算法没学好的小伙伴用来入门。示例丰富,图文并茂,以让人容易理解的方式阐释了算法.读起来比较快,内容不枯燥!

28.Mysql

《算法 第四版》(推荐,豆瓣评分
9.3,0.4K+人评价):Java语言描述,算法领域经典的参考书,全面介绍了关于算法和数据结构的必备知识,并特别针对排序、搜索、图处理和字符串处理进行了论述。书的内容非常多,可以说是Java程序员的必备书籍之一了。

29.Spring IOC

Java相关

30.Spring AOP

《Effective java 》(推荐,豆瓣评分
9.0,1.4K+人评价):本书介绍了在Java编程中78条极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员每天所面临的问题的解决方案。通过对Java平台设计专家所使用的技术的全面描述,揭示了应该做什么,不应该做什么才能产生清晰、健壮和高效的代码。本书中的每条规则都以简短、独立的小文章形式出现,并通过例子代码加以进一步说明。本书内容全面,结构清晰,讲解详细。可作为技术人员的参考用书。

31.Spring MVC

《Head First Java.第二版》(推荐,豆瓣评分 8.7,1.0K+人评价):
可以说是我的Java启蒙书籍了,特别适合新手读当然也适合我们用来温故Java知识点。

32.Spring 5新特性

《Java多线程编程核心技术》:
Java多线程入门级书籍还不错,但是说实话,质量不是很高,很快就可以阅读完。

33.Mybatis

《JAVA网络编程 第4版》:
可以系统的学习一下网络的一些概念以及网络编程在Java中的使用。

34.分布式架构

《Java核心技术卷1+卷2》:
很棒的两本书,建议有点Java基础之后再读,介绍的还是比较深入的,非常推荐。这两本书我一般也会用来巩固知识点,是两本适合放在自己身边的好书。

35.架构核心服务层技术

《Java编程思想》(推荐,豆瓣评分
9.1,3.2K+人评价):这本书要常读,初学者可以快速概览,中等程序员可以深入看看java,老鸟还可以用之回顾java的体系。这本书之所以厉害,因为它在无形中整合了设计模式,这本书之所以难读,也恰恰在于他对设计模式的整合是无形的。

36.架构关键技术设施

《Java并发编程的艺术》(推荐,豆瓣评分 7.2,0.2K+人评价):
这本书不是很适合作为Java并发入门书籍,需要具备一定的JVM基础。我感觉有些东西讲的还是挺深入的,推荐阅读。

37.分布式消息通讯 异步于MQ

《实战Java高并发程序设计》:豆瓣评分 8.3
,书的质量没的说,推荐大家好好看一下。

38.分布式缓存

《Java程序员修炼之道》: 很杂,我只看了前面几章,不太推荐阅读。

39.Redis

《深入理解Java虚拟机周志明》(推荐,豆瓣评分
8.9,1.0K+人评价):建议多刷几遍,书中的所有知识点可以通过JAVA运行时区域和JAVA的内存模型与线程两个大模块罗列完全。

40.Memcached

《Netty实战》(推荐,豆瓣评分
7.8,92人评价):内容很细,如果想学Netty的话,推荐阅读这本书!

41.MongoDB

《从Paxos到Zookeeper》(推荐,豆瓣评分
7.8,0.3K人评价):简要介绍几种典型的分布式一致性协议,以及解决分布式一致性问题的思路,其中重点讲解了Paxos和ZAB协议。同时,本书深入介绍了分布式一致性问题的工业解决方案——ZooKeeper,并着重向读者展示这一分布式协调框架的使用方法、内部实现及运维技巧,旨在帮助读者全面了解ZooKeeper,并更好地使用和运维ZooKeeper。

42.数据存储

JavaWeb相关

43.高并发分流技术Nginx

《深入分析Java Web技术内幕》: 感觉还行,涉及的东西也蛮多。

44.分布式解决方案

《Spring实战》(推荐,豆瓣评分 8.3
,0.3K+人评价):不建议当做入门书籍读,入门的话可以找点国人的书或者视频看。这本定位就相当于是关于Spring的新华字典,只有一些基本概念的介绍和示例,涵盖了Spring的各个方面,但都不够深入。就像作者在最后一页写的那样:“学习Spring,这才刚刚开始”。

45.微服务架构

《Java
Web整合开发王者归来》:当时刚开始学的时候就是开的这本书,基本上是完完整整的看完了。不过,我不是很推荐大家看。这本书比较老了,里面很多东西都已经算是过时了。不过,这本书的一个很大优点是:基础知识点概括全面。

46.团队协作开发

《Redis实战》:如果你想了解Redis的一些概念性知识的话,这本书真的非常不错。

47.B2C商城项目实战

《Redis设计与实现》(推荐,豆瓣评分 8.5,0.5K+人评价)

跳槽当然也少不了一份大厂的面试题了咯,最后为大家准备了一份BATJ大厂面试题。

《深入剖析Tomcat》(推荐,豆瓣评分
8.4,0.2K+人评价):本书深入剖析Tomcat 4和Tomcat
5中的每个组件,并揭示其内部工作原理。通过学习本书,你将可以自行开发Tomcat组件,或者扩展已有的组件。
读完这本书,基本可以摆脱背诵面试题的尴尬。

威尼斯人娱乐场 3

《高性能MySQL》(推荐,豆瓣评分 9.3,0.4K+人评价):mysql
领域的经典之作,拥有广泛的影响力。不但适合数据库管理员阅读,也适合开发人员参考学习。不管是数据库新手还是专家,相信都能从本书有所收获。

资料获取方式:

深入理解Nginx:作者讲的非常细致,注释都写的都很工整,对于 Nginx
的开发人员非常有帮助。优点是细致,缺点是过于细致,到处都是代码片段,缺少一些抽象。

加群BAT架构技术交流群:957413713
,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,相信对于已经工作和遇到技术瓶颈的码友,在这个群里会有你需要的内容。

《RabbitMQ实战指南》:《RabbitMQ实战指南》从消息中间件的概念和RabbitMQ的历史切入,主要阐述RabbitMQ的安装、使用、配置、管理、运维、原理、扩展等方面的细节。如果你想浅尝RabbitMQ的使用,这本书是你最好的选择;如果你想深入RabbitMQ的原理,这本书也是你最好的选择;总之,如果你想玩转RabbitMQ,这本书一定是最值得看的书之一

点击链接加入群聊【BAT架构技术交流群】:

《Spring
Cloud微服务实战》:从时下流行的微服务架构概念出发,详细介绍了Spring
Cloud针对微服务架构中几大核心要素的解决方案和基础组件。对于各个组件的介绍,《Spring
Cloud微服务实战》主要以示例与源码结合的方式来帮助读者更好地理解这些组件的使用方法以及运行原理。同时,在介绍的过程中,还包含了作者在实践中所遇到的一些问题和解决思路,可供读者在实践中作为参考。

《第一本Docker书》:Docker入门书籍!

操作系统

《鸟哥的Linux私房菜》(推荐,,豆瓣评分
9.1,0.3K+人评价):本书是最具知名度的Linux入门书《鸟哥的Linux私房菜基础学习篇》的最新版,全面而详细地介绍了Linux操作系统。全书分为5个部分:第一部分着重说明Linux的起源及功能,如何规划和安装Linux主机;第二部分介绍Linux的文件系统、文件、目录与磁盘的管理;第三部分介绍文字模式接口
shell和管理系统的好帮手shell脚本,另外还介绍了文字编辑器vi和vim的使用方法;第四部分介绍了对于系统安全非常重要的Linux账号的管理,以及主机系统与程序的管理,如查看进程、任务分配和作业管理;第五部分介绍了系统管理员的管理事项,如了解系统运行状况、系统服务,针对登录文件进行解析,对系统进行备份以及核心的管理等。

架构相关

《大型网站技术架构:核心原理与案例分析+李智慧》:这本书我读过,基本不需要你有什么基础啊~读起来特别轻松,但是却可以学到很多东西,非常推荐了。另外我写过这本书的思维导图,关注我的微信公众号:“Java面试通关手册”回复“大型网站技术架构”即可领取思维导图。

《亿级流量网站架构核心技术》:一书总结并梳理了亿级流量网站高可用和高并发原则,通过实例详细介绍了如何落地这些原则。本书分为四部分:概述、高可用原则、高并发原则、案例实战。从负载均衡、限流、降级、隔离、超时与重试、回滚机制、压测与预案、缓存、池化、异步化、扩容、队列等多方面详细介绍了亿级流量网站的架构核心技术,让读者看后能快速运用到实践项目中。

《架构解密从分布式到微服务(Leaderus著)》:很一般的书籍,我就是当做课后图书来阅读的。

代码优化

《重构_改善既有代码的设计》:豆瓣 9.1 分,重构书籍的开山鼻祖。

与我交流

威尼斯人娱乐场 4

文中提到的一些常用的资源都放在了我的群里面+479749726,即可免费领取,无任何套路。

发表评论

电子邮件地址不会被公开。 必填项已用*标注