自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 [面试]操作系统

o o操作系统什么是操作系统用户态和内核态系统调用进程线程区别线程状态进程间通信方式线程间的同步方式互斥量(Mutex)信号量(Semphares)事件(Event)操作系统进程调度算法先到先服务(FCFS)调度算法短作业优先(SJF)的调度算法时间片轮转调度算法多级反馈队列调度算法优先级调度操作系统的内存管理内存管理几种内存管理机制块式管理页式管理段式管理段页式管理快表和多级页表快表实现快表实现地址转换多级页表分页机制和分段机制的共同点和区别共同点区别虚拟内存机制虚拟地址和物理地址CPU寻址虚拟地址空间虚

2020-05-29 14:49:38 145

原创 [面试]MySQL

MySQL的索引有了解吗?索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息,可以加快查询速度。InnoDB 存储引擎的索引模型底层实现数据结构为B+树,所有数据都是存储在 B+ 树为什么底层数据结构使用B+树,而不是B树?B+树是B树的变种,B+树的非叶子节点只用来保存索引,不存储数据,所有的数据都保存在叶子节点(B树非叶也会保存数据)使得B+树的查询效率更加稳定,均为从根节点到叶子节点的路径。B+树的内部结点并没有指向关键字具体信息的指针,其内部结点相

2020-05-29 07:51:47 144

原创 [五种IO模型]

同步IO阻塞IO模型同步IO操作定义为导致进程阻塞直到IO完成的操作IO过程主要分两个阶段:数据准备阶段内核空间复制回用户进程缓冲区空间非阻塞IO模型半包问题:调用IO函数后直接返回,但需要不断轮询IO是否完成半包问题解决:通过一个buffer缓存所有读进来的消息异步IO对于非阻塞IO而言,在调用完IO函数后,有数据后再继续IO操作,此过程中也可进行其他操作,此即为异步IO多路复用IO多路复用即为select/poll/epoll,单个procee可以处理多个

2020-05-28 00:29:00 91

原创 [Java高并发]线程池

线程池 GO!Java线程池线程池的优势线程池七大参数拒绝策略线程池的排队策略常见的线程池类型:常见的阻塞队列:CountDownLatch(线程计数器)CyclicBarrier(回环栅栏-等待至 barrier 状态再全部同时执行)CyclicBarrier的内部实现Semaphore(信号量-控制同时访问的线程个数)CyclicBarrier,CountdownLatch与Semaphore线程之间共享数据一二ThreadLocalAtmoici++线程不安全CAS机制优点缺点原子包 java.uti

2020-05-27 21:56:14 1393

原创 [Java]JVM

JVM中的内存是怎么划分的JVM中的内存主要划分为5个区域,即方法区,堆内存,程序计数器,虚拟机栈以及本地方法栈方法区:方法区是一个线程之间共享的区域,常量,静态变量以及JIT编译后的代码都在方法区。主要用于存储已被虚拟机加载的类信息,也可以称为==“永久代”==,垃圾回收效果一般,通过-XX:MaxPermSize控制上限堆内存:堆内存是垃圾回收的主要场所,也是线程之间共享的区域,主要用来存储创建的对象实例,通过-Xmx==和-Xms 可以控制大小虚拟机栈(栈内存):栈内存中主要保存局

2020-05-27 10:37:06 1707

原创 [JAVA]基础(三)

文章目录JAVA异常分类处理ErrorExceptionRuntimeExceptionCheckedException异常处理异常处理方式Throw 和 throws 的区别:JAVA内部类JAVA泛型JAVA异常分类处理Throwable 是 Java 语言中所有错误或异常的超类ErrorExceptionRuntimeException运行时异常 RuntimeExceptionCheckedException编译时异常,Java编译器会强制程序去捕捉此异常(要求程序员把可能异常的代码

2020-05-27 10:36:38 447

原创 [Java]锁

锁 GO!乐观锁悲观锁自旋锁原理自旋锁优缺点优点缺点自旋锁时间阈值(1.6 引入了适应性自旋锁)自旋锁的开启Synchronized 同步锁Synchronized作用范围Synchronized核心组件Synchronized实现ReentrantLockLock接口主要方法tryLock 和 lock 和 lockInterruptiblyReentrantLock 与 synchronized非公平锁公平锁可重入锁(递归锁)读写锁独占锁共享锁独占锁共享锁锁状态重量级锁(Mutex Lock)轻量级锁偏

2020-05-26 15:39:40 1784

原创 [Java高并发]进程线程

高并发GO!进程线程进程与线程的区别线程上下文切换比进程上下文切换快线程可以拥有独属于自己的资源吗?进程之间常见的通信方式多线程与单线程的关系线程的状态终止线程 4 种方式正常运行结束使用退出标志退出线程Interrupt 方法结束线程线程处于阻塞状态线程未处于阻塞状态stop ()sleep与waitstart与run线程活性故障线程死锁**死锁产生四个必要条件**:**解决线程死锁**锁死**线程锁死两种情况****信号丢失锁死****嵌套监视器锁死**活锁线程饥饿:JAVA线程实现/创建方式继承 Th

2020-05-26 11:47:30 143

原创 [面试]Redis

redisredis(Remote Dictionary Server远程字典服务)是一款高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库因为数据都在内存中,所以运行速度快redis支持丰富的数据类型并且支持事务,事务中的所有命令会被序列化、按顺序执行,在执行的过程中不会被其他客户端发送来的命令打断redis相比memcached优势memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型redis的速度比memc

2020-05-25 23:40:02 84

原创 [面试]计算机网络

网络OSI七层协议模型TCP/IP协议IP协议:ARP协议(地址解析协议):路由协议TCP三次握手过程客户端状态变化为什么需要三次握手?两次可以吗服务端状态变化TCP四次挥手过程客户端经状态变化服务端经历状态变化为什么断开连接需要四次四次挥手主动方为什么需要等待2MSL滑动窗口TCP和UDP协议的区别UDP协议的应用:一个网络数据包包括哪些TCP协议中的数据包分片与重组发送方:接收方:TCP协议的拥塞避免算法HTTP和HTTPS的区别SSL协议:HTTP请求中的Get和Post方法区别cookie和sess

2020-05-25 21:25:37 1134

原创 compare()与compareTo()

compareTo()是java.lang.Comparable接口中的方法,当需要对某个类的对象进行排序时,该类需要实现Comparable接口的,必须重写public int compare()方法该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较,compareTO底层是compare()方法强行将实现它的每一个类的对象进行整体排序(称为该类的自然排序),实现此接口的对象列表和数组可以用Collections.sort(),和Arrays.sort()进行自动排序

2020-05-25 15:33:36 305

原创 匿名内部类与Lambda表达式

匿名内部类内部类分为:静态内部类,非静态内部类匿名内部类是非静态内部类的一种特殊情况,匿名内部类没有类名,没有构造函数,不能创建对象原因完全可以通过实现接口或者继承抽象类的方式来实现而不用创建匿名内部类使用匿名内部类的优点是可以少写代码,而且代码更加简洁匿名内部类定义new 实现接口(){ //匿名内部类类体部分}new 父类构造器(实参列表){ //匿名内部类类体部分}对于实现接口,由于接口是没有构造函数的,注意这里一定是空参数。第二种是调用父

2020-05-25 13:03:56 340

原创 [堆]

堆定义(这里只讲二叉堆)堆实为二叉树的一种,分为最小堆和最大堆,具有任意节点小于/大于它的所有后裔,最小/大元在堆的根上。堆总是一棵完全二叉树将根节点最大的堆叫做大根堆,根节点最小的堆叫做小根堆堆的相关操作:建立插入删除应用堆排序优先队列找出第k大元素合并容器元素Java实现小根堆PriorityQueue(实现Queue接口)默认实现为小根堆PriorityQueue minHeap = new PriorityQueue(); //小顶堆,默认容量为

2020-05-25 11:50:27 90

原创 Nginx

[t]什么是Nginx?Nginx是一个 轻量级/高性能的反向代理Web服务器,他实现非常高效的反向代理、负载平衡,他可以处理2-3万并发连接数,官方监测能支持5万并发,现在中国使用nginx网站用户有很多,例如:新浪、网易、 腾讯等。为什么要用Nginx?跨平台、配置简单、方向代理、高并发连接:处理2-3万并发连接数,官方监测能支持5万并发,内存消耗小:开启10个nginx才占150M内存 ,nginx处理静态文件好,耗费内存少,而且Nginx内置的健康检查功能:如果有一个服务器宕机,会做一个健

2020-05-25 07:31:03 616

原创 负载均衡

文章目录负载均衡四层负载均衡目的地址和端口的交换四层负载均衡的软件七层负载均衡内容交换优点七层负载均衡的软件负载均衡算法/策略轮循均衡(RoundRobin)权重轮循均衡(WeightedRoundRobin)随机均衡(Random)负载均衡建立在现有网络结构之上,扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性四层负载均衡目的地址和端口的交换通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择 的内部服务器TCP为例:负载均

2020-05-24 22:17:58 433

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除