Ni siquiera podrás mostrarlos en el viewport del usuario. Estás obteniendo 25 reservas. En algunos casos, estas 25 reservas son objetos anidados porque en GraphQL tienes flexibilidad para consultar campos dentro de campos dentro de campos, ¿verdad? Entonces puede haber muchos campos anidados. Sí, eso podría afectar el rendimiento de tu aplicación. Y como dije, ya sabes, si lo ves en la URL como podrías entender. Sí, podrías entender que esta consulta anidada en particular también está afectando el rendimiento.
Me silencié y ahora me des-silencié. Bienvenido al mundo digital. Es como, es como, esto es algo nuevo, reunirse de forma remota. Entonces el rendimiento es, por supuesto, bueno, uno de los temas más importantes para hacer una buena aplicación web. Por supuesto, hay muchas cosas que hacen una buena aplicación web. Y, bueno, la paginación es una cosa que puedes hacer, pero ¿hay alguna otra cosa en la que puedas pensar que pueda ayudar, por supuesto, con GraphQL para mejorar el rendimiento?
Sí, de hecho, ya sabes, como usar, diferir algunos campos en particular que no necesitas en el viewport del usuario, vi una charla de Uri que diferentes directivas de transmisión son bastante poderosas y son compatibles con GraphQL Yuga. Entonces, con estos campos, realmente no obtenemos, ya sabes, lo que no se requería en la interfaz de usuario, en la carga inicial por el usuario. Así que eso es bastante bueno para mejorar el rendimiento de tu aplicación. Pero más que eso, en nuestra aplicación, lo que hemos visto es simplemente obtener, ya sabes, obtener menos campos. En el lado del frontend, creemos que deberíamos obtener cinco o seis campos más y habrás terminado con la tarea que te han asignado, ¿verdad? Pero no entendemos que estos cinco o seis campos van a todos tus servicios secundarios. Ahí es cuando te das cuenta, ahí es cuando entiendes que el costo de esta consulta está afectando dos o tres consultas a la base de datos, afectando dos o tres servicios secundarios. Ahí es cuando te das cuenta de que va a llevar más tiempo. Sí. Sí. A veces, si entiendo correctamente, agregas dos o tres campos más a tu consulta y piensas que son solo dos o tres campos más, pero en realidad puede ser una consulta muy pesada. Entonces, básicamente, el consejo sería siempre estar monitoreando. Cuando estás editando una consulta, estar monitoreando, estar atento a lo que está sucediendo, probar antes, probar después, y asegurarte de no ralentizar significativamente tu aplicación. Sí, sí, absolutamente. De acuerdo, genial. Entonces, bien. Eso es bueno. Y volviendo un poco al lado de la interfaz de usuario. Entonces estamos diciendo que solo obtengas lo que está en el viewport, pero ¿también estás usando algo como pantallas de esqueleto en la interfaz de usuario? Sí, sí. Entonces, mientras obtienes tus datos, puedes aprovechar, como estamos usando suspense, ¿vale? Suspense en React, donde puedes mostrar el esqueleto de tu interfaz de usuario hasta que obtengas los datos, obtienes una mejora en el rendimiento percibido en el lado de la interfaz de usuario.
Comments