我在生产中使用 Kafka。许多服务向其中发送和读取消息。
一切正常,但我在一项服务中遇到了错误。出于一个奇怪的原因,它每秒向 Kafka 发送数百万条消息。
由于这个错误,我的 Kafka 崩溃了。
这不是 Kafka 错误,但我怎样才能保护它免受潜在的洪水影响?
我在生产中使用 Kafka。许多服务向其中发送和读取消息。
一切正常,但我在一项服务中遇到了错误。出于一个奇怪的原因,它每秒向 Kafka 发送数百万条消息。
由于这个错误,我的 Kafka 崩溃了。
这不是 Kafka 错误,但我怎样才能保护它免受潜在的洪水影响?
升级到 Kafka 0.9 并启用Quotas。
您需要对服务进行一些限制,以免淹没 Kafka。一种选择是使用 Apigee。
事实上,使用 Apigee,您可以限制响应。这可以通过两种方式完成;
此外,如果您想保持自定义,请查看 Volos 或 Apigee 127,这也是 Apigee 创建的一个很棒的开源项目。
希望这可以帮助。
实际上,最后一点;我会解决根本原因;为什么会收到 1mio 请求?或者这是预期的行为?