我使用Apache Flink processElement1、processElement2和onTimer流设计模式来实现超时用例。我观察到,当我包含超时功能时,系统的吞吐量下降了几个数量级。 关于Flink中onTimer的内部实现的任何提示:它是每个键流一个线程(不太可能),还是一个池/单个执行线程,不断轮询缓冲的回调并挑选超时回调以供执行。 据我所知,Flink基于角色模型和反应模式( actor model and reactive pattern,AKKA),它鼓励明智地使用少量非阻塞线程,因此onTimer或任何其他模式的每个键流都不会使用一个线程!
我是个Java新手,以前也没有接触过线程。现在,我有一个非常棘手的问题,因为我的知识水平。A)每1500毫秒发送一次消息C)每3000毫秒发送一次消息B)每6000毫秒检查一次消息我尝试了很多使用线程的方法,但都失败了。我的问题是,哪种方法是同步它们的最佳方式?下面是我上次使用线程所做的工作的代码。
public class MailCreatorThread ex