排序:
默认
按更新时间
按访问量

hdfs架构分析

hdfs介绍 hadoop的分布式文件系统hdfs是依据谷歌的GFS论文来实现的,它是一个被设计成为运行在廉价的通用硬件之上,具有容错性的文件系统。hdfs的设计使得它能够提供很高的吞吐量,很适合大规模的数据集合。 hdfs架构 hdfs的设计如下图所示 hdfs由Na...

2017-04-09 22:04:02

阅读数:490

评论数:0

golang的import导入

在go里,import是很常用的一个命令,import用来导入包。然后我们就可以使用这个包的函数。fmt是go里的标准库,我们以fmt包举一个例子,文件名为main.go如下: import “fmt” func main() { fmt.Println(“hello world!”) ...

2017-02-14 23:35:10

阅读数:1251

评论数:0

redis集群实现(八)redis+twemproxy集群

redis的确是一个非常高效的缓存服务器,但是单台redis服务器的内存管理能力有限,如果一味的加大内存的话会导致redis服务器的性能下降,所以就必须要搭建redis集群来提供服务。在redis官方在3.0.0版本给出集群方案之前,大部分的企业都使用twemproxy组件来进行redis集群的搭...

2017-01-01 17:23:40

阅读数:920

评论数:0

redis集群实现(七)sentinel数据结构和初始

上节我们看过了sentinel协调者模块处理集群故障节点的功能,今天我们看一下sentinel的处理架构以及sentinel的初始化流程。 首先,sentinel是独立于数据节点之外的一个协调模块,sentinel不存储任何用户要求存储的key-value数据,sentinel只负责监视集群中每一...

2017-01-01 10:01:10

阅读数:1406

评论数:0

redis集群实现(六) 容灾与宕机恢复

实现集群,一个重要的保证就是高可用性,要在各种软件和硬件的故障情况下仍然能够提供服务。一般来说有两种解决思路,一种是每一个节点互相之间都会进行数据交互以及监控,出现故障的时候,各个节点都可以做协调任务。另一种就是增加一个协调组件来对集群进行实时监控以及故障处理。现在使用比较广泛的是第二种方案,各个...

2016-12-04 10:54:08

阅读数:12222

评论数:1

redis集群实现(五) sentinel的架构与raft协议

在分布式系统的一致性协议方面,paxos一直是标准级别的存在,但是由于paxos在工程师先上的困难,所以就有人研究出了raft协议。和大名鼎鼎的paxos算法不一样,raft比较通俗易懂,在很多关键的地方甚至给出了伪代码。raft协议在redis内并没有用来实现一些分布式锁以及分布式事务,仅仅是用...

2016-11-28 22:22:45

阅读数:3602

评论数:1

分布式事务之2PC和3PC

分布式一致性回顾 在分布式系统中,为了保证数据的高可用,通常,我们会将数据保留多个副本(replica),这些副本会放置在不同的物理的机器上。为了对用户提供正确的增\删\改\差等语义,我们需要保证这些放置在不同物理机器上的副本是一致的。 为了解决这种分布式一致性问题,前人在性能和数据一...

2016-11-20 18:17:54

阅读数:540

评论数:0

syslog 系统日志应用

syslog 系统日志应用  1) 概述       syslog是Linux系统默认的日志守护进程。默认的syslog配置文件是/etc/syslog.conf文件。程序,守护进程和内核提供了访问系统的日志信息。因此,任何希望生成日志信息的程序都可以向 syslog 接口呼叫生成该信息。 ...

2016-11-15 10:46:25

阅读数:2918

评论数:0

redis集群实现(四) 数据的和槽位的分配

不知道有没有人思考过redis是如何把数据分配到集群中的每一个节点的,可能有人会说,把集群中的每一个节点编号,先放第一个节点,放满了就放第二个节点,以此类推。。如果真的是这样的话,服务器的利用率和性能就太低了,因为先放第一个,其他的服务器节点就闲置下来了,单个节点的压力就会非常的大,其实就相当于退...

2016-11-15 07:46:50

阅读数:13266

评论数:4

redis集群实现(三)集群删除节点

redis集群里的节点支持动态删除,但是一般情况下不会这么做,只有在节点软硬件升级的时候才会主动让节点下线。删除节点的方式就是redis-cli客户端连接到服务器,然后执行cluster forget node-id就可以了,如果是删除一个从节点的话,集群仍然是可用状态,如果是删除一个主节点的话,...

2016-11-13 22:32:26

阅读数:5212

评论数:0

使用虚拟节点改进的一致性哈希算法

分布式存储中的应用 在分布式存储系统中,将数据分布至多个节点的方式之一是使用哈希算法。假设初始节点数为 N,则传统的对 N 取模的映射方式存在一个问题在于:当节点增删,即 N 值变化时,整个哈希表(Hash Table)需要重新映射,这便意味着大部分数据需要在节点之间移动。 因此现在普遍使...

2016-11-13 10:41:03

阅读数:2870

评论数:2

redis集群实现(二)集群添加节点

在redis-3.0.0里,集群添加节点是通过客户端运行cluster meet命令来实现的,命令格式是cluster meet ,如果客户端向A节点发送这条命令,ip和port分别是B节点的ip和port,就会把ip:port的机器添加进入执行命令的节点所在的集群里。 具体的流程如下: 1.首...

2016-11-06 19:14:10

阅读数:1377

评论数:0

设置vmware虚拟机固定IP

最近在mac上用vmware fusion,但是经常有这样一个问题。就是换一个局域网,虚拟机上的guest OS(ubuntu/Centos等)就会断开网络然后重新换成一个新的IP,弄得我很麻烦,每换一个局域网都需要手动重新设置一下,来和新的IP相适应。后来终于发现了一个可以在mac上把虚拟机I...

2016-11-06 15:04:53

阅读数:4182

评论数:1

守护进程的详细总结(包括实例解析)

1、 守护进程的概念: 守护进程(Daemon)是一种运行在后台的一种特殊的进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。由于在Linux中,每个系统与用户进行交流的界面成为终端,每一个从此终端开始运行的进程都会依附于这个终端,这个终端被称为这些进程的控制终端,当控制终...

2016-10-30 09:01:35

阅读数:671

评论数:0

linux内核Kmalloc分配内存需要注意的问题(GFP_KERNEL可能会造成内核调度错误)

kmalloc http://blog.chinaunix.net/u2/79914/showart_1905549.html #include Linux/slab.h> void *kmalloc(size_t size, int flags); 给 kmalloc 的第一...

2016-10-29 19:52:25

阅读数:852

评论数:0

linux C --深入理解字符串处理函数 strlen() strcpy() strcat() strcmp()

在Linux C 编程中,我们经常遇到字符串的处理,最多的就是字符串的长度、拷贝字符串、比较字符串等;当然现在的C库中为我们提供了很多字符串处理函数。熟练的运用这些函数,可以减少编程工作量,这里介绍几个常用的字符串函数,并编写一些程序,如果没有这些库函数,我们将如何实现其功能; 1 求字符串...

2016-10-27 22:17:09

阅读数:2690

评论数:0

分布式系统设计权衡之CAP

写在最前: 1.为什么学习并记录分布式设计理念一系列相关的东西 在日常工作中系统设计评审的时候,经常会有一些同事抛出一些概念,高可用性,一致性等等字眼,他们用这些最基本的概念去反驳系统最初的设计,但是很多人理解的可用性,一致性等等问题,都是自己拍脑袋想的,或者根本和最原始表达的意思就不是一个东...

2016-10-27 21:04:22

阅读数:405

评论数:0

redis伪集群搭建

搭建环境是vmware虚拟机+ubuntu-14.04,以redis伪集群的方式搭建搭建,一共实现了6台机器集群的搭建,三个master节点和三个slave节点。 #首先安装redis的集群管理需要ruby和zlib sudo apt-get install zlib ruby #以及安装和red...

2016-10-27 16:02:01

阅读数:1510

评论数:0

redis集群实现(一)集群架构与初始化

redis是一个高可用、高性能、高可扩展性的基于内存也支持持久化存储的kv存储数据库,redis相比较于之前的kv存储memcached而言,不但支持的value类型大大增加,并且还支持数据的持久化,弥补了memcached的不能持久化的缺点,但是在3.0之前的redis并不支持集群功能,这也是r...

2016-10-27 08:38:00

阅读数:3910

评论数:4

select,poll,epoll的归纳总结区分

Select、Poll与Epoll比较 以下资料都是来自网上搜集整理。引用源详见文章末尾。 1 Select、Poll与Epoll简介 Select select本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。这样所带来的缺...

2016-10-26 00:27:08

阅读数:299

评论数:0

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