Joined March 2013
·
Achievements
29 Karma
0 Total ProTip Views
Komodo Dragon 3
Have at least three original repos where Java is the dominant language
Komodo Dragon
Have at least one original repo where Java is the dominant language
Charity
Fork and commit to someone's open source project in need
In any reasonable application, the app logic is intermixed with IO, and you cannot separate them easily. What if your app logic is to poll 10 other servers (or DBs) and combine the results and based on those, you do some recursive operations on DBs and finally you spit out some response. Once you have such intertwined IO and app logic, then blocking is going to kill your performance and you have to employ some async framework in your threaded java environment.
The real problem is that blocking services and modules do not compose, while async ones do (there is the problem of throttling of shared resources, but that can be handled).