-
Notifications
You must be signed in to change notification settings - Fork 14
Closed
Description
The current code does a non blocking read and retries after 50ms if no message was received. This wastes 50ms per job published:
time="2018-06-12T13:11:51.289605092Z" level=debug msg="received empty job" retries=0 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.3399403Z" level=debug msg="republished job" duration=62.436µs id=264fee23-13a2-4835-b091-138ed0c0cfb3 source="amqp/amqp.go:400"
time="2018-06-12T13:11:51.340008442Z" level=debug msg="received empty job" retries=0 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.390390193Z" level=debug msg="republished job" duration=102.438µs id=4441f18d-425b-41fd-90d8-e030b929076b source="amqp/amqp.go:400"
time="2018-06-12T13:11:51.390468293Z" level=debug msg="received empty job" retries=0 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.440788261Z" level=debug msg="republished job" duration=66.511µs id=c2daff16-97a7-4bd8-a7e7-0d5e6b6011b2 source="amqp/amqp.go:400"
time="2018-06-12T13:11:51.440856836Z" level=debug msg="received empty job" retries=0 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.491297249Z" level=debug msg="republished job" duration=109.879µs id=7ab5e472-ef93-4596-8c45-380096ca1425 source="amqp/amqp.go:400"
time="2018-06-12T13:11:51.491402971Z" level=debug msg="received empty job" retries=0 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.541833233Z" level=debug msg="republished job" duration=97.156µs id=7d5d28f5-5c88-4927-bfa5-0d1c13e34242 source="amqp/amqp.go:400"
time="2018-06-12T13:11:51.541908884Z" level=debug msg="received empty job" retries=0 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.592080956Z" level=debug msg="received empty job" retries=1 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.642332159Z" level=debug msg="received empty job" retries=2 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.692657338Z" level=debug msg="received empty job" retries=3 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.743047815Z" level=debug msg="received empty job" retries=4 source="amqp/amqp.go:360"
time="2018-06-12T13:11:51.743236765Z" level=debug msg="maximum number of retries reached" max-retries=3 retries=4 source="amqp/amqp.go:371"
time="2018-06-12T13:11:51.743286551Z" level=debug msg="rejecting 0 non complying jobs" source="go-log.v1/default.go:51"
time="2018-06-12T13:11:51.745363Z" level=info msg="stopping republishing jobs" source="go-log.v1/default.go:56"
Change to a blocking channel read with a timer:
https://github.com/src-d/go-queue/blob/master/amqp/amqp.go#L502-L513
Metadata
Metadata
Assignees
Labels
No labels