自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

越今朝找越祈的博客

一个想努力提升的小菜菜的博客

  • 博客(28)
  • 收藏
  • 关注

原创 共识算法总结

转载博文https://blog.csdn.net/shangsongwww/article/details/89051835

2021-03-13 13:53:58 163 1

原创 TCP三次握手与应用层listen/accept问题

经过截包测试,TCP三次握手与listen/accept的调用完全隔离。在服务端使用listen之后,系统就会维护相应的队列,处理所有对这个监听socket的连接。accept则是将已完成的连接从队列中取出来。因此不管是否调用accept,来自client的tcp连接都是已经完成三次握手的。并且客户端已经可以向服务端发送消息。...

2021-02-01 13:57:35 516

原创 决策树

一.什么是决策树决策树 听名字就是如何做决策的树。比如生活中我们判断明天是否带雨伞。明天早上下雨,那么就带雨伞,早上不下雨就待定。明天中午下雨,那么就带伞,早上中午都不下雨就待定。明天晚上下雨,那么久带伞,早上中午晚上都不下雨就待定。我们画出如下的例子:图一.决策树例子这就是决策树的过程,现在我们在有几个特征与结果的数据情况下,如何去决定特征的重要性与如何使用决策树去判断结果这就是我们的目的。二.信息熵我们首先需要知道熵的概念,熵在化学中表示混乱度,在信息论中..

2021-01-29 15:48:07 319

原创 从NIO到Netty的个人见解

目录学习netty的起因一.NIO1.1基于 Stream 与基于 Buffer1.2阻塞和非阻塞1.3 Selector二.Buffer2.1 Buffer类型2.2 Buffer属性2.3 Buffer方法2.3.1 分配内存2.3.2 写入数据2.3.3 读取数据2.3.4 重置position2.3.5 mark()和reset()2.3.6 flip(), rewind() 和 clear()2.4 Buffer比较...

2021-01-10 15:51:14 164

原创 Kerberos认证流程详解

1111

2020-08-03 10:47:41 218

原创 B树与B+树(应付408的)

1111

2020-08-03 10:07:54 698 1

原创 os中同步锁的位置问题

今日看19年的408的哲学家吃饭问题,对同步锁的位置有些困惑,与生产消费者的锁的问题是刚好相反的。比如19年的题有n(n≥3)位哲学家围坐在一张圆桌边,每位哲学家交替地就餐和思考。在圆桌中心有m(m≥1)个碗,每两位哲学家之间有一根筷子。每位哲学家必须取到一个碗和两侧的筷子后,才能就餐,进餐完毕,将碗和筷子放回原位,并继续思考。为使尽可能多的哲学家同时就餐,且防止出现死锁现象,请使用信号量的P、V 操作[wait()、signal()操作]描述上述过程中的互斥与同步,并说明所用信号量及初值的

2020-07-31 15:54:20 647

原创 SSL连接过程的若干问题

在设置kafka 使用ssl 中如下的shell脚本#!/bin/bash#Step 1keytool -keystore server.keystore.jks -alias localhost -validity 365 -keyalg RSA -genkey#Step 2openssl req -new -x509 -keyout ca-key -out ca-cert -days 365keytool -keystore server.truststore.jks -alias ..

2020-07-30 10:47:07 300

转载 mybatis面试题总结大全

原文地址: mybatis面试题总结大全1、接口绑定有几种实现方式,分别是怎么实现的? 接口绑定有两种实现方式,一种是通过注解绑定,就是在接口的方法上面加上 @Select@Update等注解里面包含Sql语句来绑定, 另外一种就是通过xml里面写SQL来绑定, 在这种情况下,要指定xml映射文件里面的namespace必须为接口的全路径名.2、什么情况下用注解绑定,什么情...

2018-10-23 15:53:06 137

转载 乐观锁和悲观锁

乐观锁和悲观锁的区别乐观锁在关系数据库管理系统里,乐观并发控制(又名”乐观锁”,Optimistic Concurrency Control,缩写”OCC”)是一种并发控制的方法。它假设多用户并发的事务在处理时不会彼此互相影响,各事务能够在不产生锁的情况下处理各自影响的 那部分数据。在提交数据更新之前,每个事务会先检查在该事务读取数据后,有没有其他事务又修改了该数据。如果其他事务有更新的...

2018-10-22 15:15:22 102

转载 ACDI事物的四大特性

ACDI事物的四大特性原子性(Atomicity) 原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。 比如:转账转过去的加和转时候的减必须一次发生一致性(Consistency) 事务必须使数据库从一个一致性状态变换到另外一个一致性状态。 比如:转账时双方的总数在转账的时候保持一致隔离性(Isolation) 事务的隔离性是多个用户并发访问数据库时,数...

2018-10-22 15:01:50 448

转载 Java并发编程:线程池的使用

Java并发编程:线程池的使用  在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:  如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。  那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?  ...

2018-10-22 14:57:21 93

转载 类加载以及双亲委托机制

一.类的加载1:概述1:当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载-连接-初始化主要三步来实现这个类进行初始化.2:得到类加载器: Class#getClassLoader()3:类加载器(class loader)用来加载 Java 类到 Java 虚拟机中。一般来说,Java 虚拟机使用 Java 类的方式如下:Java 源程序(.java 文件)在经过 Jav...

2018-10-22 13:48:56 103

转载 HashMap与ConcurrentHashMap的线程安全性

版权声明:本文为博主原创文章,未经博主允许不得转载,该博客仅用于个人学习,欢迎大家互相交流讨论 https://blog.csdn.net/sbq63683210/article/details/51679790本文要解决的问题:最近无意中发现有很多对Map尤其是HashMap的线程安全性的话题讨论,在我的理解中,对HashMap的理解中也就知道它是线程不安全的,以及HashMap的底层算法...

2018-10-22 09:51:02 172

转载 HashMap实现原理及源码分析

HashMap实现原理及源码分析  哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashMap的实现原理进行讲解,然后会对JDK7的HashMap源码进行分析。目录...

2018-10-22 09:37:41 66

转载 MySQL常见面试题

MySQL常见面试题1. 主键 超键 候选键 外键主 键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。超 键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超键,即没有冗余...

2018-10-21 20:24:28 209

转载 B+/-Tree原理

转载地址 :  http://blog.csdn.net/tonyxf121/article/details/8393545#t4B+/-Tree原理B-Tree介绍B-Tree是一种多路搜索树(并不是二叉的):       1.定义任意非叶子结点最多只有M个儿子;且M>2;       2.根结点的儿子数为[2, M];       3.除根结点以外的非叶子结点的儿子数为...

2018-10-21 19:17:53 1055

转载 @Autowired注解、@Resource注解和@Service注解

什么是注解传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop、事物,这么做有两个缺点:1、如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大;如果按需求分开.xml文件,那么.xml文件又会非常多。总之这将导致配置文件的可读性与可维护性变得很低2、在开发中在.java文件和.xml文件之间不断切换,是一件麻烦的事,同时这种思维上的不连贯也会降低...

2018-10-21 13:48:21 624

转载 interrupted() 和 isInterrupted() 的区别

Thread 类中提供了两种方法用来判断线程的状态是不是停止的。就是我们今天的两位主人公 interrupted() 和 isInterrupted() 。interrupted()官方解释:测试当前线程是否已经中断,当前线程是指运行 this.interrupted() 方法的线程 。public class t12 {    public static void main(St...

2018-10-21 13:03:06 100

转载 设计模式--单例模式 改进型懒汉式

 这个解决方案的名字是Lazy initialization holder class。这个模式综合运用了java的类级内部类和多线程缺省同步锁的知识。先来补充一下基础知识,以下内容来源自清华大学出版社的《研磨设计模式》。先简单看看类级内部类相关的知识      *什么是类级内部类?      简单点说,类级内部类指的是,有static修饰的成员式内部类。如果没有static修...

2018-10-21 12:20:03 134

转载 synchronized的简介

由于同一进程的多个线程共享同一片存储空间,在带来方便的同时,也带来了访问冲突这个严重的问题。Java语言提供了专门机制以解决这种冲突,有效避免了同一个数据对象被多个线程同时访问。需要明确的几个问题:synchronized关键字可以作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。如果 再细的分类,synchronized可作用于instance变量、object ...

2018-10-21 12:14:25 106

转载 LeetCode 二叉树的遍历

二叉树

2018-08-24 13:35:31 219

转载 JAVA的Queue接口,阻塞与非阻塞队列,以及阻塞实现原理

Queue接口与List、Set同一级别,都是继承了Collection接口。 Queue的实现 阻塞的意思是如果队满加入或者对空输出都是需要需要等待 而非阻塞的并不用。 一.Queue的实现 1.没有实现阻塞接口的: (1)LinkedList : 实际是双向链表 实现了 Deque 接口最实用(也是一个最常用的Queue的实现型) (2)Priorit...

2018-08-24 13:35:24 3761

转载 对于二分查找的定位问题

二分方法定位老是忘前定一位或者往后定一位。 public static void binaryInsertSort(int[] arrays,int first,int last) { int temp,left,right,middle; for (int i=first+1;i<=last;i++) { ...

2018-08-24 13:35:18 220

原创 12种排序方法的算法

1.插入排序/*插入排序最好复杂度:O(n)最坏复杂度:O(n^2)平均复杂度:O(n^2)空间复杂度:O(1)稳定性 :稳定补充 :STL的sort算法和stdlib的qsort算法中, 都将插入排序作为快速排序的补充,用于少量元素的排序,通常为8个一下。*/public class Inserti...

2018-08-24 13:35:11 367

转载 Java优先队列PriorityQueue介绍并且实现以及比较器

PriorityQueue 是java中的优先队列。 其实现了Queue接口,不允许放入空值。 其通过小顶堆实现。 其几个方法的实现如下 1.offer()/add()public boolean offer(E e) { if (e == null)//不允许放入null元素 throw new NullPointerException(); mo...

2018-08-24 13:34:48 7826 2

转载 JAVA Map以及其内部接口Map.Entry

Map是java中的接口,Map.Entry是Map的一个内部接口。Map提供了一些常用方法,如keySet()、entrySet()等方法。keySet()方法返回值是Map中key值的集合;entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry。Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry 由以上可以得...

2018-08-24 13:34:37 227

转载 红黑树JAVA源码

/** * Java 语言: 红黑树 * * @author skywang * @date 2013/11/07 */public class RBTree<T extends Comparable<T>> { private RBTNode<T> mRoot; // 根结点 privat

2018-08-24 13:34:19 1034

空空如也

空空如也

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

TA关注的人

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