Spark 1.6 可以配置为使用 AKKA 或 Netty 进行 RPC。如果配置了 Netty,这是否意味着 Spark 运行时不使用 Actor 模型进行消息传递(例如,在工作程序和驱动程序块管理器之间),或者甚至在 Netty 配置的情况下,依赖于 Netty 使用自定义简化的 Actor 模型。
我认为 AKKA 本身依赖于 netty,而 Spark 仅使用 AKKA 的一个子集。不过,与 Netty 相比,配置 AKKA 是否更具有可扩展性(就工作人员数量而言)?对这个特定的火花配置有什么建议吗?
向量查询请求的速率[3秒],速率(请求[3秒])(由所示公式计算)为:
我的问题是:在第 5、4 和 3 秒计算的sum(rate(requests[3 sec]))分别是 16.5、6.5 和 1。有什么想法吗?
prometheus prometheus-operator prometheus-alertmanager prometheus-node-exporter prometheus-blackbox-exporter
我使用 Kafka Strimzi 运算符在 Kubernetes 上运行 Kafka。我通过使用以下内容配置我的消费者来使用增量粘性重新平衡策略:
ConsumerConfig.PARTITION_ASSIGNMENT_STRATEGY_CONFIG,
org.apache.kafka.clients.consumer.CooperativeStickyAssignor.class.getName()
Run Code Online (Sandbox Code Playgroud)
每次我扩展消费者组中的消费者时,该组中的所有现有消费者都会生成以下异常
线程“main”中出现异常 org.apache.kafka.common.errors.RebalanceInProgressException:由于使用者正在进行自动分区分配的重新平衡,因此无法完成偏移提交。您可以尝试通过调用 poll() 来完成重新平衡,然后重试该操作
知道导致此异常的原因和/或如何解决它吗?
谢谢。
Apache Flink 通过从检查点恢复作业来保证故障时的一次性处理和恢复,检查点是分布式数据流和算子状态的一致快照(分布式快照的 Chandy-Lamport 算法)。 这保证了故障转移时恰好一次。
在集群正常运行的情况下,Flink 如何保证一次处理,例如给定一个从外部源(比如 Kafka)读取的 Flink 源,Flink 如何保证事件从源读取一次?事件源和 Flink 源之间是否存在任何类型的应用程序级别确认?另外,Flink 如何保证事件从上游算子到下游算子只传播一次?这是否也需要对收到的事件进行任何类型的确认?
对于 Flink 流/Flink 有状态功能,已知较小setBufferTimeout的值(例如 5 毫秒)将提供“最佳”延迟体验。在优化 Flink 流或有状态函数作业中的延迟时,必须注意的其他推荐配置值(设置、重置、修改......)是什么?
apache-flink ×2
apache-kafka ×2
akka ×1
apache-spark ×1
exactly-once ×1
kubernetes ×1
netty ×1
prometheus ×1
prometheus-blackbox-exporter ×1
rpc ×1
strimzi ×1