首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
xzzz2020
滴滴出行_网约车_后端开发
获赞
382
粉丝
108
关注
3
看过 TA
83
男
郑州航空工业管理学院
2021
Java
IP属地:北京
秋招加油!!
私信
关注
拉黑
举报
举报
确定要拉黑xzzz2020吗?
发布(403)
评论
刷题
xzzz2020
关注TA,不错过内容更新
关注
2020-08-14 12:31
滴滴出行_网约车_后端开发
【详解】MySQL架构
目录 1. MySQL逻辑架构 2. 并发控制 3. 事务 4. 多版本并发控制(MVCC) 5. 存储引擎 5.1 InnoDB 5.2 MyISAM 5.3 比较 5.4 引擎的选择 1. MySQL逻辑架构 线程处理 每个服务的的连接都会有一个线程,对数据库的查询只会在这个线程中进行 MySQL5.5之后支持线程池。可以利用少量的线程来服务大量的服务连接 优化和执行 MySQL会解析查询,并在内部创建(解析树),对其进行优化。包括重写查询、决定表的读取顺序、以及选择合适的索引等 可以通...
0
点赞
评论
收藏
分享
2020-08-14 12:31
已编辑
滴滴出行_网约车_后端开发
【详解】 MySQL创建高性能的索引
目录 1. 索引基础 索引失效的问题 2. 索引的优点 3. 高性能索引策略 3.1 独立的列 3.2 前序索引和索引选择性 3.3 多列索引 3.4 索引列的顺序 3.5 覆盖索引 3.6 聚簇索引 3.7 按照主键顺序插入数据 3.8 覆盖索引 3.9 避免建立重复索引 3.10 索引和锁 4. 索引的使用条件 5. Mysql索引ICP 6. 总结 1. 索引基础 索引的类型 B+树和全文索引详情请见:https://blog.csdn.net/qq_...
0
点赞
评论
收藏
分享
2020-08-14 12:30
已编辑
滴滴出行_网约车_后端开发
【详解】MySQL查询性能优化
目录 1. 为什么查询会慢 2.慢查询基础:优化数据访问 2.1 是否向数据库请求了不需要的数据 2.2 MySQL是否在扫描额外的记录 3. 重构查询的方式 3.1 切分大查询 3.2 分解关联查询 4. 查询优化器 4.1 查询优化器的工作 4.2 局限性 5. 总结 1. 为什么查询会慢 如果把查询当作一个任务,那么它是由一系列子任务完成的 如果要优化查询,要么减少子任务,要么减少子任务的执行次数,让子任务更快 使用 Explain 进行分析 Explain...
0
点赞
评论
收藏
分享
2020-08-14 12:30
已编辑
滴滴出行_网约车_后端开发
【详解】MySQL高级特性
目录 1. 分区表 1.1 原理 1.2 分区表类型 1.3 分区的作用 1.4 分区的问题 1.5 水平切分 1.6 垂直切分 2. 查询缓存 1. 分区表 分区表是一个独立的表,由多个子表组成 分区表是对底层表的封装,索引也只是每个分区的索引而不是全局索引 作用 表特别大的时候,其中只有一部分是热点数据,其他的都是历史数据 分区表的数据更容易维护,可以单独对一个分区执行一些操作,如删除、优化、检查、修复、备份等。 分区表分布在不同物理设备上,从而高效的利用多个硬件设备 <ma...
0
点赞
评论
收藏
分享
2020-08-14 12:29
已编辑
滴滴出行_网约车_后端开发
【详解】Java内存区域与内存溢出异常
运行时的数据区域 程序计数器和虚拟机栈 参考:https://blog.csdn.net/qq_43040688/article/details/104970081 本地方法栈和堆 参考:https://blog.csdn.net/qq_43040688/article/details/104972811 方法区 参考:https://blog.csdn.net/qq_43040688/article/details/104982648 直接内存 参考:https://blog.csdn.net/qq_43040688/article/d...
0
点赞
评论
收藏
分享
2020-08-14 12:29
已编辑
滴滴出行_网约车_后端开发
【详解】JVM之类的加载机制
目录 1. 类加载的生命周期 2. 类的加载过程 2.1 加载 2.2 验证 2.3 准备 2.4 解析 2.5 初始化 3. 类初始化时机 3.1 主动引用 3.2 被动引用 4. 类加载器 4.1 类加载器分类 4.2 双亲委派模型 4.3 自定义类加载器实现 1. 类加载的生命周期 生命周期如下所示 其中加载、验证、准备、初始化是确定的,但是解析可以在初始化之后,为了支持Java的动态绑定机制。 总得分为加载和连接阶段(验证、准备、解析、初始化) ...
0
点赞
评论
收藏
分享
2020-08-14 12:29
已编辑
滴滴出行_网约车_后端开发
【详解】JVM虚拟机字节码执行引擎
目录 1. 运行时的栈帧结构 1.1 局部变量表 1.2 操作数栈 1.3 动态连接 1.4 方法返回地址 1. 运行时的栈帧结构 栈帧:用于支持虚拟机进行方法调用和方法执行的数据结构,存储了方法的局部变量表、操作数栈、动态链接和方法返回地址。 每个方法调用到完成对应的栈帧的入栈和出栈。 可能很多的方***同时处于执行状态,只用栈顶的才是有效的,称为当前栈 1.1 局部变量表 是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量 基本单位是slot 存放的类型有:32位的boolen、byt...
0
点赞
评论
收藏
分享
2020-08-14 12:28
已编辑
滴滴出行_网约车_后端开发
【详解】高并发场景下分库分表的高频面试题
目录 为什么要分库分表(设计高并发系统的时候,数据库层面应该如何设计)? 为什么要分库 为什么要分表 具体如何对数据库进行垂直拆分或水平拆分? 水平拆分的概念 垂直拆分的概念 水平拆分(分库)和垂直拆分(分表)的场景 分库分表的两个方案 为什么要分库分表(设计高并发系统的时候,数据库层面应该如何设计)? 首先要清楚,分库和分表是两回事,是两个独立的概念。分库和分表都是为了防止数据库服务因为同一时间的访问量(增删查改)过大导致宕机而设计的一种应对策略。 为什么要分库 按一般的经验来说,一个单库最多支持...
0
点赞
评论
收藏
分享
2020-08-14 12:28
滴滴出行_网约车_后端开发
【源码分析】Java多线程Thread构造函数
目录 一、 基础知识点回顾 二、银行排队叫号系统 版本一 版本二 三、策略者模式在Thread和Runnable中的应用分析 四、Thread的构造函数 默认构造Thread()源码分析 构造函数Thread(Runnable target) 构造函数Thread(String name) 构造函数Thread(Runnable target , String name) 构造函数Thread(ThreadGroup group, Runnable target, String...
0
点赞
评论
收藏
分享
2020-08-14 12:27
滴滴出行_网约车_后端开发
【详解】Java多线程之Thread的API
目录 一、守护线程 二、join方法 三、interrupt() 四、如何关闭线程 优雅的方法 1. 通过一个布尔值控制 2.判断是否打断 强制的方法 一、守护线程 官方API解释 The Java Virtual Machine exits when the only threads running are all daemon threads. 当主线程死亡后,守护线程会跟着死亡 可以帮助做一些辅助性的东西,如“心跳检测” 设置守护线程:public final void s...
0
点赞
评论
收藏
分享
2020-08-14 12:27
已编辑
滴滴出行_网约车_后端开发
【详解】Java多线程之认识“锁”
this锁(对象锁) 同步方法默认使用的this锁 public class SynchronizedThis { public static void main(String[] args) { ThisLock thisLock = new ThisLock(); new Thread("T1"){ @Override public void run() { thisLock.m1(); } }....
0
点赞
评论
收藏
分享
2020-08-14 12:27
滴滴出行_网约车_后端开发
【详解】Java多线程之线程间的通讯
案例一:消费者生产者模型(notify,wait) public class ProduceConsumerV1 { private final Object LOCK = new Object(); private int i = 0;//资源 private boolean isProducted = false;//是否生产 public void consumer(){ synchronized (LOCK){ if(isProducted){//已生产 System.out....
0
点赞
评论
收藏
分享
2020-08-14 12:26
已编辑
滴滴出行_网约车_后端开发
Java---LeetCode.23---合并K个排序链表
题目 合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 整体时间复杂度为O(N*log(k)), k为链表个数,N为链表数组中节点总个数。 整体思路为: 合并数组中第k个链表到第1个链表,合并数组中第k-1个链表到第2个链表,依次这样操作… 一轮合并之后,新链表分布在数组的 第1 到 第(k+1)/2个链表中,继续1这样的合并直到新链表只在数组第一个位置。 返回数组第一个元素,即合并之后的链表。 题解 class Solution { public ListNode mergeKLists(ListNode[] lists)...
0
点赞
评论
收藏
分享
2020-08-14 12:26
滴滴出行_网约车_后端开发
【详解】Java多线程之自定义Boolean锁&捕获线程中的异常
目录 一、 自定义Boolean锁 二、 捕获线程中的异常 一、 自定义Boolean锁 需求: 设置一个锁,让只有一个线程可以工作,其他的线程阻塞 可以查看都有哪些线程阻塞 只用加锁的线程才可以释放锁,其他线程不允许修改 先定义一个接口,定义锁的规范 public interface Lock { void lock() throws InterruptedException; void unlock(); Collection<Thread> getBlockedThread(); int...
0
点赞
评论
收藏
分享
2020-08-14 12:26
已编辑
滴滴出行_网约车_后端开发
【详解】Java多线程之线程组
线程组( ThreadGroup) JDK1.8 介绍 A thread group represents a set of threads. In addition, a thread group can also include other thread groups. The thread groups form a tree in which every thread group except the initial thread group has a parent. A thread is allowed to access information about its o...
0
点赞
评论
收藏
分享
1
10
11
12
13
14
27
关注他的用户也关注了:
牛客网
牛客企业服务