分布式领域攻与伐(0/9)(切开分布式)

我最初接触到分布式是菜鸟网络的一个高级技术管理人员的....

抱歉,最烦这类废话,直接跳过。(who cares? 直接上重点)


困惑

不知道从哪里下口?!

看了好些知乎学院派对于 "分布式" 领域(注意是笼统的分布式)的介绍与"抛砖引玉",然后我发现自己更不理解了,不是论文就是研究,其实我只是关心工程方面的技术实践,说白了我想要的是落地的方案,实践,是真金白银相关的,商业项目相关的,而不是还停留在理论研究上的。

当然也有大佬,小姥们讲解了工程技术相关的,比如分布式怎么来的,包含哪些方面等等。

但问题是,落实到实际工作,包含哪些知识技能啊?

(你去看招聘,岗位要求也可能是一头雾水;说到底 HR 写的内东西吧,不予置评)


兼听

太多人说,七嘴八舌的,仔细看看,仔细想想,我们工业,商业上所以应用的不过是理论研究的分布式的子集,直白说,就是和一些开源产品相关的分布式技术

下面的参考文章大多都值得一看,不过在我看来,分布式、大数据,微服务不要统统划分到 "分布式" 中,因为上面我自己的讲过,取 理论分布式的子集 即可。

(其实我们大多都知道,互联网企业就是主要为了省钱才水平扩展,由此引发了一系列多机问题)

他们有的这样总结:

有的这样总结:

参考链接:


解决之道

数据库存储快还是索引快?

那要看什么样的数据库,什么样的数据规模了。先避开不论。

人呢?人记忆东西耗费代价大还是组件神经元索引代价大?我想肯定是后者了。

在海量存储的知识里,找到当下问题的解决方案,即建立关联,建立索引这个过程非常耗时。

意思是说,其实具体去学习&实践某项技术并不困难;真正困难的是全局纵览,然后逐步分解。换言之,站在一定高度,认识一些关键词技术背后的意义,主要是商业意义(工程思维就是解决了什么问题),价值所在。

而矛盾的是,一般只有经验丰富的领域内人员才有可能具备这样的 大局观

所以本文就给看官解决这个问题,直接贴在这里。(并非我总结的,而是工程内人士的总结)

(评论里说 符合中国国情,真香; 技术或许本来就是很 Low 的东西,没必要表达的那么阳春白雪,您说呢?)

重点总结:

  • 注册中心,调度中心 (比如 zookeeper)
  • 机器/进程通信RPC (各类框架,消息队列)
  • 分发请求,负载均衡 (nginx, tengine)
  • 支持高并发,高性能
    • cache: redis
    • mq: 各类消息队列,尤其 kafka
    • job: 各类调度框架,比如 elasticjob, tbschedule, quartz
    • db: nosql/newsql (这里一般涉及传统的数据库应该不多,毕竟传统数据库停留在 100K 数量级范畴,百万之后就靠 nosql 打天下) --- 以及 db 老生常谈的各种各样的问题,什么分表分库啊,什么分片啊,读写分离啊,主从啊...

这些内容是不是全部?不知道,但知道的是,大概如此。

(至于某一块选择哪些技术,见仁见智)
(至于怎么学,当然官方文档,以及项目背景十足的大佬啦; 官方文档为主)
(至于后面怎么发展?不要太贪,学完降龙十八掌前十七掌,再说)

内容不少,好在难度不大(相比资本运筹,企业经营管理而言)。

补一句: 通常看业内有专业背景的人的著作(书籍)是一个捷径。(至少对我而言看书,看它的总结要比看官方文档快的多,不然你干嘛花钱买别人的经验?不就是图省事儿嘛;但后期遇到问题还是要翻文档,此时书已经没有营养了)

此时逐个攻破即可,没有必要在多关注他人写的什么 浅析分布式分布式概览等等。

参考书目

这里我手上已经有的相关的书籍: (可能分布式相关的)

以及大量 kindle 电子书。 (推荐购买电子版!)

另外,和本文有类似作用,或者是本文论述的超集(父集)的一本书,入门时推荐:

(可能后续这本书不再有营养,相比于《UNP》系列不经看,但足够了,别要求太高)

(后续有一篇专门来写写,我看过的,我鄙视的,我推荐的 分布式 相关的书评)



BTW: 做分布式,不管含不含架构,含不含微服务等,Java语言,Go语言肯定跑不了。

(说完了,容我打个广告,CH-YK 分布式细分领域专家 --- 咳、咳、准专家...)



分布式领域攻与伐(0/9)(切开分布式)

原文地址:https://www.cnblogs.com/bluechip/p/pro-distributed-start.html

时间: 2024-08-07 09:12:16

分布式领域攻与伐(0/9)(切开分布式)的相关文章

Hadoop2.2.0多节点分布式安装及测试

众所周知,hadoop在10月底release了最新版2.2.很多国内的技术同仁都马上在网络上推出了自己对新版hadoop的配置心得.这其中主要分为两类: 1.单节点配置 这个太简单了,简单到只要懂点英语,照着网上说的做就ok了.我这里不谈这个,有兴趣的童鞋可以自己去问度娘和谷哥- 2.多节点配置 这个就是我要重点说明的,老实说网络上说的的确是多节点,但不是真正的分布式部署- 我们为什么要用hadoop?因为hadoop是一个分布式系统基础架构,我们可以在不了解分布式底层细节的情况下,开发分布式

Spark-1.4.0单机部署(Hadoop-2.6.0采用伪分布式)【已测】

??目前手上只有一个机器,就先拿来练下手(事先服务器上没有安装软件)尝试一下Spark的单机部署. ??几个参数: ??JDK-1.7+ ??Hadoop-2.6.0(伪分布式): ??Scala-2.10.5: ??Spark-1.4.0: ??下面是具体的配置过程 安装JDK 1.7+ [下载网址]http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 环境变量设置(最好不要采用o

分布式领域CAP理论

分布式领域CAP理论具体如下:Consistency(一致性):数据一致更新,所有数据变动都是同步的:Availability(可用性):好的响应性能:Partition tolerance(分区容错性):可靠性: 定理:任何分布式系统只可同时满足二点,没法三者兼顾.忠告:架构师不要将精力浪费在如何设计能满足三者的完美分布式系统,而是应该进行取舍. 关系数据库的ACID模型拥有 高一致性 + 可用性,很难进行分区:Atomicity原子性:一个事务中所有操作都必须全部完成,要么全部不完成.Con

Flume1.5.0的安装、部署、简单应用(含分布式、与hadoop2.2.0、hbase0.96的案例)

目录: 一.什么是Flume? 1)flume的特点 2)flume的可靠性 3)flume的可恢复性 4)flume 的 一些核心概念 二.flume的官方网站在哪里? 三.在哪里下载? 四.如何安装? 五.flume的案例 1)案例1:Avro 2)案例2:Spool 3)案例3:Exec 4)案例4:Syslogtcp 5)案例5:JSONHandler 6)案例6:Hadoop sink 7)案例7:File Roll Sink 8)案例8:Replicating Channel Sel

Git 2.10.0 发布,分布式版本控制系统

Git 2.10.0 发布了,发布说明如下: UI, Workflows & Features * "git pull --rebase --verify-signature" learned to warn the user   that "--verify-signature" is a no-op when rebasing. * An upstream project can make a recommendation to shallowly cl

第三百五十六节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy分布式爬虫要点

第三百五十六节,Python分布式爬虫打造搜索引擎Scrapy精讲-scrapy分布式爬虫要点 1.分布式爬虫原理 2.分布式爬虫优点 3.分布式爬虫需要解决的问题

C#分布式消息队列 EQueue 2.0 发布啦

前言 最近花了我几个月的业余时间,对EQueue做了一个重大的改造,消息持久化采用本地写文件的方式.到现在为止,总算完成了,所以第一时间写文章分享给大家这段时间我所积累的一些成果. EQueue开源地址:https://github.com/tangxuehua/equeue EQueue相关文档:http://www.cnblogs.com/netfocus/category/598000.html EQueue Nuget地址:http://www.nuget.org/packages/eq

使用JMeter3.0实战之分布式并发测试以及web API接口测试

简介: 该文档是以Apche JMeter-3.0为例进行编写的,通过网上的学习资料和官方文档的说明手册学习后,进行项目操作实践,将测试的过程记录下提供给大家学习. 本博文的内容主要是进行配置JMeter的测试参数,进行并发测试,分布式测试和收集服务器端的性能参数以及如何去测试web api接口的方法. 本博文以工作的项目作为并发测试的实验案例.如果有错误,请大家指出. 1.使用Badboy录制Web性能测试脚本 1.1使用Badboy工具进行录制Web性能测试脚本 (1)启动Badboy.首次

hadoop1.0 TaskTracker因为分布式缓存导致内存泄露的一次问题排查

上周五同事到公司说凌晨的时候有值班同事打电话给他,有部分job卡住了,运行了很长时间都没运行完成,由于是凌晨,他没来得及详细的查看日志,简单的把有问题的tasktracker重启了一下,只有一个节点的TaskTracker进程停掉,让我查一下具体是什么问题.以下是排查过程: 1.登陆到停掉TT进程的处理机 (1).查看磁盘空间 磁盘没有出现空间不足的情况. (2).top查看负载和内存使用情况: 根据上图看出内存和负载都不算高,也不存在僵尸进程. 2.查看进程日志 1.log4j日志: 2014