Pregunta

¿Cuáles son las ventajas y desventajas de DTOs de un sitio web perspectiva de rendimiento?(Estoy hablando en el caso de que la base de datos se accede a una aplicación diferente del servidor para el servidor web y el servidor web puede acceder a la base de datos directamente.)

¿Fue útil?

Solución

DTO no son un desempeño de preocupación.Creo que lo que están pidiendo es acerca de las implicaciones de rendimiento de la jerarquización.En particular, el uso de una aplicación de nivel entre la capa web (servidor web) y de la capa de datos (servidor de base de datos).

En general, las consecuencias son que la latencia es mayor (tiene extra de la red de viajes de ida y vuelta), pero la ganancia adicional de la capacidad de dividir la carga entre las máquinas.

Otra razón común (de nuevo, la falta de desempeño) que haría la gente que es permitirles colocar el servidor web de la DMZ, manteniendo la aplicación y los servidores de base de datos dentro del servidor de seguridad.

Otra posible razón (no rendimiento) es la capacidad de conectar múltiples de la UIs en la parte superior de una sola aplicación.He hecho esto en el pasado en proyectos con grandes resultados (donde el negocio lo requiere).

Además, no hay que subestimar el trabajo que se requiere para mantener una arquitectura de esa naturaleza.Es más trabajo que un no-niveles solución, por lo que sólo lo use si usted piensa que va a necesitar de ti.

Dicho esto, el uso de DTOs no requiere el uso de Interconexión.

La mejor descripción que he encontrado de la jerarquización viene de Martin Fowler libro, el Análisis de los Patrones.Hay una pequeña sección en la parte de atrás en la aplicación de las fachadas y la jerarquización.

Sólo para reiterar la respuesta anterior, DTOs no son un desempeño de preocupación.Es sólo una clase sin métodos utilizados para proporcionar aislamiento entre las diferentes partes de tu aplicación.

También me gustaría sugerir recoger Martin del otro libro, Patrones de Arquitectura de Aplicaciones Empresariales.El DTO "el patrón" está documentado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top