![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试
苍白的咏叹调
寻找一朵相似的花。。。
展开
-
后台开发人员面试内容——操作系统(一)
操作系统并发编程的3个基本概念1.原子性:即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行2.可见性:指当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看得到修改的值3.有序性:即程序执行的顺序按照代码的先后顺序执行。 同步和异步1.同步就是一个任务的完成需要依赖另外一个任务时,只有等待被依赖的任务完成后...原创 2019-02-27 14:08:18 · 629 阅读 · 0 评论 -
后台开发人员面试内容——数据库(二)
数据库锁分类从数据库系统角度分为三种:排他锁、共享锁、更新锁。从程序员角度分为两种:一种是悲观锁,一种乐观锁。1.乐观锁和悲观锁1).乐观锁:每次不加锁,假设没有冲突去完成某项操作,如果因为冲突失败就重试,直到成功为止。就是当去做某个修改或其他操作的时候它认为不会有其他线程来做同样的操作(竞争),这是一种乐观的态度,通常是基于CAS 原子指令来实现的。CAS 通常不会将线程...原创 2019-03-30 10:47:00 · 397 阅读 · 0 评论 -
后台开发人员面试内容——Redis非关系数据库(三)
主要介绍:Redis概念,特点,数据存储类型,持久化方式及其优缺点,通讯协议,五种架构模式,缓存穿透、缓存雪崩、缓存并发及其的解决办法关系数据库:关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织优点:1、易于维护:都是使用表结构,格式一致;2、使用方便:SQL语言通用,可用于复杂查询;3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的...原创 2019-05-16 10:54:46 · 345 阅读 · 0 评论 -
后台开发人员面试内容——JVM虚拟机(四)
一、Java类加载机制类从被加载到虚拟机内存中开始,到卸载出内存,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initiallization)、使用(Using)和卸载(Unloading)这7个阶段。其中验证、准备、解析3个部分统称为连接(Linking),这七个阶段的发生顺序如下图...原创 2019-07-16 17:22:53 · 111 阅读 · 0 评论 -
后台开发人员面试内容——计算机网络(五)
计算机网络一、OSI七层网络协议:应用层——表示层——会话层——传输层——网络层——数据链路层——物理层五层体系机构:应用层——传输层(TCP报文、UDP数据包)——网络层(IP数据报或分组)——数据链路层(帧)——物理层(比特流)二、TCP和UDP的区别?1.TCP是面向连接的,UDP面向无连接2.TCP是可靠的连接,保证数据的正确性;UDP可能丢包3.TC...原创 2019-07-16 17:27:09 · 346 阅读 · 0 评论 -
CAS乐观锁原理
1.乐观锁介绍程序完成并发操作时,访问数据时每次不加锁,假设没有冲突去完成某项操作,如果因为冲突失败就重试,直到成功为止。就是当去做某个修改或其他操作的时候它认为不会有其他线程来做同样的操作(竞争),这是一种乐观的态度,通常是基于CAS 原子指令来实现的。2.CAS介绍当多个线程尝试使用CAS同时更新同一个变量时,只有其中一个线程能更新变量的值,而其它线程都失败,失败的线程并不会被挂起...原创 2019-07-29 10:22:03 · 2760 阅读 · 0 评论