• 阿里面试总结


    1.Java基础

         ArrayList,HashMap等集合框架类,重要基础类String等的处理。HashMap的底层存储结构等。

        (也可以顺带考察下对接口,继承,重载重写的基本理解;以及异常处理的注意事项)。

    2. 数据结构与算法

       常见的查找算法及时间复杂度。

       常见的排序算法及时间复杂度。

       比较重要的数据结构,如链表,队列,栈的基本理解及大致实现。

    3. 多线程问题

       1)线程安全问题。 HashMap 是否线程安全,为何不安全。 ConcurrentHashMap,线程安全,为何安全。底层实现是怎么样的。

       2)J.U.C下的常见类的使用。 ThreadPool的深入考察; BlockingQueue的使用。(take,poll的区别,put,offer的区别);原子类的实现。

       4)各种常见锁使用

    如果上面这些掌握很好,还可以看看更深一点的 False Sharing,Cache Line,可见性与原子性等;

    4. JVM

        Java内存分代模型,GC算法,JVM常见的启动参数; CMS算法的过程。

        这块回答较好,也可以只是看毕玄的Java分布式开发或网上文章的学习, 可以结合JVM启动参数常见配置,jstat等命令,看下动手能力,意愿;以及实际线上问题排查。

    5.Linux使用与问题分析排查

        1). grep,awk,sed; 是否自己写过shell脚本;

        2). 常见的cpu load过高,us过高,一般是什么问题。引申出是否用过top,jstat,jstack等。

            常见的内存问题一般有哪些。 引申出是否用过free,top, jmap等。

    6. 框架使用

        spring aop的底层实验原理。 aop与cglib,与asm的关系。

        spriong ioc的生命周期,(init-method,intilizingbean接口方法afterPropertiesSet的先后顺序)等。

       Hibernate对一二级缓存的使用,Lazy-Load的理解;

    7. 数据库相关:

       1. mysql存储引擎中索引的实现机制;

       2.数据库事务的几种粒度;

       3.行锁,表锁;乐观锁,悲观锁

    8.网络协议:

       HTTP协议;

       HTTPS协议,SSL协议及完整交互过程;

    9. redis

       redis,memcache底层客户端使用一致性Hash,看是否了解;

       redis的事件驱动多路复用底层实现;引申到NIO编程, 看对Netty,或mina是否了解。

      如果候选者同时用过memcache,redis,看下是否了解两者在使用场景上的区别。以考察使用深度,以及是否有好奇精神。

    10. 设计模式与重构

        常见设计模式,如singlen,factory,abstract factory,strategy,chain,adaptor,decorator,composite,template,absever等。

        重构:重构书籍

    11. 学习与进取心

        最近上过上哪些技术站点; 最近在看哪些书。

    12. 抗压能力及抗压意愿

        了解加班情况,了解是否愿意在一段时间996等;

    13 稳定性考察

          了解家庭婚姻状况, 了解购房及居住地,籍贯情况,了解目前薪资,评估稳定性;

    =======

    1.进程和线程的区别

    2.什么叫线程安全?举例说明

    3.OSI七层模型,包括TCP,IP的一些基本知识

    4.数据库的锁

    5.DFS,BFS算法

    6.还有一些诸如collection framework的Java基础

    7、http中,get post的区别

    其他的面试,感觉问的很有代表性:

     第一面(只记得这么多了)

      1、笔试题第四题实现又口述了下

      2、有个每秒钟5k个请求,查询手机号所属地的笔试题(记得不完整,没列出),如何设计算法?请求再多,比如5w,如何设计整个系统?

      3、比较熟悉什么技术?我说jvm和oracle,就让我画jvm的体系结构,画了之后说各个部分的职责,并扯到运行期优化。

      第二面(没有技术细节,都是泛泛的,但是我回答的比较保守,只觉得能滔滔不绝的说上半小时才敢说看过或了解)

      1、是否愿意去杭州

      2、熟悉各种技术框架么?源码读过么?

      3、数据库了解什么?mysql了解么

      4、前台技术,看我用的ExtJS,就问是否了解JQuery

      5、进现在的公司,觉得对技术是否有提升?

      第三面,此面没有技术问题

      第四面HR(感觉这面问题回答的有点扯,毕竟是这么几年来首次面HR,之前面过2、3个公司,要么很早就挂了,要么感觉流程太长,自己不愿意面下去)

      1、愿意去杭州发展么?我说要考虑,hr就问主要考虑什么问题

      2、从技术角度来说,你觉得你跟你同学比怎么样

      3、你的父母怎么看待你的

          1、jvm性能调优都做了什么

      2、高并发情况下,我们系统是如何支撑大量的请求的

      3、集群如何同步会话状态

      4、负载均衡的原理

      5、数据库事务属性

      6、二叉树的遍历算法

      7、hashtable和hashmap的区别

      8、并发、同步的接口或方法

      9、string、stringbuilder、stringbuffer区别

      10、https处理的一个过程,对称加密和非对称加密

      11、线程的几种状态

      12、了解手机开发么

      13、个人优势

      14、与同事沟通的时候,如果遇到冲突了如何解决

      15、工作中觉得哪方面欠缺?

      16、有问题要问么?

      17、期望薪水

      18、为什么要离开现在的公司

      * struts1.2和webwork的区别

      * hibernate和ibatis的区别

      * spring工作机制,IOC容器

      * servlet的一些相关问题

      * webservice相关

      * java基础:jvm,HashSet等等

      * 考察学习新技术的能力

    其他:

       1.  店铺相关的业务特点决定,有前后端知识是加分项。 如果候选者熟悉javascript。

    可以考察:

        1) 前后端优化的基本常识,比如js放在后面不阻塞等;原生js的理解,正则,时间冒泡等。

        2)firebug,fiddle等调试工具; 

        3)如果是基本使用,看下ext框架,jquery等熟悉程度。jquery插件机制,sizzle选择器。

         如果以上都不错,可以再深入考察  

       1)作用域链, 闭包的理解。

       2)看下是否了解最新的技术。 augularJS, nodejs,cmd规范,amd规范等。

  • 相关阅读:
    IE6背景图片不显示,解决方法
    双语网站资源文件
    jQuery插件—获取URL参数
    如何在ashx页面获取Session值
    网站页面(aspx.cs)读取资源文件(*.resx)对应键值的value值
    .NET cache的使用
    Cache
    ASP.NET通过Global.asax和Timer定时器 定时调用WebService 运行后台代码
    ASP.NET 用户控件自定义属性、方法、事件
    jQuery获取Select选择的Text和Value
  • 原文地址:https://www.cnblogs.com/zhuyaguang/p/5089293.html
Copyright © 2020-2023  润新知