Bir veritabanına eşzamansız arama yapmanın bir yolu var mı acaba?
Örneğin, işlemek için çok uzun zaman alan büyük bir isteğim olduğunu düşünün, istek göndermek ve istek bir değer döndürdüğünde bir bildirim almak istiyorum (bir Dinleyici / geri arama veya bir şey ileterek). Ben veritabanı cevap beklemek engellemek istemiyorum.
Bir iş parçacığı havuzu kullanmanın bir çözüm olduğunu düşünmüyorum çünkü ölçeklenmiyor, ağır eşzamanlı istekler durumunda bu çok fazla iş parçacığı oluşturacak.
Ağ sunucuları ile bu tür bir sorunla karşı karşıyayız ve bağlantı başına bir iş parçacığına sahip olmaktan kaçınmak için select / poll / epoll sistem çağrısı kullanarak çözümler bulduk. Ben sadece veritabanı isteği ile benzer bir özellik var merak ediyorum?
Not: FixedThreadPool kullanmanın iyi bir çözüm olabileceğinin farkındayım, ancak hiç kimsenin (asgari iş parçacığı kullanmadan) gerçekten eşzamansız bir sistem geliştirmediğine şaşırdım.
** Güncelleme **
Gerçek pratik çözümlerin olmaması nedeniyle kendim bir kütüphane (finagle'ın bir parçası) oluşturmaya karar verdim: finagle-mysql . Temelde mysql isteğini / yanıtını çözer / çözer ve başlık altında Finagle / Netty kullanır. Çok sayıda bağlantıyla bile son derece iyi ölçeklenir.