Redian新闻
>
Java基于DI解决runtime dependency和异步执行,有啥好轮子?
avatar
M*u
2
都信佛,看天后闹腾的。郑钧新婚,老崔天天热恋90后 汪老师换嫩模,搞摇滚的,不
喜欢姑娘?
avatar
t*o
3
怎么回事? 突然,手机上端状态栏正中间出现一个 锁 的标志
然后没法wifi,没法打电话了!settings 点不进去!
avatar
a*0
4
象ipad和galaxy的monthly plan都可以随时取消。 取消了以后那个SIM card还能再激
活么? 有没有什么过期的限制?
以前用T Mobile pay as you go的电话。 一旦不再充值,那个SIM card就失效了,要
用又得重新买SIM
avatar
S*t
5
Guice倒是开源的,别的DI方案也有。想请教下,市面上有没有这样的轮子,来解决
processing step之间的dependency,framework去schedule每一个step的异步执行?
举个例子,我要写一个后端rpc service,处理一个rpc request,产生这个rpc的
response,这个过程中我需要执行若干个步骤
1: input request, output A
2: input request, output B
3: input A, B, output C
4: input request, A, C; output D
5: input B, D output final response
每一个步骤内部的logic可能是一个blocking computation,也可能是一个async call
(disk io or network call)。有没有这样一个framework能够理解这样的dependency并
且最优化的schedule这5个step的async execution,比如1和2可以并行run。不知道开
源社区有没有这样的轮子?
avatar
c*g
6
跟老婆患难中出来的

【在 M****u 的大作中提到】
: 都信佛,看天后闹腾的。郑钧新婚,老崔天天热恋90后 汪老师换嫩模,搞摇滚的,不
: 喜欢姑娘?

avatar
t*o
7
现在更糟糕!没法动了。 没法关机! 在挂电话的页面不动了!
那个锁的标志依然在。 是不是有人侵入了我的apple id?

【在 t*******o 的大作中提到】
: 怎么回事? 突然,手机上端状态栏正中间出现一个 锁 的标志
: 然后没法wifi,没法打电话了!settings 点不进去!

avatar
d*0
8
其实没必要取消,你把它暂停就不会收钱了
avatar
H*S
9
这个应该是reactive programming的范畴。可以去看看rxjava或者akka stream。

call

【在 S********t 的大作中提到】
: Guice倒是开源的,别的DI方案也有。想请教下,市面上有没有这样的轮子,来解决
: processing step之间的dependency,framework去schedule每一个step的异步执行?
: 举个例子,我要写一个后端rpc service,处理一个rpc request,产生这个rpc的
: response,这个过程中我需要执行若干个步骤
: 1: input request, output A
: 2: input request, output B
: 3: input A, B, output C
: 4: input request, A, C; output D
: 5: input B, D output final response
: 每一个步骤内部的logic可能是一个blocking computation,也可能是一个async call

avatar
e*d
10
有慧根……

【在 M****u 的大作中提到】
: 都信佛,看天后闹腾的。郑钧新婚,老崔天天热恋90后 汪老师换嫩模,搞摇滚的,不
: 喜欢姑娘?

avatar
M*n
11
重启呢?

【在 t*******o 的大作中提到】
: 现在更糟糕!没法动了。 没法关机! 在挂电话的页面不动了!
: 那个锁的标志依然在。 是不是有人侵入了我的apple id?

avatar
a*0
12

哦,是叫suspend么? 等俺去问问。

【在 d*****0 的大作中提到】
: 其实没必要取消,你把它暂停就不会收钱了
avatar
s*m
13
why not use CompletableFuture?
Do not understand why DI is related.
avatar
y*o
14
他老婆救了他,这样的老婆娜找

【在 M****u 的大作中提到】
: 都信佛,看天后闹腾的。郑钧新婚,老崔天天热恋90后 汪老师换嫩模,搞摇滚的,不
: 喜欢姑娘?

avatar
t*o
15
按lock键盘没用
完全动不到

【在 M******n 的大作中提到】
: 重启呢?
avatar
S*r
16
取消59天内可以激活, 超过可能要activation fee.
avatar
c*e
17
rxjava的异步,其实是 async + thread,不是node.js那样只有一个thread的async

【在 H****S 的大作中提到】
: 这个应该是reactive programming的范畴。可以去看看rxjava或者akka stream。
:
: call

avatar
t*m
18
老崔搞90后?人才啊,不服不行
avatar
M*n
19
同时按住home和电源不动,维持10秒还是15秒,试试看

【在 t*******o 的大作中提到】
: 按lock键盘没用
: 完全动不到

avatar
d*0
20
这种没contract的plan新开也没有激活费

【在 S***r 的大作中提到】
: 取消59天内可以激活, 超过可能要activation fee.
avatar
H*S
21
如果只想要在当前thread上跑,可以直接subsribeOn immediate scheduler,否则用
trampoline scheduler在一个单一thread上run。rxjava的threading model是非常
flexible的。

【在 c*********e 的大作中提到】
: rxjava的异步,其实是 async + thread,不是node.js那样只有一个thread的async
avatar
t*o
22
搞定了! 4s就是烂啊!我刚才啥都没动,就出问题了

【在 M******n 的大作中提到】
: 同时按住home和电源不动,维持10秒还是15秒,试试看
avatar
S*r
23
可能新开要换卡吧

【在 d*****0 的大作中提到】
: 这种没contract的plan新开也没有激活费
avatar
c*e
24
如果只想要在当前thread上跑,那future.get()的时候,不会block这个thread吗?

【在 H****S 的大作中提到】
: 如果只想要在当前thread上跑,可以直接subsribeOn immediate scheduler,否则用
: trampoline scheduler在一个单一thread上run。rxjava的threading model是非常
: flexible的。

avatar
M*n
25
...任何系统都有bug,只要不是老这样就好

【在 t*******o 的大作中提到】
: 搞定了! 4s就是烂啊!我刚才啥都没动,就出问题了
avatar
a*0
26

就是怕换卡,这个真正是浪费。

【在 S***r 的大作中提到】
: 可能新开要换卡吧
avatar
H*S
27
你可以把scheduler想象成actor,所有的rx event都是这个actor的message。当你有一
个future的时候,把它转化成observable,这个observable可以attach到另外一个
observable上,就像搭乐高积木一样。future return以后的值直接传导到下一个
observable或者直接到subscriber。future.get是不是在一个thread上没有关系,因为
所有的event必须happen in order,就好像actor可以在一个multi threaded
dispatcher上,但是message processing还是要按顺序进行。

【在 c*********e 的大作中提到】
: 如果只想要在当前thread上跑,那future.get()的时候,不会block这个thread吗?
avatar
x*s
28
re

【在 M******n 的大作中提到】
: ...任何系统都有bug,只要不是老这样就好
avatar
d*0
29
浪费块芯片而已,反正不花钱。不过ATT如果能推出prepaid data plan就好了。按天收
费。

【在 a*****0 的大作中提到】
:
: 就是怕换卡,这个真正是浪费。

avatar
c*e
30
你的意思,是future.get()在另外一个thread上?

【在 H****S 的大作中提到】
: 你可以把scheduler想象成actor,所有的rx event都是这个actor的message。当你有一
: 个future的时候,把它转化成observable,这个observable可以attach到另外一个
: observable上,就像搭乐高积木一样。future return以后的值直接传导到下一个
: observable或者直接到subscriber。future.get是不是在一个thread上没有关系,因为
: 所有的event必须happen in order,就好像actor可以在一个multi threaded
: dispatcher上,但是message processing还是要按顺序进行。

avatar
t*d
31
希望不用换。换也无所谓,手里还有几张ATT SIM卡from ebay. dirt cheap.

【在 a*****0 的大作中提到】
:
: 就是怕换卡,这个真正是浪费。

avatar
H*S
32
根本没有future.get,future直接被register一个callback把值传给下个单元。rxjava
的好处是所有的callback aligned up as a stream,所以不用去担心callback hell的
问题。

【在 c*********e 的大作中提到】
: 你的意思,是future.get()在另外一个thread上?
avatar
a*0
33

要花钱的,至少T mobile那个要$6。99。 还要等寄过来。 既然是monthly pay as you
go,当然是想用的时候用,不想用就不用。 每次要等就很脑残

【在 d*****0 的大作中提到】
: 浪费块芯片而已,反正不花钱。不过ATT如果能推出prepaid data plan就好了。按天收
: 费。

avatar
c*e
34
future在的那个thread,在把值传给下个单元之前,在干啥子?

rxjava

【在 H****S 的大作中提到】
: 根本没有future.get,future直接被register一个callback把值传给下个单元。rxjava
: 的好处是所有的callback aligned up as a stream,所以不用去担心callback hell的
: 问题。

avatar
x*4
35
我觉得vertx比rxjava容易理解。不知道为什么vertx没有热起来。

【在 H****S 的大作中提到】
: 你可以把scheduler想象成actor,所有的rx event都是这个actor的message。当你有一
: 个future的时候,把它转化成observable,这个observable可以attach到另外一个
: observable上,就像搭乐高积木一样。future return以后的值直接传导到下一个
: observable或者直接到subscriber。future.get是不是在一个thread上没有关系,因为
: 所有的event必须happen in order,就好像actor可以在一个multi threaded
: dispatcher上,但是message processing还是要按顺序进行。

avatar
H*S
36
在计算future的body啊,取决于scheduler使用的是当前的thread还是另一个thread,
这个计算可以是同步或者是异步。

【在 c*********e 的大作中提到】
: future在的那个thread,在把值传给下个单元之前,在干啥子?
:
: rxjava

avatar
H*S
37
容易理解不代表适用,我敢打赌actor比这两个都简单,但是actor一旦大规模使用,对
于维护简直就是一个灾难。

【在 x***4 的大作中提到】
: 我觉得vertx比rxjava容易理解。不知道为什么vertx没有热起来。
avatar
l*s
38
谢谢指点!

rxjava

【在 H****S 的大作中提到】
: 根本没有future.get,future直接被register一个callback把值传给下个单元。rxjava
: 的好处是所有的callback aligned up as a stream,所以不用去担心callback hell的
: 问题。

avatar
s*m
39
我很喜欢用actor, 能否说一下为什么“actor一旦大规模使用,对
avatar
H*S
40
仅以akka actor为例:
1。它的message processing是untyped,所以你可以像actor传递任何marshallable
object,compiler不能帮你找出错误,如果你不小心发了个此actor无法handle的消息。
2。akka actor的context还可以evolve,意味着不同阶段它可能take完全不同的set of
messages,compiler更无法帮到你。
3。actor无法compose,你不能把复杂的logic分解成小块然后把它们类型安全的连结起
来。
4。actor还可以run remotely,这对于维护简直就是噩梦。当你的程序变得越来越大时
,任何的改动你都需要compiler给你带来一点信心。如果是actor的话,你基本上没有
任何信心来改动,尤其如果是别人的程序。

【在 s*******m 的大作中提到】
: 我很喜欢用actor, 能否说一下为什么“actor一旦大规模使用,对
avatar
s*m
41
我没有用过akka actor, 谢谢你的经验之谈,如果我以后用到它会注意
avatar
H*S
42
不客气,scalaz-actor在类型安全方面比akka要好,虽然还是没法compose。

【在 s*******m 的大作中提到】
: 我没有用过akka actor, 谢谢你的经验之谈,如果我以后用到它会注意
avatar
c*e
44
你在写rpc? 怎么不直接写个restful web services呢?

call

【在 S********t 的大作中提到】
: Guice倒是开源的,别的DI方案也有。想请教下,市面上有没有这样的轮子,来解决
: processing step之间的dependency,framework去schedule每一个step的异步执行?
: 举个例子,我要写一个后端rpc service,处理一个rpc request,产生这个rpc的
: response,这个过程中我需要执行若干个步骤
: 1: input request, output A
: 2: input request, output B
: 3: input A, B, output C
: 4: input request, A, C; output D
: 5: input B, D output final response
: 每一个步骤内部的logic可能是一个blocking computation,也可能是一个async call

avatar
Y*G
45
Amazon SWF不就是解决这种问题的吗?Any in large scale.

call

【在 S********t 的大作中提到】
: Guice倒是开源的,别的DI方案也有。想请教下,市面上有没有这样的轮子,来解决
: processing step之间的dependency,framework去schedule每一个step的异步执行?
: 举个例子,我要写一个后端rpc service,处理一个rpc request,产生这个rpc的
: response,这个过程中我需要执行若干个步骤
: 1: input request, output A
: 2: input request, output B
: 3: input A, B, output C
: 4: input request, A, C; output D
: 5: input B, D output final response
: 每一个步骤内部的logic可能是一个blocking computation,也可能是一个async call

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。