自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 分析countdownlatch

分析countdownlatch A synchronization aid that allows one or more threads to wait until a set of operations being performed in other threads completes. A CountDownLatch is initialized with a given co

2017-09-27 15:19:27 191

原创 分析下reentrantlock

分析下reentrantlockreentrant 英文:可重入的,就加锁之后可以再加锁,很明显的道理,既然抢到锁了,则么可以再抢呢,这个java的实现就可以欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和

2017-09-27 12:08:52 258

转载 排序

常用的排序算法的时间复杂度和空间复杂度 排序法 最差时间分析 平均时间复杂度 稳定度 空间复杂度 冒泡排序 O(n2) O(n2) 稳定 O(1) 快速排序 O(n2) O(n*log2n) 不稳定 O(log2n)~O(n) 选择排序 O(n2) O(n2) 稳定 O(1) 二叉树排序 O(n

2017-09-21 14:20:46 204

转载 冒泡排序法为什么最佳的时间复杂度是O(n)

BUBBLESORT(A) 1 for i ← 1 to length[A] 2     do for j ← length[A] downto i + 1 3            do if A[j] A[j - 1] 4                  then exchange A[j] ↔ A[j - 1]   1         使用循环不变式证明算法的正确性: 初始化

2017-09-21 12:05:17 3696

转载 直接转的一篇译文,非原创

一、ZooKeeper的背景 1.1 认识ZooKeeper ZooKeeper---译名为“动物园管理员”。动物园里当然有好多的动物,游客可以根据动物园提供的向导图到不同的场馆观赏各种类型的动物,而不是像走在原始丛林里,心惊胆颤的被动 物所观赏。为了让各种不同的动物呆在它们应该呆的地方,而不是相互串门,或是相互厮杀,就需要动物园管理员按照动物的各种习性加以分类和管理,这样我们才能更加

2017-09-15 13:46:51 199

转载 转下你假笨的一篇java堆内存分析

JVM源码分析之堆外内存完全解读 2016-03-26 你假笨 概述 广义的堆外内存 说到堆外内存,那大家肯定想到堆内内存,这也是我们大家接触最多的,我们在jvm参数里通常设置-Xmx来指定我们的堆的最大值,不过这还不是我们理解的Java堆,-Xmx的值是新生代和老生代的和的最大值,我们在jvm参数里通常还会加一个参数-XX:MaxPermSize来指定持久代的

2017-07-07 13:17:39 200

转载 转下需要经常看看的磁盘知识,来自大众点评技术博客

磁盘I/O那些事 喻枭 ·2017-05-19 19:20 背景 计算机硬件性能在过去十年间的发展普遍遵循摩尔定律,通用计算机的CPU主频早已超过3GHz,内存也进入了普及DDR4的时代。然而传统硬盘虽然在存储容量上增长迅速,但是在读写性能上并无明显提升,同时SSD硬盘价格高昂,不能在短时间内完全替代传统硬盘。传统磁盘的I/O读写速度成为了计算机系统性能提高的瓶颈,制约了计算

2017-07-07 12:19:29 312

原创 谈下分布式算法

不谈下分布式算法,自己会忘记是(这种大白话都是自己的总结) paxos算法,为了解决分布式副本状态不一致问题,常见的情景是,多个客户端对数据增删改查,由于有不同副本,而且网络的不确定因素,要确保多个客户端对不同副本提交修改,但是不同副本能够见到相同的命令序列,有必要对每一个提交的命令进行一致性算法来提交。 下面说下具体步骤 paxos算法3个角色 proposer:提议者,帮client整

2017-07-07 12:15:24 668

转载 简单转下snowflak的介绍

Twitter-Snowflake,64位自增ID算法详解 2015/04/06 · 25 Comments Twitter-Snowflake算法产生的背景相当简单,为了满足Twitter每秒上万条消息的请求,每条消息都必须分配一条唯一的id,这些id还需要一些大致的顺序(方便客户端排序),并且在分布式系统中不同机器产生的id必须不同。 Snowflake算法核心 把

2017-07-06 20:48:56 588

转载 分库分表的意义

1. 垂直切分 垂直切分的依据原则是:将业务紧密,表间关联密切的表划分在一起,例如同一模块的表。结合已经准备好的数据库ER图或领域模型图,仿照活动图中的泳道概念,一个泳道代表一个shard,把所有表格划分到不同的泳道中。下面的分析示例会展示这种做法。当然,你也可以在打印出的ER图或模型图上直接用铅笔圈,一切取决于你自己的喜好。 2. 水平切分 垂直切分后,需要对shard内表格的数据量和

2017-07-06 20:15:41 1703

转载 java 的四大引用

强引用:普通引用 软引用:如果内存不足才回收 弱引用:gc 看到就回收 虚引用:完全跟没有引用一样,不造成任何影响 软引用和弱引用区别: 对于强引用,我们平时在编写代码时经常会用到。而对于其他三种类型的引用,使用得最多的就是软引用和弱引用,这2种既有相似之处又有区别。它们都是用来描述非必需对象的,但是被软引用关联的对象只有在内存不足时才会被回收,而被弱引用关联的对象在

2017-07-03 22:03:40 214

原创 unix网咯编程笔记

网上很多关于unix怎么现在调试的 ,我说一句,其实没必要装apue, 直接发命令了 1,./configure 2,  cd lib 3,make 4,cd ../intro 5,make daytimetcpcli ,也可以不执行这一句 ,走默认的gcc daytimetcpcli.c  -I ../lib ../libunp.a (-I 是制定include的文件夹,视为unp.

2017-05-30 22:43:30 178

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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