Comments (4)
Resource exhaustion may result in timeouts without any exceptions, or any exceptions that provide enough clues.
from sneakers.
The CPU is 4-core.
from sneakers.
That suggests that your CPU resources are insufficient for the consumer workload and four workers * N threads is too much for them but two workers * N threads is OK. The effective prefetch value is another factor that can potentially be relevant.
from sneakers.
Thanks @michaelklishin ,
How can I be sure that this is the cause? Because I don't see any exception logs occurring, and the consumer is retrying.
Also I see that the CPU monitor is always in a healthy state. threads
is set to 1.
WORKER_OPTIONS = {
ack: true,
threads: 1,
prefetch: 1,
heartbeat: 10,
routing_key: routing_key,
max_retries: 6,
arguments: {
'x-dead-letter-exchange' => "#{queue_name}.dlx",
'x-dead-letter-routing-key' => routing_key,
},
}.freeze
Sneakers.configure amqp: rabbitmq_url,
handler: SneakersHandlers::ExponentialBackoffHandler,
metrics: Sneakers::Metrics::NewrelicMetrics.new,
workers: 4,
......
Best Regards!
from sneakers.
Related Issues (20)
- What is the plan for 2.13.0? HOT 23
- Getting this error while trying to drive watir within my workers HOT 2
- Sneaker close connection with Rabbit after hours inactivity, HOT 5
- If there is a `@` in RabbitMQ password, you may have an `Unexpected error bad URI`. HOT 2
- Is still actively maintained? HOT 7
- Messages not sent from rabbitmq to sneakers
- Is there some potential issues if setting single worker but multi-thread in prd env? HOT 2
- Infinity restart when errors happens inside of hooks
- Stops "ack!"ing after 10 messages HOT 2
- Channels not recovering after server restart HOT 4
- Ruby 3.2.0 File#exists? HOT 1
- Memory leak HOT 2
- Rails 7.0.4.2 - NoMethodError: undefined method `autoloader' for #<Rails::Application::Configuration... HOT 2
- too many accepting and closing AMQP connections in the rabbitmq server logs HOT 1
- Dead letter queue consumption issue HOT 2
- How to Inject code into worker initialization?
- Documentation not very clear on how to handle DB connections when using the gem in a Rails application HOT 2
- Channel shared between threads for MaxRetry handler
- Using up disk space
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sneakers.