Netty 微纳背压

Netty 微纳背压,netty,micronaut,backpressure,Netty,Micronaut,Backpressure,我们正在寻找限制Micronaut 2.0.1公开的HTTP端点接受的并发连接数的最佳方法。端点接受图像文件,将其写入磁盘并创建缩略图。由于请求太多,我们的内存不足 到目前为止,我们发现的是。不过,我们怀疑这些措施是否能让我们实施一个具体的限制。它们似乎更多地与Netty事件循环线程池有关 有没有一种成熟的方法可以像Micronaut和Netty那样实现背压?没有现成的配置可以像您希望的那样强制执行并发限制。您可能希望实现一个跟踪当前正在执行的请求的数量,并在数量超过配置的限制时以状态429过多

我们正在寻找限制Micronaut 2.0.1公开的HTTP端点接受的并发连接数的最佳方法。端点接受图像文件,将其写入磁盘并创建缩略图。由于请求太多,我们的内存不足

到目前为止,我们发现的是。不过,我们怀疑这些措施是否能让我们实施一个具体的限制。它们似乎更多地与Netty事件循环线程池有关


有没有一种成熟的方法可以像Micronaut和Netty那样实现背压?

没有现成的配置可以像您希望的那样强制执行并发限制。您可能希望实现一个跟踪当前正在执行的请求的数量,并在数量超过配置的限制时以状态
429过多请求作出响应。类似于下面代码的东西应该可以工作(注意:未测试)

​@推翻

​public Publisher没有现成的配置来强制执行您想要的并发限制。您可能希望实现一个跟踪当前正在执行的请求的数量,并在数量超过配置的限制时以状态
429过多请求作出响应。类似于下面代码的东西应该可以工作(注意:未测试)

​@推翻

​我不认为密克罗纳特和内蒂会帮你解决这种背压。事件如果您限制线程池,则可能由于队列而导致内存不足,或者调用API的线程池将出错。您应该尝试使用Kafka或RabbitMq之类的队列来存储映像,并使用它们进行更多控制。我可以在过载时向调用者发送错误。然后,您必须尝试使用负载测试查找配置,以确保调用者在应用程序崩溃之前收到错误。micronaut服务器和netty的所有可用配置如下:您应该使用micronaut反应式控制器来控制netty线程。对不起,我不能做更多了。嗨,我不认为micronaut和netty会帮你解决这种背压。事件如果您限制线程池,则可能由于队列而导致内存不足,或者调用API的线程池将出错。您应该尝试使用Kafka或RabbitMq之类的队列来存储映像,并使用它们进行更多控制。我可以在过载时向调用者发送错误。然后,您必须尝试使用负载测试查找配置,以确保调用者在应用程序崩溃之前收到错误。micronaut服务器和netty的所有可用配置如下:您应该使用micronaut反应式控制器来控制netty线程。对不起,我不能再多做了。