00:00
那么接下来我们看第二大块内容,组件之间的通信,组件指的谁呀?其实不就涨,哎没了是吧。呃,不就是这三个进程里面之间的互相通信吗?对不对,他们这三个是不是可能在不同的节点呢?对吧,那中间就涉及到我,就像你,呃,几个朋友你不在一个地方,你是不是得打电话或者发微信告诉他呀,对吧,跟他做一个沟通交流,那同样的咱们这些框架之间呢,也有一个沟通和交流,那他们之间是什么呢?基于阿卡,那Spark是不是也提到过阿卡呀,对吧?那么关于这个咱们再提一点就是什么呢?Link同时也用到了net。那为什么同时用到两个呢?大家注意区分啊,组件之间互相通知,这个用的是R卡,另外咱们任务执行的时候是不是得传数据啊。数据是不是由上游到下游去传递啊,数据的传递用的是net。
01:06
能搞明白吧啊。我们说通信这一块啊。组件之间通信是基于阿卡的,那我们说数据的网络传输基于nat,它是两个都用了啊,两个都用,那咱们第二章主要研究的就是组件之间基于阿卡怎么来通信啊。那么阿卡呢,它是一个分布式的,这个不用讲啊,那我们一个小知识点,它是0.9的版本开始使用的阿卡啊。那么还有一点,它的调用过程都为什么?异步的,什么叫异步啊?儿子,是不是告诉他一声,你开始跑了,然后就完了呀?就不管他了是吧?哎,就不管他了啊?
02:00
这叫异步的。好,那这一块呢,呃,啰嗦啰里吧嗦,咱们其实就这几个点对吧,0.91步阿卡啊,没了啊。再往下这一段还有一个概念叫RPC,那我相信这些概念Spark内核都提过了,但我现在问同学们什么叫。RPC啊。那它跟阿卡是什么关系啊?为什么你讲阿卡又讲RPC,那net又是什么东西啊?哈,这个概念可能同学没搞清楚,大家注意,RPC是一个统称。统称,它是三个英文单词的缩写啊,简单理解起来叫什么?远程方法调用。对吧,远程方法调用它是一种统称,一种思想,一种类型吧,这么来理解啊,这是更广泛的一个概念,那么阿卡跟nat都是。他们的某一种实现,具体的实现对吧?哎,这么来理解大家应该就清晰一点,对吧?所以有时候为什么有介绍的时候说叫RPC,有时候又叫阿卡,有时候又叫呃,Nety对吧?是一个什么关系,RPC是他们的统称啊,然后阿卡net是具体的某一种实现啊好,那这一块呢,啊就过了啊啊。
03:23
因为这这里面涉及到一些组件,咱们到后面还要介绍一下对吧,好,那么这个是咱们的基本背景。啊,这个是咱们要记住的两句话对吧?啊,总结起来就两句话再往下看。呃,这里还要提到一个概念,叫。Act模型啊,这个大家之前也一样的,其实跟Spark差不多。A的模型是一个,呃,目前主要采用的一种,呃,一种模型一种叫什么呢?系统还有一种模型,那我们直接翻译这个叫什么。
04:03
是不是演员呐,对吧,演员啊。那么注意啊,咱们阿卡它也是基于这种模型进行设计的啊,基于这哎,对大家注意这个模型是啥意思啊,呃,就类似于咱们写Java程序,写Java代码是不是你想怎么写都可以对吧,但是更高级的是不是可以有一些设计模式啊。你是不是遵照他的设计理念去写啊,对吧,就比如说咱们代码里是不是大量使用了工厂模式。他不不这么去写行不行啊,是不是可以啊,但是这种模式是不是有它的优点,还有规范性啊,对吧,同样的act模型也是这么一种啊概念对吧,它是这一种设计思想啊,就按照这一套流程来走啊,来实现啊,这个叫act模型,好,那关于这个act呢,咱们看一张图,哎,这个是官方给出来的一张图啊。
05:04
那这一每一个圈圈表示什么呢?一个演员一个actor啊,一个actor,那么。那比如说这三个之间,他们怎么交互啊,是不是好发邮件呢?呃,另外的话,每个艾它是不是有个邮箱啊。啊,别人要找他,难道你找我,我就那么有空吗?对吧?啊,你很忙啊,对吧?啊,结果你是不是设了一个邮箱啊,有什么事啊可以。我我没空的时候,你放到我邮箱里面对吧,比如说别人给他发了好多封邮件。哎,等他有空的时候,他是不是一个一个来处理啊,是不是这么一个过程啊,就像大家那个出去办事是不是得排队啊,对吧,是不是一个一个来啊,啊就这样子啊。所以这个看起来是不是很简单,就几个演员,也就几个角色对吧?啊,然后呢,通信的话是基于类似发邮件的方式啊,那处理不过来就放到邮箱里,对吧,邮箱里是一个一个取出来,是不是写了一个,这边它会写一个死循环,不断的从邮箱里面去拿,哎,不断的去拿,就这么回事而已,另而我们。
06:16
呃。了解一下。啊,上面这段话啊,没什么营养,大家可以不用看是吧,都是概念性的介绍啊,啊,没有什么实质的内容啊,什么并发容错可伸缩啊,这个嗯,我觉得不算什么大的优点吧,因为基本都是并发的,基本都要考虑容错啊,可伸缩的话大部分也有啊,所以这个特点大家不用记不住也不要紧,好吧,那我们了解一下简单的一个act模型是咋样的啊。另外呢?每一个演员也就是这么一个一个的节点,它都是一个单一的线程,那么这句话呢?如果大家想要去记住act的一些特点,这句话是值得去记的啊,每一个act是一个单一的线程啊。
07:09
啊,那每个线程它是不断的从邮箱拉取啊,啊这咱们刚才提过了啊好,另外咱们一般讲到艾,它会讲到一个词状态。他是有状态的,你看状态怎么体现啊。State对吧,它是带状态啊。你看可以改变自身的内部状态,或者发送一个是诶大家注意什么叫状态,我说我说一下大家就明白了,它的启动状态和停止状态是不是两种不同的状态,对吧?啊,这就是状态,就像一个人他是不是精气神也有不同的状态,比如说今天啊,上完课就放假了啊,今天非常的亢奋,睡不着对吧,一直想着我几点钟就要跑出门,然后提着行李要卡点是吧?啊,有的人就觉得,哎,反正又不回去是吧,还有漫长的学习之路等着你是吧?啊就觉得哎,啊,没有什么精神,这就这就是一个不同的状态,那么对这个演员来讲,他就是他的启动啊,停止啊,取消啊这些状态是吧?简单理解是这样啊。
08:14
好。那么后面就讲的是一些,呃,没什么营养啊,他说单个里面自己邮箱是不是按顺序处理啊,但是可能多个的情况下,每一个内部都是有序,但整体呢,整体是不是就。呃。有一定的扩展性啊啊,就是说他,哎,咱们这个还得讲一个概念啊呃,后面这段话大家可以不用看啊,因为这一段没什么营养。我们要了解一个新的东西,而另一个概念叫act系统。哎,大家注意,这个叫系统。那什么有了演员,怎么又来一个系统啊,同学们,这个概念还是比较呃多的啊,你看一个点是一个演员对吧。
09:00
那么我可能这些组成一个整体叫系统。这个怎么理解,就像你工作之后是不是有一个部门呢,工作部门对吧,那么部门下面是不是有很多的开发,呃,很多的工作人员呢,对吧?每一个工作人员就相当于是一个act,那么你们这些人组成了这个部门呢,就可以理解为一个叫act系系统能理解吧,哎,就是部门跟人员的一个关系啊。你看一个系统包含所有存活的眼,呃,Actors对吧,这个就是这么一个对应关系啊,这个相当于一个部门,这个相当于部门里面的人啊。好,它里面呢,当然包含了很多东西,对吧?啊,这个咱们也不去研究了啊,那么有系统里面有线程池。啊,废话对吧,一个演员需要一个单一线程对不对,那你多个演员是不是得多个多条线程啊,它是通过线程池来管理的啊,那这个大家了解就行了,接下来啊。
10:09
呃。艾系统的一些特点,咱们简单介绍呃两句啊,大家记住几个关键词,首先它可以在搭一个节点上共存,什么意思啊,我一台机器上面可以有多个act系统,就这么一句话,没了。这个就是它的共存啊特点,大家可以提取一些关键词,记住就行,可以跟别人唠唠嗑对吧?啊聊聊上那么一到两个一到两句就够了啊,那至少说明咱们是了解的嘛,对吧?好,那后面这句话是什么意思呢?咱们系统是不是可以接收消息啊。哎,他那么这个消息他是不是可能是本地发出来的,也可能是其他节点发过来的呀,啊,所以它分为本地的跟远程的,那这段话表达的意思就是我本地的可以处理,远程的也可以处理没了啊。
11:05
这个就是这段话啊,共存啊可以共存,然后本地人称都可以处理好再往后看。它有一个继承的机制,什么意思啊。比如说咱们这张图啊,比如说这个节点他自己不想干活,他怎么办。啊,就像啊,说个不恰当的比喻,咱们不是有某一些正式工对吧?啊,结果呢,占着岗位拿着薪资拿呃,占着编制不干活,然后拿出2000块钱招一个合同工帮他干活,对不对啊,在家里一个月就月入上万对吧?啊,拿2000给他啊就行了啊。那是不是同样的他自己啊,当然这个就是,呃,没有针对某一个行业好吧,啊,这是我自己的设想而已啊,仅代表呃一个假设的场景,好吧,啊,那咱们你看,比如说这一个演员,他自己不呃不想干了,他干嘛。
12:07
是不是生一个马仔啊,啊,不是生啊,找一个马仔啊,找一个马仔,那这个马仔是不是老老实实干活,那他干嘛。监督哎,这个就是他的继承和监督,是不是很简单嘛,你不想干可以啊,你找个人给你干嘛啊,你不干可以,但你是不是要监督他呀,啊就这样而已啊,这个就是这句话讲的意思,可以继承,然后还是负责监督啊,这就关键词,那其他就不用看了,同学们啊,那咱们这一坨是不是就OK了。现在大家基本上脑海里要有什么呢?Act模型是怎么样的,对吧,有一些呃什么小特点,另外呃一个概念叫act系统。对吧,是什么有什么特点共享继承对吧?啊。这几个关键词大家记住就行了啊。
我来说两句