饿了么java开发工程师现场面试

  1. 操作系统中虚拟存储器的作用,分页从逻辑地址到物理地址的映射过程
  2. 缓存击穿有哪些方案解决
  3. apache与nginx对比,你觉得他们各自的优缺点?
  4. mysql索引设计,给出一个情景,要求设计索引,分析为什么这样设计
  5. JDK1.7中HashMap的put方法全过程
  6. 什么是多线程环境下的伪共享(false sharing)?
  7. 如何只使用(传输层)TCP/IP协议,传输数据?
  8. 线程池的五种状态,结合例子说明在什么情况下或使用什么方法进入什么状态
  9. Linux环境下,如何更改文件名同时将它移到其它指定目录?
  10. 项目中用的啥JVM收集器,内存回收的机制,新生代老年代的两种算法,两种算法各有啥缺点,有没有搞过JVM调优(调优完全不会)
  11. 当用户访问量到达亿级的时候,没法分表的情况下,如何优化mysql?
  12. 介绍spring的IOC和AOP,分别如何实现(classloader、动态代理)
  13. 存储了0-100的数据,如何删除其中小于10的数字(其实问的是list中如何删除元素——迭代器)
  14. 高并发量大的话怎么处理热点,数据等
  15. Redis(String是如何插入到Redis)
  16. 说一下Namenode中维护的元数据中都存储了哪些信息?
  17. spring AOP IOC的原理
  18. spring何时创建applicationContext
  19. Docker 的基本架构和使用场景?
  20. 什么是事务?及其特性?
  21. Redis 如何实现持久化?
  22. 索引有哪些存储方式,“like”查询在什么时候能够用上索引
  23. 一个6位的密码,使用MD5加密,破解需要多久:说的是这样的,因为6位的密码排列组合有一定的种数,然后每一种通过hash函数去破解,需要多久
  24. thread和runnable的区别
  25. 数据库死锁碰见过吗?是怎么解决的了?如何避免数据库死锁?
  26. concurenthashmap 1.8和1.7有什么区别