world6的博客

作为后期carry,前期先慢慢补兵发育

秒杀系统的设计五大原则

最近订阅了 极客时间 | 如何设计一个秒杀系统,这里是每章的学习笔记。 链接:如何设计一个秒杀系统 架构原则:4要 1 不要! 1、数据要尽量少。 2、请求数要尽量少。 3、请求路径要短。 4、依赖要尽量少。 5、不要有单点。   数据要尽量少: 1. 是指用户请求的数据能少...

2018-11-21 21:32:53

阅读数 112

评论数 0

mysql uftb8mb4 储存 emoji 表情失败

记一次生产事故踩坑。血淋淋的惨痛教训 众所周知 mysql 存 emoji 表情要用 utf8mb4 这个字符集 OK 没问题,设置 nick_name 为 utf8mb4 varchar(50) 测试的结果:    emoji 表情储存成功 没有问题  完全oj8k  发生产!   ...

2018-10-22 15:06:57

阅读数 185

评论数 0

Java 编码代码规范

1、HttpServletRequest 等 常用参数 要放到 参数列表的最前面,自定义的参数实体靠后放 2、变量名要符合规范,通俗易懂,例如:记录日志的字符串 就叫 logMessage,不要叫或者加什么str 了。 3、凡是出现数字或者字符串的地方,考虑这些数字和字符串能否放到一个 接口...

2018-07-24 17:41:21

阅读数 107

评论数 0

前后端配合小结

后台返回的 json 数据 字段最好只有三种, status , message, data. 具体情况如下: 如果请求的结果是 success的,不论调用的接口返回何种报错 都是 success ,结果的报错 直接透传到 前端,让前端的同学去处理,后端不要做任何处理。此时返回 status、...

2018-07-24 17:25:11

阅读数 284

评论数 0

分布式环境下的解决方案——分布式锁

分布式锁,也就是在多进程情况下的锁。   多进程的锁 跟 多线程的 锁 有什么相同的地方呢?   需要有存储锁的空间,并且锁的空间是可以访问到的。 锁需要被唯一标识。 锁要有至少两种状态。   储存空间: 锁是一个抽象的概念,锁的实现,需要依存于一个可以存储锁的空间。在多线程中是内...

2018-07-23 21:56:23

阅读数 226

评论数 0

深入理解 CAS 及 ABA问题

CAS,Compare And Swap,即比较并交换。 CAS是Atomic 包的核心,更是整个J.U.C 包的 基石。   本文 将通过AtomicInteger这个类,来分析是如何通过CAS来保证 Atomic的原子性的。 直接进入 AtomicInteger 这个类,可以看到 ...

2018-07-23 21:56:16

阅读数 312

评论数 0

JUC之 底层核心AQS

AQS,AbstractQueuedSynchronizer,即队列同步器。它是构建锁或者其他同步组件的基础框架(如ReentrantLock、ReentrantReadWriteLock、Semaphore等)   AQS使用一个int类型的成员变量state来表示同步状态,当state&a...

2018-07-23 21:56:11

阅读数 143

评论数 0

ReentrantLock 的实现原理

AQS的功能可以分为独占和共享,ReentrantLock实现了独占功能。 ReentrantLock实现了Lock接口,加锁和解锁都需要显式写出,注意一定要在适当时候unlock。     ReentrantLock对比synchronized 和synchronized相比,Reen...

2018-07-23 21:56:03

阅读数 548

评论数 0

redis 实现分布式锁的演进

在分布式系统中,常常会遇到一些要使用分布式锁的业务场景。 比如说:每分钟要执行关闭未支付订单的定时任务,在集群的环境下,如果不做处理,每台服务器都会去执行这个定时任务,显然每个时间段的定时任务只需要执行一次,并不需要每台服务器都去执行,使用分布式锁来控制让单台服务器来执行这个定时任务 势在必行 ...

2018-05-21 11:21:41

阅读数 231

评论数 0

集群 跟 分片 有什么区别

我们在谈到  服务器多实例的时候,常常会说到   Tomcat 集群  ;但为什么  谈到  多实例 redis 的时候 没有说 redis 集群 呢?是因为 类似Tomcat 这样的 集群  强调的是  机器提供的 服务 而 redis  这样的 “集群” 强调的是  数据 ,(因为redis ...

2018-05-17 20:00:19

阅读数 1043

评论数 0

zookeeper的zab协议工作原理之 崩溃恢复模式

上篇 zookeeper的zab协议工作原理之 原子广播 介绍了 zookeeper 广播的原理。下篇 来详细的讲解 崩溃恢复模式 的原理一、什么情况下zab协议会进入崩溃恢复模式?   1、当服务器启动时    2、当leader 服务器出现网络中断,崩溃或者重启的情况    3、当集群中已经不...

2018-04-09 22:02:52

阅读数 965

评论数 0

zookeeper的zab协议工作原理之原子广播

说zab协议之前必须提一下 paxos 协议 paxos协议主要就是如何保证在分布式环网络环境下,各个服务器如何达成一致最终保证数据的一致性问题ZAB协议,基于paxos协议的一个改进。zab协议为分布式协调服务zookeeper专门设计的一种支持崩溃恢复的原子广播协议zookeeper并没有完全...

2018-04-09 10:41:57

阅读数 339

评论数 0

zookeeper的选举机制

一、Zookeeper选举机制Zookeeper虽然在配置文件中并没有指定master和slave但是,zookeeper工作时,会选出一个节点为leader,其他则为follower下面来聊聊是如何选出leader的。leader选举的算法有三种:leaderElection/AuthFastL...

2018-04-08 21:05:57

阅读数 201

评论数 0

如何用zookeeper 实现分布式锁

一、分布式锁介绍        分布式锁主要用于在分布式环境中保护跨进程、跨主机、跨网络的共享资源实现互斥访问,以达到保证数据的一致性。二、分布式锁设计原理图1、基于排它锁:让所有的客户端(A B C)都在指定的Locks节点下 创建一个同名的节点lock,利用ZK 节点名称的唯一性来做限制, 谁...

2018-04-08 20:48:59

阅读数 153

评论数 0

详解zookeeper的配置文件

zoo.cfg配置文件分析tickTime=2000  zookeeper中最小的时间单位长度 (ms) initLimit=10  follower节点启动后与leader节点完成数据同步的时间 syncLimit=5 leader节点和follower节点进行心跳检测的最大延时时间 dataD...

2018-03-29 10:16:55

阅读数 676

评论数 0

动物园园长 zookeeper

zookeeper是一个开源的分布式协调服务中间件zookeeper能做什么?数据的发布/订阅(配置中心:disconf) 、 负载均衡(dubbo利用了zookeeper机制实现负载均衡) 、命名服务、 master选举(kafka、hadoop、hbase)、分布式队列、分布式锁zookeep...

2018-03-27 11:54:51

阅读数 369

评论数 0

分布式相关基础理论

分布式环境下面临的问题: 网络通信:网络本身的不可靠性,因此会涉及到一些网络通信问题 三态:分布式架构里面,除了成功、失败、超时 分布式事务 :ACID特性 中心化和去中心化:冷备或者热备 经典的CAP/BASE理论 CAP C(一致性 Consistency): 所有节点上的数据,...

2018-03-27 11:42:54

阅读数 447

评论数 0

什么是Restful

Restful 一直都在听,一直都在用,但就是搞不懂什么是restful,因为说不出个所以然出来。 为什么说一直都在用呢,我们随便打开一个大型网站的网址,基本都是 restful 风格的 。比如:http://www.imooc.com/course/programdetail/pid/31 ...

2018-03-22 11:45:02

阅读数 140

评论数 0

HTTP 通信协议

首先我们看看URL 跟 URI 有什么区别。 URI 指的是 服务器 资源的名字。 来看看什么是URI https://www.zhihu.com/question/44323871/answer/347628315 这个地址是知乎上的一个问题, /question/44323871/...

2018-03-22 11:33:53

阅读数 149

评论数 0

为什么会要序列化

对 java对象的传输 是通过网络的 。然后网络都是通过字节传输的 所以需要用序列化的方式 将java对象转化为 字节,然后网络那头的接受端,拿到收到的字节 再反序列化出来一个对象,用来保证 java的对象能够跨进程传输。 总结了一下 序列化的几个要点: 1.在java中,只要一个类实现了ja...

2018-03-21 21:19:36

阅读数 323

评论数 0

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