Estos días un cliente nos pidió desarrollar una interfaz entre él y un proveedor, el cual le enviaría todos sus artículos para el los pueda usar. La integración seria bajo archivos xml con mucha - pero mucha - información. Bien, yo ya tenia listo el desarrollo y me toco probarlo y solicitamos que nos envíen datos de prueba, para sorpresa mía enviaron cerca de 2 millones de artículos en total, a lo cual yo dije esto debe ser una prueba de stress y que no ocurría en la realidad, pero lamentablemente era un caso real y esta carga se realizaría varias veces en el año. Me dispongo a probar y para sorpresa mía el proceso se demoraría mas de 24 horas en procesar los 2MM de registros, donde el cuello de botella es principalmente la base de datos (según mis cálculos mas de 36), lo cual es realmente impresentable. Después de la frustración de saber que lo que había desarrollado no servia para prácticamente nada, decidí implementar hilos y tareas con Parallel.ForEach lo cual redujo e