Future Code

个人博客

Spring 事务

Spring 事务 依赖 1234567891011121314151617181920212223242526272829<dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <ve......

docker部署redis-cluster集群

docker部署redis-cluster集群 主机环境 阿里云服务器 ECS ,2核4G,系统:Centos_7_05_64 Redis 5.0.0 以上 docker 社区版 version 18.09.0 安装docker 安装所需的软件包 123sudo yum install -y yum-utils \device-mapper-persistent-data \lv......

网络笔记

网络笔记 TCP 连接建立时为何握手三次? TCP 提供可靠交付的服务,为了保证信息的准确性,即获得同步序列号,在进行数据传输之前必须进行握手连接。 其中三次握手是为了尽可能次数少的完成连接工作的次数。 TCP 传输协议 停止等待协议 “停止等待”就是每发送完一个分组就停止发送,等待对方的确认。在收到确认后再发送下一个分组。 ① 无差错情况 ② 出现差错 ③ 确认丢失和确认迟到 ......

浅析内存屏障以及在java中的应用

内存屏障

浅析内存屏障以及在java中的应用 指令重排序 程序在运行时内存实际的访问顺序和程序代码编写的访问顺序不一定一致,这就是内存乱序访问。 内存乱序访问行为出现的理由是为了提升程序运行时的性能。这种内存乱序问题主要是由两种原因的: 编译器在编译时进行了编译优化,导致指令重排;在多cpu环境下,为了尽可能地避免处理器访问主内存的时间开销,处理器大多会利用缓存(cache)以提高性能。 在这种......

Java8之Lambda

Lambda Lambda:匿名函数,可以对一个接口进行非常简洁的实现,但是最关键的基本要求是: 函数式接口 + 接口中只能有一个要实现的抽象方法即没有加 default 修饰的方法; 允许把函数作为一个方法的参数(函数作为参数传递进方法中。 方法引用-方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。 与lambda联合使用 方法引用可以使语言的构......

Java8之Stream

Stream 流式讲解 见官网 一般操作 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888......

I/O模型

什么是IO 我们常说的IO,指的是文件的输入和输出,但是在操作系统层面是如何定义IO的呢?到底什么样的过程可以叫做是一次IO呢? 拿一次磁盘文件读取为例,我们要读取的文件是存储在磁盘上的,我们的目的是把它读取到内存中。可以把这个步骤简化成把数据从硬件(硬盘)中读取到用户空间中。 Java中,主要有三种IO模型,分别是阻塞IO(BIO)、非阻塞IO(NIO)和 异步IO(AIO)。 Java中......
I/O

Node

Node 关于JavaScript node js 不是因为js而产生的。 最开始选择的是Ruby 不太适合。 node 选择了 js。 node 运行环境 RETL,可以直接在命令行写代码。 Ndoe 是什么 是一个基于 Chrome v8 引擎的JavaScript的运行环境。 使用的是事件驱动、非阻塞式I/O的模型,轻量又高效,高并发性能好;因为一般I/O 输入输出流 都是阻塞式......

计算机原理之原码反码补码

原码 原码:最高位为符号位,其余各位为数值本身的绝对值。 正数的原码是其绝对值。 负数的原码即是其绝对值的原码再将其第一位变为1。 反码 正数:反码与原码相同。 负数:符号位为1,其余位对原码取反。 补码 计算机内存存储整数都是采用整数的补码形式表示,最高位直接表示是 符号位:0 表示正数 1表示负数。 比如Java的byte类型存储(8位):最大值2^7-1 :0111 1111; 最小值......

类的加载机制

类加载机制 类加载的生命周期 加载:把文件字节流转换虚拟机中的变量 验证:验证是否符合虚拟机的要求 准备:类变量(为static修饰的变量)分配内存,设置初始值,是虚拟机的初始值标准,例如int a=0; 解析:常量池中的引用换为实际值。 初始化:执行Java代码,把static有关的代码块执行一遍。 初始化时机: 创建类的实例 访问某个类或接口的静态变量,或者对该静态变量赋值 调......
Jvm