Voox 
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
  • 链接
    Github Twitter
  • Sign In
    Sign in Sign Up
  •   
  •   

从0到1手写一个RPC实现

计划从0到1手写一个RPC的实现我准备把具体实现和想法记录下来,对学习其他RPC框架有一个参考和比较。可能用到的技术栈: spring netty kryo, protobuf, thrift, hessian (序列化和反序列化) zookeeper, etcd, redis (服务注册和发现)

2020-10-08
rpc java

AQS

1 ReentrantLock1.1 ReentrantLock特性概览ReentrantLock意思为可重入锁,指的是一个线程能够对一个临界资源重复加锁。为了帮助大家更好地理解ReentrantLock的特性,我们先将ReentrantLock跟常用的Synchronized进行比较,其特性如下: 1234567891011121314151617181920212223242526272829

2020-10-08

vagrant创建管理虚拟机

安装前准备 Install the latest version of Vagrant. Install VirtualBox vargrant 使用在任意目录下创建 vagrantfile 文件 123456789101112131415161718192021222324252627Vagrant.configure("2") do |config| (1..3).e

2019-07-13
Linux
vagrant

junit5 annotation

junit5 annotation 详细 Annotation Description @Test Denotes that a method is a test method. Unlike JUnit 4’s @Test annotation, this annotation does not declare any attributes, since test extension

2019-04-10
Java
junit

update by partition

sql update top 5 123456789SELECT ROW_NUMBER() OVER (PARTITION BY col1, col2 ORDER BY x desc) AS r, t.id FROM some_table t where condition = 'xxx') Awhere A.r < 5;

2019-03-01
sql postgresql

Docker中exec和attach区别

docker attach 执行后会进入到 container 中docker exec 执行后,命令执行返回值并显示到宿主机中。

2018-08-08
docker

Docker alias

Docker alias and function1234567891011121314151617181920212223242526272829303132333435363738394041424344Get latest container IDalias dl="docker ps -l -q"Get container processalias dps="

2018-02-11
shell

Docker常用命令及使用

以下是在 centos 系统下执行 123456789101112131415161718192021sudo yum install -y yum-utils device-mapper-persistent-data lvm2sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docke

2017-11-20
docker shell

Java多线程之两阶段终结模式

错误思路stop():调用 Thred 的静态方法直接杀死线程System.exit(int):除了直接杀死线程,还会直接停止掉运行线程的应用程序为什么说这是错误的思路呢?比如 t1 调用了 t2 线程,此时需要终止掉 t2 线程,但是在 t2 线程体中还有被锁住的共享资源,此时还未释放锁,如果直接调用 stop()方法去终止线程,那么 t1 就无法得到共享资源,显然这两种方法存在一定的弊端! 两

2014-05-11
java
java
12

搜索

©2011-present voox.cc