当前位置:网站首页>面试蚂蚁(P7)竟被MySQL难倒,奋发图强后二次面试入职蚂蚁金服
面试蚂蚁(P7)竟被MySQL难倒,奋发图强后二次面试入职蚂蚁金服
2022-08-04 10:54:00 【InfoQ】
01 蚂蚁金服面试题之MySQL
- 请解释关系型数据库概念及主要特点?
- 请说出关系型数据库的典型产品、特点及应用场景?
- 请详细描述 SQL 语句分类及对应代表性关键字。
- 什么是 MySQL 多实例,如何配置 MySQL 多实例?
- 如何加强 MySQL 安全,请给出可行的具体措施?
- 误操作执行了一个 drop 库 SQL 语句,如何完整恢复?
- 详述 MySQL 主从复制原理及配置主从的完整步骤。
- MySQL 如何实现双向互为主从复制,并说明应用场景?
- MySQL 如何实现级联同步,并说明应用场景?
- MySQL 主从复制故障如何解决?
02 二战阿里,天猫团队面试题(3轮技术面+HR面)
- 自我介绍呗
- 项目介绍呗(先自己介绍项目,然后再聊天)
- junit用法,before,beforeClass,after,afterClass的执行顺序
- 分布式锁
- nginx的请求转发算法,如何配置根据权重转发
- 用hashmap实现redis有什么问题(死锁,死循环,可用ConcurrentHashmap)
- 线程的状态
- 线程的阻塞的方式
- sleep和wait的区别
- hashmap的底层实现
- 一万个人抢100个红包,如何实现(不用队列),如何保证2个人不能抢到同一个红包,可用分布式锁
- Java内存模型,垃圾回收机制,不可达算法
- 两个Integer的引用对象传给一个swap方法在方法内部交换引用,返回后,两个引用的值是否会发现变化
- AOP的底层实现,动态代理是如何动态,假如有100个对象,如何动态的为这100个对象代理?
- 是否用过maven install、 maven test、git(make install是安装本地jar包)
- Tomcat的各种配置,如何配置docBase
- Spring的bean配置的几种方式
- Web.xml的配置
- Spring的监听器。
- Zookeeper的实现机制,有缓存,如何存储注册服务的
- IO会阻塞吗?readLine是不是阻塞的
- 用过 Spring的线程池还是java的线程池?
- 字符串的格式化方法 (20,21这两个问题问的太低级了)
- 时间的格式化方法
- 定时器用什么做的
- 线程如何退出结束
- java有哪些锁?乐观锁 悲观锁 synchronized 可重入锁 读写锁,用过reentrantlock吗?reentrantlock与synmchronized的区别
- ThreadLocal的使用场景
- Java的内存模型,垃圾回收机制
- 为什么线程执行要调用start而不是直接run(直接run,跟普通方法没什么区别,先调start,run才会作为一个线程方法运行)
- qmq消息的实现机制(qmq是去哪儿网自己封装的消息队列)
- 遍历hashmap的三种方式
- JVM的一些命令
- memcache和redis的区别
- Mysql的行级锁加在哪个位置
- ConcurrentHashmap的锁是如何加的?是不是分段越多越好
- myisam和innodb的区别(innodb是行级锁,myisam是表级锁)
- MySQL其他的性能优化方式
- Linux系统日志在哪里看
- 如何查看网络进程?
- 统计一个整数的二进制表示中bit为1的个数
- JVM内存模型,java内存模型

03 二战前,我是如何复习的?
- Mysql 中有哪几种锁?
- MYSQL 数据表在什么情况下容易损坏?
- MySQL 里记录货币用什么字段类型好
- MYSQL 支持事务吗?
- 解释访问控制列表
- 什么是通用 SQL 函数?
- 什么是非标准字符串类型?
- Mysql 表中允许有多少个 TRIGGERS?
- 什么样的对象可以使用 CREATE 语句创建?
- NOW()和 CURRENT_DATE()有什么区别?
- 可以使用多少列创建索引?
- InnoDB 是什么?
- Mysql 如何优化 DISTINCT?
- 如何输入字符为十六进制数字?
- 如何显示前 50 行?
- ......

- 为查询缓存优化你的查询
- EXPLAIN 你的 SELECT 查询
- 当只要一行数据时使用 LIMIT 1
- 为搜索字段建索引
- 在 Join 表的时候使用相当类型的例,并将其索引
- 千万不要 ORDER BY RAND()
- 避免 SELECT *
- 永远为每张表设置一个 ID
- 使用 ENUM 而不是 VARCHAR
- 从 PROCEDURE ANALYSE() 取得建议
- 尽可能的使用 NOT NULL
- Prepared Statements
- 无缓冲的查询
- 把 IP 地址存成 UNSIGNED INT
- 固定长度的表会更快
- 垂直分割
- 拆分大的 DELETE 或 INSERT 语句
- 越小的列会越快
- 选择正确的存储引擎
- 使用一个对象关系映射器(Object Relational Mapper)
- 小心“永久链接”

- 基础篇:
- MySQL基本介绍
- MySQL架构组成
- MySQL存储引擎简介
- MySQL安全管理
- MySQL备份与恢复
- 性能优化篇:
- 影响MySQLServer性能的相关因素
- MySQL数据库锁定机制
- MySQL数据库Query的优化
- MySQL数据库Schema设计的性能优化
- MySQLServer性能优化
- 常用存储引擎优化
- 架构设计篇:
- MySQL可扩展设计的基本原则
- 可扩展性设计之MySQLReplication
- 可扩展性设计之数据切分
- 可扩展性设计之Cache与Search的..
- MySQLCluster
- 高可用设计之思路及方案
- 高可用设计之MySQL监控

04 我的复习宝典资料
- 性能优化面试专栏
- 微服务架构面试专栏
- 并发编程高级面试专栏
- 开源框架面试题专栏
- 分布式面试专栏

- Redis实战
- MySQL实战
- Spring Boot实战
- Spring Cloud实战
- 实战Java虚拟机
- 初探Java虚拟机
- 认识Java虚拟机的基本结构
- 常用Java 虚拟机参数
- 垃圾回收概念与算法
- 垃圾收集器和内存分配
- 性能监控工具
- 分析Java堆
- 锁与并发
- Class 文件结构
- Class 装载系统
- 字节码执行



边栏推荐
猜你喜欢

CVPR 2022 | 从人体网格预测骨架,是真正的生理学骨架!

What is the terminal privilege management

What is the principle of thermal imaging temperature measurement?Do you know?

MySQL: Integrity Constraints and Table Design Principles

【励志】复盘的重要性

Graphical Hands-on Tutorial--ESP32 One-Key Network Configuration (Smartconfig, Airkiss)

浅析深度学习在图像处理中的应用趋势及常见技巧

转转测试环境的标签域名实践

MATLAB程序设计与应用 3.1 特殊矩阵

Use pytest hook function to realize automatic test result push enterprise WeChat
随机推荐
What is the terminal privilege management
Win11 file types, how to change?Win11 modify the file suffix
MATLAB程序设计与应用 3.2 矩阵变换
MySQL:面试问的范式设计
解析treeSet集合进行自定义类的排序
AWS Lambda related concepts and implementation approach
Events in August | 51CTO's 17th Anniversary Celebration, post a blog post to get gifts such as tea sets/notebooks/T-shirts!
Camunda整体架构和相关概念
C#/VB.NET:在 Word 中设置文本对齐方式
使用.NET简单实现一个Redis的高性能克隆版(二)
ECCV 2022 | 清华&腾讯AI Lab提出REALY: 重新思考3D人脸重建的评估方法
线程必备内容
小程序容器加快一体化在线政务服务平台建设
ORA-00054 资源正忙
【LeetCode】701.二叉搜索树中的插入操作
ThreadLocal详细分析
Learn to use the basic interface of set and map
Mysql 存储引擎简介
shell变量
Rust 入门指南 (用 WASM 开发第一个 Web 页面)