Git CentOS 源码安装

安装依赖包

1
2
3
4
5
6
7
8
9
10
11
12
yum install gcc
yum install curl
yum install curl-devel
yum install zlib-devel
yum install openssl-devel
yum install perl
yum install cpio
yum install expat-devel
yum install gettext-devel
yum install libcurl-devel
yum install autoconf
yum install perl-ExtUtils-Embed

从ACID到CAP到BASE

本文主要讲述分布式系统开发的一些相关理论基础。

ACID

事务的四个特征:

Atomic 原子性(A)

事务必须是一个原子的操作序列单元,事务中包含的各项操作在一次执行过程中,要么全部成功,要么全部不执行,任何一项失败,整个事务回滚,只有全部执行成功,整个事务才算成功。

Consistency 一致性(C)

事务的执行不能破坏数据库数据的完整性和一致性,事务在执行之前和之后数据库都必须处于一致性状态。

Isolation 隔离性(I)

在并发环境中,并发的事务是相互隔离的,一个事务的执行不能被其他事务干扰,即不同的事务并发操纵相同的数据时,每个事务都有各自完整的数据空间,即以个事务内部的操作及使用数据对其他并发事务是隔离的,并发执行的各个事务之间不能相互干扰。

分布式事务

分布式事务背景

现在分布式系统一般由多个独立的子系统组成,多个子系统通过进程间通信(RPC)互相协作配合完成各个功能。有很多用例会跨多个子系统才能完成,比较典型的是电子商务网站的下单支付流程,至少会涉及交易系统和支付系统,而且这个过程中会涉及到事务的概念,即保证交易系统和支付系统的数据一致性。通常我们谈及的事务是指单机资源的ACID属性,所以此处我们称这种跨系统的事务为分布式事务。

幂等性

前言

现在稍微有点规模的网站和大型应用都不再是单机模式,而是分布式应用,基于多机器的集群构建的应用,这服务能力就可以基本实现横向扩展(scale out),不会像单机模式下的纵向扩容(scale up)会受到单机服务能力的上限限制。另外随着”微服务“概念的火爆,很多应用在构建之处就已经走上了分布式的道路。所有就目前行业的发展来,基于分布式应用会越来越普遍,甚至变为常态。加上”docker“的这些容器技术的出现,应用分布式工具也会越来越成熟。

一致性哈希算法的理解与实践(Java)

概述

在维基百科中,是这么定义的

一致哈希是一种特殊的哈希算法。在使用一致哈希算法后,哈希表槽位数(大小)的改变平均只需要对 K/n个关键字重新映射,其中K是关键字的数量, n是槽位数量。然而在传统的哈希表中,添加或删除一个槽位的几乎需要对所有关键字进行重新映射。

言宜慢 心宜善

言宜慢

  “言宜慢”,是公元前77年王吉从七品知县调任昌邑王府中担任五品中尉时从一个老人那里得到的秘笈。昌邑王刘贺虽然是汉武帝的嫡孙,却荒淫无度喜怒无常,身边聚集的全是一些溜须拍马的小人。在这样险恶的官场中,王吉当然会感到非常忧愁。但幸运的是,他遇到了一个指点他走出迷津的老人,送给了他“言宜慢”3个字。凭借着这3个字,王吉居然渡过了一次次惊险,在官场上获得了很好的声誉,被汉宣帝刘询任命为谏议大夫,成了朝廷重臣。
  说话,体现着一个人的智慧。特别是年轻人,由于人生经验不足,经常在说话上吃亏。《论语》中,孔子讲了这样一句话:“侍于君子有三愆:言未及之而言谓之躁,言及之而不言谓之隐,未见颜色而言谓之瞽。”
  “言未及之而言,谓之躁”没轮到你讲话时,你抢着说,这就犯了“躁”的毛病。孔子一日曾与几位侍坐的弟子闲谈,让他们谈谈志向。子路性子急,孔子话音未落,他就洋洋洒洒地讲了一大套。可子路万万没想到,他这一通情感流露,却让孔子转身就赏了他一声冷笑,这热脸可是大大地贴上了凉屁股。
  这就告诉我们,说话是一门艺术,一定要谨慎。历史上因为说错话而得罪人、甚至付出惨痛代价的人不胜枚举。言宜慢,就是告诉我们,说话要经过认真思虑再出口,这样可以让我们变得更加谨慎、稳重和冷静,练就我们成熟大气的人格;其次就是说话语调要舒缓,这样听的人才会感到受尊重、亲切,更舒服顺耳。

|