我正在尝试使用2.0 / 1.0版本运行流式数据流, 我们的SLA不到100毫安,而且它正在传入消息 4次转换。
1)第一次转化小于10毫秒。
2)第二次转换正在处理bigtablet和一些侧输入少于5 mb的数据,并且小于30-40毫秒。
3)第三次转换很重要 - >
第三次转换有三个侧输入2小于5 mb 第三个包含决策树模型文件(77),大约127 mb。
我使用JPMML-Convertor库进行预测,使用决策树模型文件,第一次需要400毫秒,单词需要30-40毫米。
为了避免前400毫米我制作了一个静态变量并为其分配了侧输入数据,这就解决了这个问题。
第三次转换中的所有处理逻辑大约需要50毫安。
但是消息从第二次转换(发射后)到第四次转换所需的时间大约为1-2秒。
我不明白问题是什么,因为我在日志中没有看到任何警告或错误消息。
在数据流UI中如果我选择第三个转换,我可以看到第二个转换已经发出了消息,但第三个转换没有收到该消息。
可能正在准备新实例,因为我看到我在startBundle方法中为单一方法打印了很多日志。
我有时会看到以下警告:
无法从网络接口找到可用的硬件地址;使用随机字节:7b:e5:7f:8a:22:9c:fc:6a
我使用以下配置:
工人机器类型:n1-standard-4
workerCacheMemoryMB:3072
我尝试了两个数据流1.x / 2.x版本。
对此的任何建议都会非常有用。
如果您需要更多详细信息,请发表评论。
感谢。