解释stateless worker
http://www.cnblogs.com/gaopang/p/7416580.html
关于Grain,在Orleans中还有一个概念就是StatelessWorker特性,这个特性标志一个Grain是无状态的(但是可以有字段保存需要的信息).意思就是启动StatelessWorker任意多个,都不会感到它们之间有何区别.大家都看过黑客帝国吧.哪个特工史密斯在大雨中复制了自己好多个..没错,就是那种感觉.这样的Grain无论多少个,都他X的是克隆体,所以Orleans处理它的时候与普通的Grain不太一样.(这个StatelessWorker特性也标明了,这种grain就是工人,纯干活的,就是工具类,与状态无关的),区别是1.可以在集群的多个silo里,每一个silo都创造一个相同标识的Grain.2.针对此类grain的请求,都只在第一个接受到请求的silo里执行.(即请求不会跳转,在一个集群里,如果你请求一个普通的GrainA,假设标识是123,这个请求的消息也许发往了siloA,但是这个123的实例已经在另一个的siloB里已经被创建了,这样针对123的请求必须跳转到此siloB.)3.Orleans会在所有此类grain忙的时候,自动增加一个...实际应用中,会利用特性2,加快请求的处理速度.也可以利用特性1,让StatelessWorker在自己的字段里携带一些常用的数据,在整个集群中扩散.
浙公网安备 33010602011771号