Skip to content

Commit 09963c0

Browse files
committed
Add Async disadvantages and further reading sections
1 parent 492a2be commit 09963c0

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1432,3 +1432,14 @@ Tasks queues receive tasks and their related data, runs them, then delivers thei
14321432
### Back pressure
14331433

14341434
If queues start to grow significantly, the queue size can become larger than memory, resulting in cache misses, disk reads, and even slower performance. [Back pressure](http://mechanical-sympathy.blogspot.com/2012/05/apply-back-pressure-when-overloaded.html) can help by limiting the queue size, thereby maintaining a high throughput rate and good response times for jobs already in the queue. Once the queue fills up, clients get a server busy or HTTP 503 status code to try again later. Clients can retry the request at a later time, perhaps with [exponential backoff](https://en.wikipedia.org/wiki/Exponential_backoff).
1435+
1436+
### Disadvantage(s): asynchronism
1437+
1438+
* Use cases such as inexpensive calculations and realtime workflows might be better suited for synchronous operations, as introducing queues can add delays and complexity.
1439+
1440+
### Source(s) and further reading
1441+
1442+
* [It's all a numbers game](https://www.youtube.com/watch?v=1KRYH75wgy4)
1443+
* [Applying back pressure when overloaded](http://mechanical-sympathy.blogspot.com/2012/05/apply-back-pressure-when-overloaded.html)
1444+
* [Little's law](https://en.wikipedia.org/wiki/Little%27s_law)
1445+
* [What is the difference between a message queue and a task queue?](https://www.quora.com/What-is-the-difference-between-a-message-queue-and-a-task-queue-Why-would-a-task-queue-require-a-message-broker-like-RabbitMQ-Redis-Celery-or-IronMQ-to-function)

0 commit comments

Comments
 (0)