摘要:
参考文档 [1]: 分布式系统中的幂等性 [2]: 分布式服务接口的幂等性如何设计 [3]: 分布式系统中接口的幂等性 [4]: 高并发核心技术 幂等性 与 分布式锁 阅读全文
摘要:
概念 Registry就相当于仓库,用来存放用户的镜像。分为公有和私有。 容器相比于虚拟机有什么优点,容器和虚拟机都是运行在Host OS上的,虚拟机还需要运行在Guest OS,而Docker不用,只需要app和依赖的库就好,相对而言占用空间更少。 基本组成 Docker的客户端(client)、 阅读全文
摘要:
一、Http状态码 状态码分类 100 ~ 199 信息提示 200 ~ 299 成功 300 ~ 399 重定向 400 ~ 499 客户端错误 500 ~ 599 服务端错误 常见状态码 200 OK 401 Unauthorized 404 Not Found 500 Internal Ser 阅读全文
摘要:
一、介绍 This class support asynchronous and synchronous HTTP requests. AsyncHttpClient 支持同步、异步Http请求。 二、简单使用 引入依赖 执行同步请求 执行异步请求 配置 参考文档 《AsyncHttpClient 阅读全文
摘要:
一、数据结构 string Redis字符串是可修改字符串,在内存中以字节数组形式存在。 下面是string在源码中的定义,SDS(Simple Dynamic String) Redis规定字符串的长度不超过512M。 Redis字符串的两种存储方式: 长度特别短,使用emb形式存储 长度超过44 阅读全文
摘要:
Spring Bean管理 Spring作为一个容器,其主要作用是管理Bean对象。Bean对象会放在由HashMap构成的缓存中。 当需要注入对象时,通过对象的名称,从HashMap中找到获取到对应的对象。 获取Bean对象的核心的流程是。AbstractBeanFactory.getBean() 阅读全文
摘要:
一、 产生并发Bug的源头 可见性 缓存导致的可见性问题 原子性 线程切换带来的原子性问题 有序性 编译优化带来的有序性问题 上面讲到了 "volatile 与可见性" ,本章再主要讲下原子性、有序性与Happens Before规则。 二、线程切换带来的原子性问题 count += 1 这一句高级 阅读全文
摘要:
一、CountDownLatch 文档描述 A synchronization aid that allows one or more threads to wait until a set of operations being performed in other threads complet 阅读全文
摘要:
一、概念 利用锁机制实现线程同步,synchronized关键字的底层交由了JVM通过C++来实现 Java中的锁有两大特性: 互斥性 同一时间,只允许一个线程持有某个对象锁。 可见性 锁释放前,线程对变量的修改,后面获得锁的线程可见。 可见性 JMM关于synchronized的两条规定: 1. 阅读全文
摘要:
背景和作用 在同步组件的实现中,AQS是核心部分,同步组件的实现者通过使用AQS提供的模板方法实现同步组件语义,AQS则实现了对同步状态的管理,以及对阻塞线程进行排队,等待通知等等一些底层的实现处理。AQS的核心也包括了这些方面:同步队列,独占式锁的获取和释放,共享锁的获取和释放以及可中断锁,超时等 阅读全文