NGINX använder en asynkron, händelsestyrd arkitektur för att hantera många anslutningar med få processer, vilket sparar minne och CPU-cykler. Trots NGINX:s effektiva design utgör "blockerande operationer" ett problem, då de kan stoppa hela händelsehanteringscykeln och försämra prestandan avsevärt. Exempel på blockerande operationer inkluderar långa CPU-intensiva processer eller väntan på resursåtkomst som att läsa från en långsam hårddisk. För att lösa problemet med blockerande operationer introducerades "trådpooler" (Thread Pools) i NGINX version 1.7.11 och NGINX Plus Release 7. Trådpooler fungerar genom att NGINX-arbetsprocessen lägger potentiellt långa operationer i en kö som hanteras av separata trådar, vilket frigör arbetsprocessen att fortsätta hantera andra händelser omedelbart.