elastic-job,DataflowJob类型作业,如何配置可以实现每个分片多线程执行?
elastic-job,DataflowJob类型作业,怎么配置可以实现每个分片,processData处理时是多线程执行呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
elastic-job,DataflowJob类型作业,怎么配置可以实现每个分片,processData处理时是多线程执行呢?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(6)
目前我看的是1.x的。每个服务实例可以处理多个分片。但是我看到框架内部实现了多线程来处理多个分片(每个子线程处理一个分片)。我有两个疑问,1是每个分片被线程池中的一个子线程处理了,所以每个分片的数据量还过大的话,再想进行多线程处理。就比较麻烦把。2是我看到框架内部线程池创建线程数是cpu的两倍。那我如果分片项过多,对执行效率是不是会有一定的影响。
0 亮哥好,如果需要处理4万条数据,有两个实例,分4片,每个实例分到2片,这个分片要怎么配置,还是说要代码中写分片逻辑??
回复
@HdPang : 不用特意配置,它会自动的均衡分配的
回复
@亮_dangdang :自动均衡配置是指某个实例属于第几分片吧?但是具体某个分片处理那些数据 这个逻辑是需要配置的吧
回复
@HdPang : 是的,分片项和具体业务逻辑如何对应需要业务开发者自己处理。elastic-job的职责是把分片项在分布式的环境中分对了
1.x每个实例可以处理多个分片,因此可以自行写代码将每个分片多线程化。
2.x的实现方式和1.x没有本质区别,但api上看每个实例只能分到一个分片。是因为框架内部将分到同一实例的多个分片自动多线程化,因此无需使用方程序员过多关注多线程的事情了,都由框架统一处理。