我在两台服务器上运行 celery,其中一个 redis 作为代理。
Celery 启动命令如下所示:
celery multi start 2 -A app_name
Run Code Online (Sandbox Code Playgroud)
花开始命令:
celery flower -A app_name --address=10.41.31.210 --port=5555
Run Code Online (Sandbox Code Playgroud)
在花的输出中有一些警告:
WARNING:flower.api.control:'stats' inspect method failed
WARNING:flower.api.control:'active_queues' inspect method failed
WARNING:flower.api.control:'registered' inspect method failed
WARNING:flower.api.control:'scheduled' inspect method failed
WARNING:flower.api.control:'active' inspect method failed
WARNING:flower.api.control:'reserved' inspect method failed
WARNING:flower.api.control:'revoked' inspect method failed
WARNING:flower.api.control:'conf' inspect method failed
Run Code Online (Sandbox Code Playgroud)
对我来说最奇怪的事情 - 并非所有工人都显示在 Flower 的仪表板中。似乎每朵花重启后只显示一些工人。由于我的启动脚本 - 应该至少有 8 个工人,但我看到 4 个或有时 6 个。
寻找任何解决方案或建议。谢谢你。
Ps 当只有一台服务器用于芹菜工人时,我对相同的服务没有任何问题。
我正在使用 rsyslog 来收集 nginx 日志。除了用“#011”文本替换通常的选项卡外,一切看起来都不错。
损坏的输出示例:
217.118.93.88#0111473674833.412#0114418687#011...
Run Code Online (Sandbox Code Playgroud)
它应该是什么样子:
217.118.93.88 1473674833.412 4418687 ...
Run Code Online (Sandbox Code Playgroud)
为什么会发生这种情况以及如何禁用这种替换?
谢谢!
我对TEZ mapreduce工作有奇怪的行为。
我正在尝试从Hive读取日志数据,将其按ID,日期和其他一些参数分成一些块,然后写入另一个Hive表。
Map阶段的运行速度足够快,大约需要20分钟,而reducer开始工作,而458 Reducer中的453将在接下来的20分钟内处理所有数据。但是最后5个减速器工作约1个小时。
发生这种情况是因为我的输入数据包含一些巨大的条目,并且处理这些条目需要很多时间。这种情况下的最佳做法是什么?我是否应该进行一些hadoop / tez / hive调整以允许对最后一个reducer进行并行处理,或者将输入数据除以其他参数来避免大量输入会更聪明?
感谢您的任何建议。