加载中
K8S初探

K8S是一个容器编排工具,其实也是管理应用的全生命周期的一个工具。从创建应用,应用的部署,应用提供服务,扩容收缩应用,应用更新都非常的方便。而且可以做到故障自愈,例如一个服务器挂了...

01/15 18:22
5
Git flow 分支管理规范

1. 概要 master分支(DevOps Permission) 常驻分支也是稳定分支,是生产环境中最新代码 由于灰度环境是模拟的生成环境,部署的也是master分支 发布完成后,对每个版本进行tag 不允许直接提交代...

数据库设计规范

一、数据库设计规范(设计之初,需要DBA介入) 规范前言: 1.保证数据库高可用:制定3重高可用(容灾)架构,主备架构、同城容灾、异地容灾(可以采用mha、pxc等高可用架构,注意数据可能丢失风...

docker

1.运行mysql镜像 docker run -d -p 127.0.0.1:3307:3307 --name mysql-3307 -v /Users/zhouhai/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root mysql:latest......

2018/08/30 22:35
11
docker常用命令

docker search mysql 搜索mysql镜像 docker pull mysql:5.7 安装Mysql5.7镜像 docker rmi mysql 删除镜像 docker ps 查看正在运行的容器 docker port id 快捷查看网络端口映射 docker start...

2018/08/30 22:35
5
SpringBoot使用hibernate validator

1.快速失败注解 @Bean public Validator validator(){ ValidatorFactory validatorFactory = Validation.byProvider( HibernateValidator.class ) .configure() .addProperty( "hibe......

OAuth初探

OAuth是一个关于授权(Authorization)的开放网络标准,在全世界得到广泛应用,目前版本是2.0。为了理解OAuth,比如有个云印通的网站,可以将用户存储在谷歌的照片冲印出来。用户为了使用该服...

2018/07/10 19:45
24
Java中的锁使用与实现

1.Lock接口 锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源。 在Lock出现之前,java程序是靠synchronized关键字实现锁功能的,而Java SE5之后,...

2018/06/21 19:17
12
线程安全的队列ConcurrentLinkedQueue

实现线程安全的队列有两种方式:一种是使用阻塞算法,另一种是使用非阻塞算法。 1.阻塞算法的队列可以使用锁的方式来实现。 2.非阻塞的实现方法则可以使用循环CAS的方式来实现。 ConcurrentLi...

2018/06/20 16:57
6
ConcurrentHashMap

ConcurrentHashMap是线程安全且高效的HashMap。HaspMap可能在并发执行put的导致死循环发生,resize导致形成环。 HashTable线程安全,但是效率低下。 ConsurrentHashMap通过分段锁可以提升效率...

2018/06/20 11:15
11
超时处理模式

在服务化或者微服务架构里,应用拆分成为多个职责单一的微服务,服务之间通过某种网络通信协议互相通信和交互。然而,由于网络通信不稳定,我们在设计系统时必须考虑对网络通信的容错,特被是...

2018/06/03 22:09
40
分布性一致协议

国际开放标准组织定义了DTS(分布式事务处理模型),模型中包含4种角色:应用程序,事务管理器,资源管理器和通信资源管理器。 事务管理器是统管全局的管理者,资源管理器,通信资源管理器是...

2018/06/01 21:04
20
一致性问题的模式和思路

一.酸碱平衡理论 ACID在英文中的意思是“酸”,BASE的意思是碱 1.ACID(酸) 关系型数据库天生用于解决具有复杂事务场景的问题,完全满足ACID的特性。 ACID指如下内容。 A: Atomicity原子性 ...

2018/06/01 13:32
18
volatile的应用

在并发编程中,volatile和synchronized都扮演着重要的角色,volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量的时...

2018/05/31 17:35
14
原子操作的实现

一、处理器的原子性 处理器使用基于对缓存加锁或者总线加锁的方式来实现多处理器之间的原子操作。首先处理器会自动保证基本的内存操作的原子性。处理器保证从系统内存中读取或者写入一个字节...

2018/05/30 19:14
19
synchronized的实现与应用

在并发编程中,synchronized一直是一个元老级的角色,可以保证方法或者代码块在运行时,同一时刻只有一个方法可以进入临界区,同时它还可以保证共享变量的内存可见性,很多人称之为重量级锁。...

2018/05/30 18:07
8
java静态代理与动态代理

代理模式是java常见的设计模式。其目的是为其他对象提供一个代理以控制对某个真实对象的访问。通过代理类这一中间层,有效控制对真实委托类的对象的直接访问,同时可以实现自定义的控制策略。...

2018/05/02 16:49
26
RabbitMQ实现消息总栈

RabbitMQ是实现高级消息队列协议(AMQP)的开源消息代理软件,也成为面向消息的中间件。RabbitMQ服务器是高性能、可伸缩而闻名的Erlang语言编写而成的,其集群和故障转移是构建在开放平台框架...

2018/04/25 17:27
42
消息代理

消息代理经常需要使用的消息代理的场景: 1.将消息路由到一个或多个目的地。 2.消息转化为其他的表现形式。 3.执行消息的聚集,消息的分解,并将结果发送到它们的目的地,然后重新组合相应返回...

2018/04/25 15:38
14
zipkin初探

Zipkin是一款开源的分布式实时系统追踪,其主要功能是聚集来个各个异构系统的实时监控数据,用来追踪微服务架构下的系统延时问题。应用系统需要进行instrument以向zipkin报告数据。Zipkin的用...

2017/12/06 20:08
37

没有更多内容

加载失败,请刷新页面

返回顶部
顶部