Was ist der Unterschied in Bezug auf Leistung, Ressourcen usw. zwischen der Verwendung eines nicht blockierenden http-Clients und eines blockierenden HTTP-Clients, der auf einem getrennten Threadpool ausgeführt wird. Im letzteren Fall wird der Thread blockiert, aber die Verwendung eines separaten Threadpools reduziert die Auswirkungen auf den Rest der App. Gibt es einen tatsächlichen Unterschied? Es wäre wirklich hilfreich, wenn jemand das klären könnte.blockierender HTTP-Client, der einen getrennten Threadpool verwendet
-3
A
Antwort
0
Der blockierende Client wird mehr Ressourcen verwenden (hauptsächlich wegen zusätzlicher Threads - es bedeutet mehr Kontextwechsel und erhöhte Speicherauslastung aufgrund zusätzlicher Stacks). Ich denke, dass die meisten negativen Auswirkungen durch eine begrenzte Anzahl von Threads im Thread-Pool entstehen können - wenn alle Threads mit lang laufenden Anfragen blockiert werden, müssen "schnelle" Anfragen warten (selbst wenn sie abgeschlossen sind).
Verwandte Themen
- 1. Wann sollte der Threadpool mit der festgelegten Größe verwendet werden?
- 2. Wie verwendet Jetty HttpClient Threads?
- 3. ThreadPool der CLI-Prozesse
- 4. Android HttpClient verwendet keine Systemproxyeinstellungen
- 5. Threadpool im IIS-Kontext
- 6. Kann HttpClient gleichzeitig verwendet werden?
- 7. ThreadPool oder Task.Factory
- 8. Node.js: nicht blockierender Code
- 9. Nicht blockierender Eingang C
- 10. Nicht blockierender Django?
- 11. Einen Threadpool zwischen zwei Klassen teilen
- 12. Wiederholt einen Threadpool in JAVA verwenden
- 13. TaskCreationOptions.LongRunning-Option und ThreadPool
- 14. Wie wird Ninject mit HttpClient verwendet?
- 15. HttpClient .Result hängt, wenn [WebMethod] -Attribut verwendet
- 16. RXCPP: Timeout bei blockierender Funktion
- 17. seltsam Java threadpool Verhalten - verlieren Aufgaben, wenn Futures verwendet werden
- 18. Fehler in Angular HttpClient oder falsch verwendet?
- 19. Threadpool Design Frage
- 20. Wie verwendet man HttpClient korrekt als Klassenbibliothek?
- 21. QThread Threadpool
- 22. Einen SOAP-Service mit HttpClient
- 23. Verwendet CXF 3.1.X Apache HttpComponents - HttpClient?
- 24. C++ Nicht-blockierender asynchroner Timer
- 25. Verwendet WCF das ThreadPool, um neue Instanzen für einen PerCall-Dienst aufzurufen?
- 26. Implementieren nicht blockierender Remote-Logging-Handler
- 27. Erstellen Sie einen Threadpool von ThreadPoolTaskExecutor oder ThreadPoolExecutorFactoryBean?
- 28. Thread vs ThreadPool
- 29. Synchronisieren von Threadpool
- 30. ThreadPool SetMinThreads - die Auswirkungen der Einstellung
Im Allgemeinen eine gut gestaltete App mit einem Selector wird eine höhere Leistung, aber "gut gestaltet" hängt von vielen Details, die Sie nicht geliefert haben. – markspace
dies ist eine zu weite Frage für Stackoverflow. vielleicht hilft das: https://softwareengineering.stackexchange.com/questions/321529/what-are-the-benefits-of-asynchronous-http – pedrorijo91