Java程序员,除了最常用的20%技术还需掌握哪些技术才能游刃有余

Java程序员除了要掌握的20%以外还要掌握些什么知识才能游刃有余。下面说说我接触(使用)过、的东西吧。

  1. java以分布式应用丰富的生态闻名,在分布式系统中逃不过CAP的抉择。早早了解一些分布式一致性协议paxos、raft等。学习zookeeper的原理和使用场景(metadata、分布式锁、leaderEletion... etc)
  2. RPC框架在SOA架构中起着重要的作用,好好探究终是有好处的,在这里推荐阿里巴巴的dubbo框架,同时会netty、mina等网络库
  3. Hadoop系列 Storm Spark 等离线\\实时计算框架
  4. ElasticSearch\\SolrCloud 分布式搜索 ELK 日志相关的东西对这些比较敏感,当然在更多的场景使用ES也是有很多
  5. 消息队列 kafka\\MetaQ RabbitMQ 缓存 Redis/memcached .容器tomcat/jetty web服务器NGINX/OpenResty
  6. 然后就是各种基础知识,编程语言、网络方面、数据库、数据结构和算法。不要觉得任何一项都精通了,敢说精通的能有几个。
  7. 掌握技能也就是需要时间成本和学习成本,要成为一个好的程序员不要怕学习,有学历能力需要新技术才能跟得上,想当年才学的时候struts2比springmvc高出一截,不过现在也基本没人用啦。

Java程序员一定要学好重点的技术,如下面这些

  • 并发包:理解 ConcurrentHashMap原理,线程池,异步并发,锁。
  • 集合类,线程类。
  • http请求
  • json,xml读写。
  • 常用api。
  • 前端模块javascript、css,熟悉一个前端框架。
  • 常用框架、常见的设计模式、面向对象。

加薪必备知识点

  • 掌握Java编程语言,包含io/nio/socket/multi threads/collection/concurrency等功能的使用;
  • 熟练掌握jvm(sun hotspot和ibm j9)内存模型、gc垃圾回收调优等技能;
  • 精通JVM,JMM,MVC架构,熟练使用struts2。
  • 熟练使用spring、struts、ibatis构建应用系统。
  • 熟练使用Servlet,jsp,freemark等前端技术。
  • 熟练使用axis搭建基于SOAP协议的WebService服务接口。
  • 熟练使用MAVEN构建项目工程。
  • 熟练使用tomcat等web服务。
  • 熟练使用mysql等关系型数据库,熟悉mysql集群搭建
  • 熟练使用redis等NOSQL技术。
  • 熟悉tcp、http协议。
  • 熟悉nginx、haproxy等配置。
  • 熟悉javascript、ajax等技术。
  • 熟悉主流分布式文件系统FastDFS等。
  • 熟悉JMS,可熟练使用ActiveMQ。

底层计算机理解内存管理/数据挖掘系统

可靠性和可用性如何理解

  • jsp和sever lap对比
  • 数据库到界面,字符集转化
  • 基栈
  • jvm优化cup高的时候如果分析和监控
  • java curb突出细节问题
  • 分布式缓存文档如何分流
  • 迁移数据库垂直分割
  • 高并发如何处理前端高并发应用层
  • LB设计load balance
  • 负载均衡
  • 防网络攻击
  • 数据日志事件监控后通知
  • 数据库事务实现的底层机制
  • 字符串空格输入的网络攻击
  • Quartz框架的底层原理
  • 数据库同步中不通过数据库引擎直接读日志等方式同步数据

针对上面的内容,我精心整理了一份【Java进阶核心技术知识点】,助力成长进阶。本架构专题合集由原BAT资深架构师依据过往项目实践经验,耗时巨长、精心创作。内容非常广泛,读者老哥们可以参考一下。

需要的老哥获取方式:转发+关注后,私信【技术】来免费领取到这份Java进阶核心技术知识点!

JVM


Java程序员,除了最常用的20%技术还需掌握哪些技术才能游刃有余


Spring原理


Java程序员,除了最常用的20%技术还需掌握哪些技术才能游刃有余


微服务


Java程序员,除了最常用的20%技术还需掌握哪些技术才能游刃有余


Netty与Rpc


Java程序员,除了最常用的20%技术还需掌握哪些技术才能游刃有余


设计模式


Java程序员,除了最常用的20%技术还需掌握哪些技术才能游刃有余


数据结构与算法


Java程序员,除了最常用的20%技术还需掌握哪些技术才能游刃有余


由于篇幅限制,只能展示部分截图出来,需要获取这份【Java进阶核心技术知识点】的读者老哥们可以转发关注一下小编,后台私信:“技术”来免费获取吧。


分享到:


相關文章: