• 成为java架构师的技能


    0: 数据结构算法

      数组、链表、堆、栈、队列、Hash表、二叉树等;

      算法思想:递推、递归、穷举、贪心、分治、动态规划、迭代、分枝界限;

      排序查找

      B+/B-数、红黑树、图等;

      图的深度优先搜索、图的广度优先搜索、拓扑排序、Dijkstra算法(单源最短路径)、霍夫曼编码、辗转相除法、最小生成树等

    1: JAVA基础:

      理解i/o、socket、多线程、集合等基础框架(Collection以及各种List、Set、Queue、Map的实现以及继承关系,实现原理CollectionsArrays); 

      要熟练使用各种数据结构和算法,数组、哈希、链表、排序树等等;

           熟悉jvm运行机制及内存管理,Jvm虚拟机原理、调优,懂得jvm能写出性能更好的代码;JVM内存模型、类加载机制以及性能优化; 

           有多线程开发项目经验(线程池,线程安全,线程锁),对Java中concurrent包下的线程池、队列、锁有基本的了解和使用经验;

           网络和并发编程有丰富的经验;

           池技术也是要掌握的,对象池、连接池、线程池都要会;

           Java反射技术,写框架必备的技术;

           Java各种集合对象的实现原理,了解这些可以让你在解决问题时选择合适的数据结构,高效地解决问题,写出代码;

    2: 框架

         熟悉SpringMvc, Spring Boot, Spring Cloud ,Spring MVC ,mybatis,hibernate框架,并知道原理;

    3:Linux

      Linux系统以及常见操作,shell等

    4: 中间件:

           熟悉分布式、缓存、消息、搜索等机制,有分布式系统、集群架构设计;

      熟悉常见的中间件、分布式解决方案及其原理:分布式缓存、SOA、消息中间件,负载均衡、连接池等;

           还有队列中间件也要会操作,如消息推送,可以先把消息写入数据库,推送放队列服务器上,由推送服务器去队列获取处理
            ,这样就可以将消息放数据库和队列里后直接给用户反馈,推送过程则由推送服务器和队列服务器完成,好处异步处理、缓解服务器压力,解藕系统。

    5: web相关: 

      比如tcp协议,创建连接三次握手和断开连接四次握手的整个过程,不了解就没法对高并发网络应用做优化,
      http协议,session和cookie的生命周期与关联;熟悉系统集群、负载均衡、反向代理、动静分离,网站静态化;
           懂得分布式存储系统nfs,fastdfs,tfs,Hadoop了解他们的优缺点,适用场景,以及分布式缓存技术memcached,redis,提高系统性能必备。

            工具nginx必备技能超级好用,高性能,基本不会挂掉的服务器,功能多多,解决各种问题;

            熟悉大并发量、高性能优化、大数据等处理技术;

            熟悉Apache、Ngnix、Tomcat等主流Web服务器的基本配置和进程监控,熟悉集群及负载均衡技术,熟悉主流应用服务器的架构体系;
            熟悉Hadoop、Spark等分布式计算框架,对开源机器学习,推荐系统有了解者优先;             

            熟悉apache、nginx、tomcat、redis、MQ 等服务器的配置和调优

            了解TCP/IP、HTTP等协议

             熟悉分布式系统的设计和应用,熟悉缓存、消息、负载均衡等机制和实现;

             熟练使用Tomcat、Jetty、Nginx等应用服务器;
             熟悉常用的互联网技术,包括但不限于MySQL、NoSQL、RPC、MQ、缓存技术、微服务架构等;

    6: 数据库:

             Mysql必备,最基础的数据工具,主要是免费且好用,对它基本的参数优化,慢查询日志分析,主从复制的配置,至少要成为半个mysql dba;

       熟练掌握常见SQL、NoSQL数据库原理、数据库设计、查询编写和优化;

            熟悉数据库原理以及常用性能优化技术;

            有在大数据、集群、复制和相关的数据访问设计经验;
             在DB、系统和应用上有性能优化经验;

    7: 前端:

  • 相关阅读:
    JDBC连接MySQL数据库及演示样例
    用 managedQuery() 时须要注意的一个陷阱
    JAVA Calendar具体解释
    serialVersionUID作用
    D3DXMatrixMultiply 函数
    不同数据库oracle mysql SQL Server DB2 infomix sybase分页查询语句
    破解中国电信华为无线猫路由(HG522-C)自己主动拨号+不限电脑数+iTV
    数据库的增删改查和使用流程
    OutputCache说明
    HDU 4292Food(网络流的最大流量)
  • 原文地址:https://www.cnblogs.com/liufei1983/p/10809998.html
Copyright © 2020-2023  润新知