一般来说,围绕被动异步代码异步处理请求(play,akka,netty等)存在巨大的噱头。 以这种方式执行代码时,建议不要在任何地方阻止和使用异步库。 如果我正确理解这一点,这种方式,而不是为每个请求创建一个线程,我们最终有线程执行者为这些库带来的执行的多个部分(主要处理请求,异步调用服务执行程序,异步数据库驱动程序执行程序等)如何实现异步数据库库?
这种方式执行最终分裂成多个线程(=在多个执行者中)。 这些异步库如何实现以便带来任何好处?因为在异步数据库驱动程序具有执行程序的情况下,该程序运行一个简单地等待数据库答案的线程,所以我认为它不会带来任何好处。我们最终会等待任何东西,只需创建额外的线程来执行,等待不会有任何帮助。还是呢?
这些库使用固定大小的线程池和异步IO。他们不会为每个请求打开一个新线程。 –
而且你知道,这不是一个好问题。您列出了各种不同的框架;你在找什么?有人向你详细解释这些工作是如何在内部工作的? – GhostCat