真题实战

第一部分:
osi七层网络模型,五层网络模型,每次层分别有哪些协议

死锁产生的条件, 以及如何避免死锁,银行家算法,产生死锁后如何解决

如何判断链表有环

虚拟机类加载机制,双亲委派模型,以及为什么要实现双亲委派模型

虚拟机调优参数

拆箱装箱的原理

JVM垃圾回收算法

CMS G1

hashset和hashmap的区别,haspmap的底层实现put操作,扩容机制,currenthashmap如何解决线程安全,1.7版本以及1.8版本的不同

md5加密的原理

有多少种方法可以让线程阻塞,能说多少说多少

synchronized和reetrantlock锁

AQS同步器框架,countdowmlatch,cyclebarrier,semaphore,读写锁

阿里Java二面题目
B-Tree索引,myisam和innodb中索引的区别

BIO和NIO的应用场景

讲讲threadlocal

数据库隔离级别,每层级别分别用什么方法实现,三级封锁协议,共享锁排它锁,mvcc多版本并发控制协议,间隙锁

数据库索引?B+树?为什么要建索引?什么样的字段需要建索引,建索引的时候一般考虑什么?索引会不会使插入、删除作效率变低,怎么解决?

数据库表怎么设计的?数据库范式?设计的过程中需要注意什么?

共享锁与非共享锁、一个事务锁住了一条数据,另一个事务能查吗?

Spring bean的生命周期?默认创建的模式是什么?不想单例怎么办?

阿里Java三面题目

高并发时怎么限流

线程池的拒接任务策略

springboot的启动流程

集群、负载均衡、分布式、数据一致性的区别与关系

数据库如果让你来垂直和水平拆分,谁先拆分,拆分的原则有哪些(单表数据量多大拆)

最后谈谈Redis、Kafka、 Dubbo,各自的设计原理和应用场景


第二部分:

Java容器有哪些?哪些是同步容器,哪些是并发容器?
ArrayList和LinkedList的插入和访问的时间复杂度?
java反射原理, 注解原理?
新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?
HashMap在什么情况下会扩容,或者有哪些操作会导致扩容?
HashMap push方法的执行过程?
HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头?
1.8还采用了红黑树,讲讲红黑树的特性,为什么人家一定要用红黑树而不是AVL、B树之类的?
https和http区别,有没有用过其他安全传输手段?
线程池的工作原理,几个重要参数,然后给了具体几个参数分析线程池会怎么做,最后问阻塞队列的作用是什么?
linux怎么查看系统负载情况?
请详细描述springmvc处理请求全流程?
spring 一个bean装配的过程?
讲一讲AtomicInteger,为什么要用CAS而不是synchronized?
蚂蚁花呗二面
查询中哪些情况不会使用索引?
数据库索引,底层是怎样实现的,为什么要用B树索引?
Mysql主从同步的实现原理?
MySQL是怎么用B+树?
谈谈数据库乐观锁与悲观锁?
有使用过哪些NoSQL数据库?MongoDB和Redis适用哪些场景?
描述分布式事务之TCC服务设计?
Redis和memcache有什么区别?Redis为什么比memcache有优势?
考虑redis的时候,有没有考虑容量?大概数据量会有多少?
蚂蚁花呗三面
介绍项目
各种聊项目,从项目的架构设计到部署流程。
solr和mongodb的区别,存数据为什么不用solr?
还是要聊项目
谈谈分布式锁、以及分布式全局唯一ID的实现比较?
集群监控的时候,重点需要关注哪些技术指标?这些指标如何优化?
从千万的数据到亿级的数据,会面临哪些技术挑战?你的技术解决思路?
最近两年遇到的最大的挫折,从挫折中学到了什么?
最近有没有学习过新技术?
有啥想问我的?


第三部分:

自我介绍
对象相等的判断,equals方法实现。 Hashcode的作用,与 equal 有什么区别?
Java中CAS算法?
G1回收器讲一下?
HashMap,ConcurrentHashMap与LinkedHashMap的区别
如何在多线程环境下使用Map,ConcurrentHashMap原理,ConcurrentHashMap如何加锁。
多线程并发的同步实现,有两个方法,每个方法里有a部分代码和b部分代码,我要让两个线程分别执行两个方法,并且让他们运行完a部分代码再一起向下执行,如何实现。
TCP连接中的三次握手和四次挥手,四次挥手的最后一个ack的作用是什么,为什么要time wait,为什么是2msl。
aio,nio,bio的了解
ReetrantLock和synchronized的区别。
Java有哪些悲观锁的实现?
Java有哪些类实现了乐观锁?
百度高级Java二面
Spring两大特性?AOP和IOC
Spring的初始化过程?Spring bean的生命周期?
多个RPC请求进来,服务器怎么处理并发呢?
MySQL的索引实现原理?聚合索引和非聚合索引的区别?
MySQL有哪几种join方式,底层原理是什么?
MySQL的引擎讲一下,有什么区别,使用场景呢?
数据库的事务,四个性质说一下,分别有什么用?
常见的分布式事务解决方案有哪些?
百度高级Java三面
介绍项目,以及画相关的分布式架构图
数据库的备份和恢复怎么实现的,主从复制怎么做的,什么时候会出现数据不一致,如何解决?
Netty的实现原理?
分布式下Redis如何保证线程安全
Redis怎么做持久化?两种持久化的区别?
MongoDB、Hbase、Memcached、Redis各自的应用场景和区别
Docker平时怎么使用的?
并发mysql的场景,查询优化怎么做?
设计一个高并发高可用的架构方案,关键核心设计?


第四部分:

JVM中的老年代在什么情况下会触发GC?
CMS的垃圾回收步骤,G1和CMS的区别?
CMS哪个阶段是并发的,哪个阶段是串行的?
谈谈Java线程池,线程池中几个参数含义
谈谈你了解的J.U.C包的JDK源码(CAS、AQS、ConcurrentHashMap、ThreadLocal、CyclicBarrier、CountDownLatch、Atom、阻塞队列等等)
JVM性能调优的方法和步骤,JVM的关键性核心参数配置
Java线程锁有哪些,优劣势
HashMap的实现原理,JDK1.8做了哪些修改?
画一个完整的多线程状态图
都知道什么排序,希尔排序,归并排序,快排都如何实现,还有复杂度问题
讲一讲红黑树,以及红黑树插入一个结点的时间复杂度
mysql如何在RR隔离级别下避免幻读问题
mysql范式和反范式的区别以及彼此的优缺点
支付宝高级Java二面
mysql 索引类别有哪些,什么是覆盖索引
mysql如何获取慢SQL,以及慢查询的解决方式
mysql 主从同步如何配置,工作原理
乐观锁和悲观锁、行锁与表锁、共享锁与排他锁(inndob如何手动加共享锁与排他锁)
死锁判定原理和具体场景
谈谈事务的ACID
数据库崩溃时事务的恢复机制
分布式全局唯一ID的生成方式有哪几种?以及每种之间的优劣势比较?
分布式Session有哪几种?一般使用哪一种,为什么?
谈谈Redis一致性Hash算法的理解
支付宝高级Java三面
Redis集群方案应该怎么做?都有哪些方案?
如何实现集群中的session共享存储?
memcached与redis的区别?
有使用过哪些阿里的开源中间件?相关的中间件有做个性能比较吗?
服务器雪崩的场景,一般是由什么引起的?如何来设计应对
谈谈dubbo的架构设计原理,同类产品的比较?
Docker与JVM的区别?
高并发的解决方案有哪些,重点谈谈方案的优先级步骤?


第五部分:

自我介绍
map怎么实现hashcode和equals,为什么重写equals必须重写hashcode
使用过concurrent包下的哪些类,使用场景等等。
concurrentHashMap怎么实现?concurrenthashmap在1.8和1.7里面有什么区别
CountDownLatch、LinkedHashMap、AQS实现原理
线程池有哪些RejectedExecutionHandler,分别对应的使用场景
多线程的锁?怎么优化的?偏向锁、轻量级锁、重量级锁?
组合索引?B+树如何存储的?
为什么缓存更新策略是先更新数据库后删除缓存
OOM说一下?怎么排查?哪些会导致OOM?
OSI七层结构,每层结构都是干什么的?
java的线程安全queue需要注意的点
死锁的原因,如何避免
二面
jvm虚拟机老年代什么情况下会发生gc,给你一个场景,一台4核8G的服务器,每隔两个小时就要出现一次老年代gc,现在有日志,怎么分析是哪里出了问题
数据库索引有哪些?底层怎么实现的?数据库怎么优化?
数据库的事务,四个性质说一下,分别有什么用,怎么实现的?
服务器如何负载均衡,有哪些算法,哪个比较好,一致性哈希原理,怎么避免DDOS攻击请求打到少数机器
volatile讲讲
哪些设计模式?装饰器、代理讲讲?
redis集群会吗?
mysql存储引擎
事务隔离级别
不可重复度和幻读,怎么避免,底层怎么实现(行锁表锁)
三面
项目介绍
分布式锁是怎么实现的
MySQL有哪几种join方式,底层原理是什么
Redis有哪些数据结构?底层的编码有哪些?有序链表采用了哪些不同的编码?
Redis扩容,失效key清理策略
Redis的持久化怎么做,aof和rdb,有什么区别,有什么优缺点。
MySQL数据库怎么实现分库分表,以及数据同步?
单点登录如何是实现?
谈谈SpringBoot和SpringCloud的理解
未来的技术职业怎么规划?
为什么选择阿里?


第六部分:

JVM数据存储模型,新生代、年老代的构造?
java GC算法,什么时候会触发minor gc,什么时候会触发full gc?
GC 可达性分析中哪些算是GC ROOT?
你熟悉的JVM调优参数,使用过哪些调优工具?
Java 有什么锁类型?
描述下线程池的处理流程?
类加载机制,一个类加载到虚拟机中一共有几个步骤,这些步骤的顺序哪些是固定的,哪些是不固定的,为什么不固定
hashmap是线程不安全的,concurrenthashmap是线程安全的,怎么实现的线程安全?
volatile关键字解决了什么问题,实现原理是什么
并发容器有哪些,并发容器和同步容器的区别
二面:
在工作中,SQL语句的优化和注意的事项
哪些库或者框架用到NIO
Spring 都有哪几种注入方式,什么情况下用哪种,ioc实现原理
如何定位一个慢查询,一个服务有多条SQL你怎么快速定位
聚集索引和非聚集索引知道吗?什么情况用聚集索引什么情况用非聚集索引
Nosql引擎用的什么存储结构,关系型数据库和NoSQL各自的优劣点是什么,如何技术选型?
微服务架构下,如果有一个订单系统,一个库存系统,怎么保证事务?
分布式一致性协议raft,paxos 了解吗
Zookeeper中的ZAB协议,选主算法
三面:
自我介绍
参与的并发项目,从设计到部署,按照流程讲一遍。
项目相关你用过redis,用在什么场景,怎么使用的?
mysql同步机制原理,有哪几种同步方法
数据库主从同步如何实现,事务如何实现
谈谈你对SOA和微服务的理解,以及分布式架构从应用层面涉及到的调整和挑战。
阿里系中间件metaQ及原理与现有的kafka有什么异同
在阿里有了解过什么中间件吗?实现原理?与其他开源消息队列有什么特点?
为什么选择换公司?
三年到五年的职业规划?
你有想问我的?


第七部分:

介绍项目
java 线程池的实现原理,threadpoolexecutor关键参数解释
hashmap的原理,容量为什么是2的幂次
为什么要同时重写hashcode和equals
ConcurrentHashMap如何实现线程安全?
介绍Java多线程的5大状态,以及状态图流转过程
介绍下Synchronized、Volatile、CAS、AQS,以及各自的使用场景
B+树和红黑树时间复杂度
如果频繁老年代回收怎么分析解决
JVM内存模型,新生代和老年的回收机制
mysql limit分页如何保证可靠性
二面
自我介绍
java nio,bio,aio,操作系统底层nio实现原理
Spring IOC,autowired如何实现
Spring事务传播机制
线程死锁排查
MySQL引擎及区别,项目用的哪个,为什么
RPC为什么用http做通信?
RPC两端如何进行负载均衡?
mycat分库分表、读写分离的实现
分布式数据如何保证数据一致性
高并发请求处理,流量削峰措施有哪些
三面
谈谈你参与过的最有挑战的技术项目
Redis持久化RDB和AOF 的区别
MQ底层实现原理
详细介绍下分布式 一致性Hash算法
nginx负载均衡的算法
Nginx 的 upstream目前支持 哪4 种方式的分配
分布式集群部署后,从应用端哪些需要怎么调整
Dubbo默认使用什么注册中心,还有别的选择吗?
mongoDB、redis和memcached的应用场景,各自优势
谈谈你性能优化的实践案例,优化思路?
两千万用户并发抢购,你怎么来设计?
四面(HR面)
你觉得你有什么优点?有什么缺点?分别举例讲一讲。你怎么克服缺点?
你觉得最有成就感的一件事是什么,你遇到了什么问题,怎么解决的?
工作中如果遇见了技术问题,暂时你无法解决,你的应对思路?
如果有一家公司给到你的薪资比阿里更高,你怎么选择,为什么这样选?
谈谈未来3年你的职业规划?


第八部分:

HashMap底层原理?HashTable和ConcurrentHashMap他们之间的相同点和不同点?

2、由上题提到锁的问题

3、MySQL的表锁&行锁&乐观锁&悲观锁,各自的使用场景

4、Java线程锁有哪些,各自的优劣势

5、事务四大特性

6、事务的二段提交机制?

7、聚簇索引&非聚簇索引

8、G1回收器讲下回收过程

9、Tcp三次握手,四次挥手大概讲一下?

10、类加载过程

11、双亲委派机制及使用原因

12、JVM GC算法有哪些,目前的JDK版本采用什么回收算法

13、Http&Https的区别

14、Https的加密方式

15、线程池的核心参数和基本原理

16、线程池的调优策略

17、问问题(你有什么职业规划)

二面:
1、 java 什么时候发生死锁

2、如何避免死锁

3、 B+ 树的原理

4、分布式一致性协议,二段、三段、TCC,优缺点

5、分布式架构与微服务的关系

6、DNS解析过程

7、线程池实现过没?

8、Spring IOC、AOP

9、SpringBoot、SpringCloud的一些应用

10、ACID CAP BASE理论,以及RPC过程。

11、问问题(你有什么职业规划)没错,每个面试官都要问这个问题,三面也是

三面(P9面):
1、项目中用的中间件的理解(Dubbo、MQ、Redis、kafka、zookeep)

2、参与过类似秒杀的项目?你认为这样的项目挑战在哪里,怎么解决

3、项目中遇到的最大问题和解决策略

4、生活中遇到的最大的挫折

5、生活中遇到的最大的令你最有成就感的事情

6、问问题(你有什么职业规划)


第九部分:

自我介绍
JVM垃圾回收算法和垃圾回收器有哪些,最新的JDK采用什么算法。
新生代和老年代的回收机制。
讲一下ArrayList和linkedlist的区别,ArrayList与HashMap的扩容方式。
Concurrenthashmap1.8后的改动。
Java中的多线程,以及线程池的增长策略和拒绝策略了解么。
Tomcat的类加载器了解么
Spring的ioc和aop,Springmvc的基本架构,请求流程。
HTTP协议与Tcp有什么区别,http1.0和2.0的区别。
Java的网络编程,讲讲NIO的实现方式,与BIO的区别,以及介绍常用的NIO框架。
索引什么时候会失效变成全表扫描
介绍下分布式的paxos和raft算法
蚂蚁中间件二面

你在项目中怎么用到并发的。
消息队列的使用场景,谈谈Kafka。
你说了解分布式服务,那么你怎么理解分布式服务。
Dubbo和Spring Clound的区别,以及使用场景。
讲一下docker的实现原理,以及与JVM的区别。
MongoDB、Redis和Memcached的应用场景,各自优势
MongoDB有事务吗
Redis说一下sorted set底层原理
讲讲Netty为什么并发高,相关的核心组件有哪些
蚂蚁中间件三面
完整的画一个分布式集群部署图,从负载均衡到后端数据库集群。
分布式锁的方案,Redis和Zookeeper哪个好,如果是集群部署,高并发情况下哪个性能更好。
分布式系统的全局id如何实现。
数据库万级变成亿级,你如何来解决。
常见的服务器雪崩是由什么引起的,如何来防范。
异地容灾怎么实现
常用的高并发技术解决方案有哪些,以及对应的解决步骤。


第十部分:

  1. 面试前的心态准备
    心态可以影响你面试的准备,笔试的状态,实力的发挥,可以影响一个面试过程的方方面面。心态崩了,就只剩运气了,offer估计也就走远了。

那怎么调整自己的心态呢?

首先是要正视自己的能力,不轻视,不高估。
不高估就是要清楚自己的能力范围,不是说期望过高不好,但过高的期望会让你的心理变得脆弱,稍有不顺心态就有崩掉的趋势。因为面试毕竟有太大的偶然性,就算你达到了一定的水平,相应水平的岗位也不是百发百中的,更不要说身边有那么多大神和收割机,天天拿offer拒offer,对心理都是不小的冲击。

不要总给自己消极的暗示,心态差了积极调整。
大多数的人,总暗示自己说什么时间不多了,怎么每天过这么快效率怎么这么低。到笔试了,跟自己说这个算法太难了,肯定做不出来;临到面试了,跟自己说千万别问我linux内核,别问我分布式,问我肯定完;面试过之后,没有结果,就天天想肯定又挂了,唉我怎么这么菜。

如果这一系列的表现形成习惯,那心态这个系数最多0.5,能发挥出来的东西也都打了一半的折扣。凡事都不要太悲观,一个offer没拿到,正常情况是这个失败的经历产生的经验和总结是会让下一次的成功率提高的,千万别因为这些消极的暗示,反而让该有的提高都没有了。

心态差的时候反而要停下你重复而没有效率的工作,去调整一下。

对于身边的同学,多交流,不比较。
有一些一起准备的好伙伴是件非常好的事情,不仅可以互相督促,而且可以在交流和分享的过程中取长补短。

对自己的水平有个很清楚的认识,并选择自己合适的公司,好好准备自己的笔试、面试,不怕失败,但保证每次面试都有收获和提高,那满意的offer早晚会来。

2.技术硬实力
实力我主要分为硬实力和软实力。硬实力,也就是技术上的真实积累(当然产品岗的就是对于产品相关知识的积累)。

什么是硬实力?我举几个例子,可以比对自己的技术优势,这些知识不管是校招还是社招,建议都提前把算法、数据库、编程语言等掌握牢固:

基础知识:

算法和数据结构
数组、链表、二叉树、队列、栈的各种操作(性能,场景)
二分查找和各种变种的二分查找
各类排序算法以及复杂度分析(快排、归并、堆)
各类算法题(手写)
理解并可以分析时间和空间复杂度。
动态规划(笔试回回有。。)、贪心。
红黑树、AVL树、Hash树、Tire树、B树、B+树。
图算法(比较少,也就两个最短路径算法理解吧)
计算机网络
OSI7层模型(TCP4层)等
数据库

数据库(最多的还是mysql,Nosql有redis)
索引(包括分类及优化方式,失效条件,底层结构)
sql语法(join,union,子查询,having,group by)
引擎对比(InnoDB,MyISAM)
数据库的锁(行锁,表锁,页级锁,意向锁,读锁,写锁,悲观锁,乐观锁,以及加锁的select sql方式)
隔离级别,依次解决的问题(脏读、不可重复读、幻读)
事务的ACID
B树、B+树
优化(explain,慢查询,show profile)
数据库的范式。
分库分表,主从复制,读写分离。
Nosql相关(redis和memcached区别之类的,如果你熟悉redis,redis还有一堆要问的)
操作系统:

进程通信IPC(几种方式),与线程区别
OS的几种策略(页面置换,进程调度等,每个里面有几种算法)
互斥与死锁相关的
linux常用命令(问的时候都会给具体某一个场景)
Linux内核相关(select、poll、epoll)
编程语言:

编程语言(这里只说Java):
Java基础(面向对象、四个特性、重载重写、static和final等等很多东西)
集合(HashMap、ConcurrentHashMap、各种List,最好结合源码看)
并发和多线程(线程池、SYNC和Lock锁机制、线程通信、volatile、ThreadLocal、CyclicBarrier、Atom包、CountDownLatch、AQS、CAS原理等等)
JVM(内存模型、GC垃圾回收,包括分代,GC算法,收集器、类加载和双亲委派、JVM调优,内存泄漏和内存溢出)
IO/NIO相关
反射和代理、异常、Java8相关、序列化
设计模式(常用的,jdk中有的)
Web相关(servlet、cookie/session、Spring、Mybatis、Tomcat、Hibernate等)
看jdk源码。
这些都是技术硬实力的体现,当然,如果你是面试BAT架构师,这里还会涉及到:

分布式技术架构的知识体系:

CAP原理和BASE理论。
Nosql与KV存储(redis,hbase,mongodb,memcached等)
服务化理论(包括服务发现、治理等,zookeeper、etcd、springcloud微服务、)
负载均衡(原理、cdn、一致性hash)
RPC框架(包括整体的一些框架理论,通信的netty,序列化协议thrift,protobuff等)
消息队列(原理、kafka,activeMQ,rocketMQ)
分布式存储系统(GFS、HDFS、fastDFS)、存储模型(skipList、LSM等)
分布式事务、分布式锁等
个人软实力
软实力主要就是指平时在语言沟通、逻辑思维、面试的积极性和主动性、简历的优化技巧等方便。

通过软实力来突出自己的优势,与硬实力的结合,才是你自己真正的实力体现。

沟通和逻辑思维能力:
对一个问题的表达方式,逻辑思维(像有些人的发言就让人听上去很有层次感,很舒服),沟通的层次感,善于短时间突出重点。

面试的积极性和主动性:
尤其是BAT,特别喜欢主动性和积极性的人才,主动性的人更加擅长于克服当前的困难,并把事情做好,在遇到挫折后,更容易调整好心态,且积极去推进项目。这一点,在面试的沟通过程中,有经验的BAT面试官可以通过与你的交流细节,可以捕获到部分你的性格优势和劣势。总之,主动性和乐观性的人,更有利于今后的发展,这一点不仅仅适用于面试,更适用于今后的工作发展。

简历的准备:
简历重点是突出自我介绍、擅长技能、项目经验。自我介绍要做到一句话就能表述清楚自己的优势,比如:学习能力(短时间熟练掌握技能)、个人履历(BAT背景优势)、积极努力(个人推动什么项目等)。
擅长技能:专业技能的描述词无非就那么几种:精通、熟练、熟悉、了解。精通感觉一般还是不要写,除非你在某个技术点上真的有足够的把握,真正能做到精通一门语言、一个分布式框架这才是精通。熟悉、熟练居多、精通是典型的金字塔顶部。总之,简历不要过于突出精通项数,而是突出精通的领域。
项目经验:突出自己的王牌项目,最有技术含量、挑战和帮助最大一个项目讲就足够了,面试的过程中面试官也会重点让你描述这个擅长的项目,提前模拟这个项目的讲解顺序和重点,而不是临场讲解。
做一个靠谱且有责任心的人:
很多公司在内部的面试细则上面都会注明这一点,如果价值观或是人品问题会直接否决。没有一个面试官不想找一个技术出众又有责任心的人,请相信我,责任心非常重要,更有利于今后的晋升。

最后,在你通过了硬实力和软实力的考核后,剩下的就是缘分了,你的面试气场与BAT面试官的匹配度,每一个面试官都希望找到与自己类似的求职人才,这也许就是闻味吧。

BAT面试总结:
offer = 心态 * (硬实力 + 软实力) + 缘分运气,每一个人都是经历不断面试失败再总结,再优化面试经验,再提升技术深度


待整理
一致性哈希原理?一致性hash解决了什么问题?
你用过哪些设计模式?抽象工厂和普通的工厂设计模式有何区别?
mysql默认的事务级别?
mysql间隙锁产生的原理?
redis的跳跃表原理 为什么用跳跃表?
redis使用过哪些数据结构?
kafaka ack原理 ,为什么要有ack?partion原理?
mysql主从原理是什么?主从延迟的原理是什么?
mysql多主写如何解决数据冲突?
linux如何调试java或者php进程?
php的traint是什么?
mysql分库分表?
业务里面锁如何实现的?
redis锁实现原理?有什么优缺点?
如何实现一个没有问题的锁?
linux如何查看磁盘使用量 如何查看负载?
长连接和短连接优缺点?
redis主从如何实现的?
redis的持久化方式?
binlog会产生哪些sql?
MySQL为什么需要B-tree index?
mysql自适应hash索引特别 等值查询
mysql什么时候会用到表锁?
mysql哪些情况下会用不到索引?
mysql大表如何优化?
平时有没有用到过嵌套事务?框架解决帮你解决了嵌套事务没有?如何解决的?
python多线程有哪些问题?
平时用哪些中间件部署python服务?
业务中遇到长事务有哪些解决措施?
如何实现一个监控agent?给出架构思路?

如何设计一个php server?中途遇到了哪些问题?如何去解决的?有没有更好的方案可以替代?
你对团队管理是如何理解?
如何理解架构师的职责?
redis服务器压力比较大了,应用经常会报各种错误?怎么解决这种问题?

设计一个秒杀业务?
PHP-FPM和fastcgi区别?
mysql有几种索引?
mysql主从原理?产生主从延迟有哪些原因?
PHP7有哪些改进?
mysql索引有几种类型,分别解释下对应的数据结构?
悲观锁和乐观锁?
nginx有哪些可以优化的参数?
apache和nginx区别?
api接口502了有哪些情况?
你对架构师的理解?
注入和反射有用过没有?
说下打开一个浏览器网址执行步骤?
有没有使用过rpc框架?
mysql有哪些参数可以优化?
有没有自己设计过PHP服务进程?

你可能感兴趣的:(无,职场@面试)