This topic created in 1867 days ago, the information mentioned may be changed or developed.
需求:不断从 kafka 里获取一条一条人像数据(量很大),针对每一条调用算法模块分析得出结果然后存储
想法:
1. 简单通过进程池启动多个进程,每个进程做一个消费者
2. 通过 celery 启动间隔很小的定时任务
问题:
1 的问题:怎么监控和守护任务进程
2 的问题:担心消费速度过慢
其他问题:有无其他框架或者系统可以推荐
11 replies • 2021-04-26 16:54:26 +08:00
 |
|
1
ch2 Apr 25, 2021
1 没问题,你再加一张表来记录每个任务的状态就行了
|
 |
|
2
joApioVVx4M4X6Rf Apr 25, 2021
这是个复杂问题,首先算法模块部署到哪儿了?它的吞吐量是多少?会不会成为瓶颈。如果算法模块也在消费者那台机器上,就要考虑算法的资源占用情况了。
|
 |
|
6
akyle Apr 26, 2021
为什么不可以先缓存再批量处理?
|
 |
|
8
ebingtel Apr 26, 2021
多进程+多协程……supervisor 应该够了
|
 |
|
9
446ENzu91KZ73A33 Apr 26, 2021
歪楼,楼主用的摄像头能推荐一下吗?是能自动识别人脸上传吗?还是要自己分析是否存在人脸。我之前也想实现类似功能不过用的摄像头不太行,算法也不太行,最后放弃了
|
 |
|
11
Alexf4 Apr 26, 2021
跟楼主做过类似的项目,当时是为了实时处理日志的情景。 1 Kafka 有个消费组的机制,我同一个 topic 有 N 个 parition, 每一个 partition 对应一个 python 进程( supervisor 管理所有的进程)。假如遇到了性能瓶颈就,新增 partition, 新增进程(包括机器)。这种比较简单粗暴 2 后面优化这种流程,换了 golang 了。。。
|