Oracle
 sql >> база данни >  >> RDS >> Oracle

Асинхронният I/O интензивен код работи по-бавно от неасинхронния, защо?

Асинхронната версия винаги ще бъде по-бавна от синхронната, когато няма паралелност. Той върши същата работа като неасинхронната версия, но с малко добавени допълнителни разходи за управление на асинхронността.

Асинхронността е изгодна по отношение на производителността, като позволява подобрена достъпност. Всяка отделна заявка ще бъде по-бавна, но ако направите 1000 заявки едновременно, асинхронната реализация ще може да ги обработва по-бързо (поне при определени обстоятелства).

Това се случва, защото асинхронното решение позволява на нишката, която е била разпределена да обработва заявката, да се върне обратно към пула и да обработва други заявки, докато синхронното решение принуждава нишката да седи там и да не прави нищо, докато чака завършването на асинхронната операция. Има допълнителни разходи при структурирането на програмата по начин, който позволява на нишката да бъде освободена за извършване на друга работа, но предимството е способността на тази нишка да върши друга работа. Във вашата програма няма друга работа, която да свърши нишката, така че в крайна сметка това е чиста загуба.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Коригиране на грешка ORA-65096 при създаване на автоматизирани тестове в Django с помощта на Oracle

  2. Oracle:Преобразувайте валутната сума в думи с помощта на PL/SQL

  3. Справяне с грешката в Drop Column в Oracle 18c и 19c

  4. Как да вмъкна времева марка в Oracle?

  5. Полезни запитвания за изтичане на паролата/политика/Настройки на oracle EBS