Async-to-async (programming)
This article needs more links to other articles to help integrate it into the encyclopedia. (April 2018) (Learn how and when to remove this template message) |
Async-to-async refers to the implementation of a network proxy (like an application server) with multi-threaded non-blocking Asynchronous IO that passes data between 2 sets of threads, one for each pair of request/response socket events; which requires no IO-wait on the CPU while processing data. Also sometimes referred to as Reactive[1] or Event Driven.
All traditional SQL and NoSQL databases use synchronized TCP client connections that forces the proxy to idle on connections with wasted CPU cycles as a result; often leading to resource depletion[2] and consequent failure of services.
With async-to-async you are only limited to memory amount and speed since the proxy needs to store data between threads, unfortunately this means only programming languages that can reference memory between threads natively should be used to implement this solution; C and Java most prominently; excluding popular languages such as PHP, Python, Javascript, Erlang and Go.
This article "Async-to-async (programming)" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Async-to-async (programming). Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.