课件的引子

人们说哲学是门装逼的科学,我也是一个很能装的人,而且今天肯定能装的清新脱俗。

一、Unix哲学

Unix的人生哲学:短小即是美。我梦想能活在Unix的世界中,就像许多女生想回到唐朝一样。

Kafka、Storm、Spark、Hadoop、Redis等这些程序都专注自己的事,没有把上上下下的活都自己干。每个程序都专注于自己擅长的事,并且都擅长与其他成员合作。所以他们都那么小、那么瘦、还那么美。

二、传说

程序员的江湖中流传着这样一个传说:编程中的多数问题,都可以通过增加一层间接性来解决; 这也就是程序的劳动分工,软件的功能越复杂,程序的功能划分就会越清晰。

例:操作系统、虚拟机、代理 CISC AISC  Reduced Instruction Set Computer

程序员的江湖中还流传着这样另一个传说:软件运行中的性能问题,多数情况下可以通过减少一层间接性来解决。

例:C++ 相对 Java, IOS相对Android

所有的分布式都是在单机计算基础上增加一层或多层间接性。

三、分布式

分布式:花最少的钱,干最多的活,出问题了还不担责任。

比如我是一个老实巴交的北方农民,没钱买三头强壮的牛的去拉犁耕田。但我一千鸡,怎样用这一千鸡,把三头牛的能干活给做了。这样做还有一个额外的好处:一千鸡死个十个八个,活还照干,牛要是病例一、二头,肯定歇菜。

如何让一千鸡协同去拉犁,这光是耐性的考验,更是管理、协调能力的考验,这正是分布式技术要做的事情。

分布式是一个群体作战的技术,以量取胜,很适合咱们的国情。

四、数据一致性

本地程序有两种状态:成功、失败。

分布式的三态:成功、失败、超时;

因此分布式最核发的问题之一:数据一致性。常用数据同步算法有三种:2段提交、3段提交和Paxos。

4.1 2PC

Two-phase commit。问题:阻塞、数据不一致问题、单点问题。

阶段一:提交事务请求(投票阶段)

阶段二:执行事务提交(执行阶段)

4.2 3PC

问题:解决2PC的阻塞,但还是可能造成数据不一致。

Three-Phase Commit,三阶段提交,分为CanCommit、PreCommit、do Commit三个阶段。

4.3 Paxos

优点:解决单点问题

基于消息传递且具有高度容错性的一致性算法。Paxos算法要解决的问题就是如何在可能发生几起宕机或网络异常的分布式系统中,快速且正确地在集群内部对某个数据的值达成一致,并且保证不论发生以上任何异常,都不会破坏整个系统的一致性。

这么好的算法,我没看懂。

时间: 2024-12-12 13:37:40

课件的引子的相关文章

原创数据结构算法Flash动画演示课件-Action Script(AS)脚本实现

2001年,和大学同学一起完成的毕业设计作品.cooling&bobo. 学习数据结构与算法,请访问:数据结构学习网站 http://xu-laoshi.cn/shujujiegou/ ."数据结构与算法"QQ群:30308606.一起探讨数据结构和算法,并可下载本套课件. 当年Flash动画还是新鲜事物,网上可以参考的资料也很少,一步步摸索制作.总的花了一个多月时间才完成.这个项目同时也是当年浙江省自学考试办公室官方网站的教学课件.总体来说是一套在互联网上比较经典的数据结构教

Python 课件笔记

Python 3.0 课件笔记 我们需要做的就是认真听取每一堂课,私下阅读老师博客笔记进行再复习,综合理解后写下自己的笔记,加深印象! Day1 - Python基础1 介绍.基本语法.流程控制

Flash课件制作基础

Flash课件个人认为是通过动画的形式把所学知识呈现给学生,在这个过程中,知识的组织形式很重要,所以好的课件皆是具有创意的作品,它能用一种吸引人的方式把图像.声音等各种媒体整合在一起,从而达到引起学生学习兴趣的目的,能在不知不觉中传授了学习内容.交互性是课件的一个重要特点,知识呈现应该具有一定的顺序,而这种呈现需要人的控制,这就是一种交互.交互的形式是通过输入来完成,可以是点击.按键和与的输入.表现在Flash课件中是点击按钮,键盘控制和文本框的输入.当某种输入完成后,课件会给出既定的输出结果.

《Word 2003从入门到精通》第三部分(高级排版)WORD课件

<Word 2003从入门到精通>第三部分(高级排版) 讲师 朱先忠 Part 0主要内容 Part 1 使用分节符 1.1 节定义 节是Word中一个大型的独立编辑单位,每一节都可以设置成不同的格式.通过插入分节符可以将文档分成许多节,然后根据需要设置每一节的不同格式.打个比方,分节符就像一道篱笆,将栏格式设置围起来.灵活使用分节符可以达到最大限度地美化界面,但是此概念的使用有许多细节需要注意,想灵活使用有一定难度. [提示]默认情况下,整个文档即是一节.节在许多界面中普通存在,但许多初级用

1.2 动量 动量守恒定律 (课件)

<<物理:粤教版 选修3-5 1.2 动量 动量守恒定律 (课件).ppt>><<VCT32161.dll>><<VCT16151.dll>> <<物理:粤教版 选修3-5 1.2 动量 动量守恒定律 (课件).ppt>> <<H35105.exe>> <<H35104.exe>>

超级狗是集软件授权、课件保护和身份认证于一身的加密狗。

超级狗是加密狗家族中最新一代软件保护和授权产品.它提供了强大的软件.课件防盗版功能以及灵活的软件授权功能,保护软件开发商的知识产权与核心技术,确保开发商的市场收入. 超级狗将软件保护与授权技术化繁为简.通过易于理解.易于上手的外壳保护工具.许可设计工具,以及在线授权工具,软件开发商可以轻松地实现高强度的软件保护和多种授权模式. 在保持SafeNet一贯高品质.高稳定性.高安全性的基础之上,超级狗还提供了基于时间.功能控制的许可模式,同时拥有更友好.直观的用户界面和更简单的操作流程. 超级狗可以帮

web前端全部课件(html5+CSS3+javascript+dom+bom+jquery+jqm+bootstrap+angular+ext+weixin+less)

一.HTML5 BASIC课件 Unit01:Web基础知识.HTML快速入门.文本 Unit02:图像和链接.表格.结构标记 Unit03:列表.表单.其他常用标记 二.CSS3 BASIC课件 Unit01:CSS 概述.CSS 语法\尺寸与边框 Unit02:框模型.背景.渐变\文本格式化-1 Unit03:文本格式化-2.表格.浮动.显示 Unit04:列表.定位 三.京东首页实战(无PPT) 四.WEB UI课件 Unit01:Photoshop基本操作.网页切图.图像优化 Unit0

部分数学课件

多媒体课件 1.1  函数 3.1   定积分的概念和性质 1.2  数列的极限 3.2   不定积分的概念与计算 1.3  函数的极限 3.3   定积分的计算 1.4  连续函数 3.4   定积分的应用 2.1  导数的概念 3.5   反常积分 2.2  求导运算 4.1   行列式 2.3  微分的概念与运算 4.2   矩阵 2.4  微分学中值定理 4.3   逆矩阵 2.5  L'Hospital法则 4.4   线性方程组 2.6  Taylor公式 5.1  向量的外积和混合

PHP+JavaScript+HTML实现上传PDF和浏览PDF课件

在寒假简单制作PHP网站时,需要实现在线浏览PDF和上传PDF的简单功能,下面就简单介绍下该功能.实现效果如下图所示: 1.当用户登录后,点击"上传课件"超链接可以实现隐藏和显示上传table的功能: 2.当用户选择上传的课件后,PDF上传至本地网页文件夹下,同时插入数据库: 3.当点击相关PDF教学课件后,可以实现在线浏览功能. 网站布局参考:PHP网站使用JavaScript和Iframe简单实现部分刷新效果 一. 隐藏/显示table 首先介绍如何通过JavaScript实现点击