Pregunta

Sería 2 niveles una opción válida para este escenario:

  1. base de datos del servidor sql
  2. el negocio nunca requeriría más de un par de cientos de conexiones simultáneas a la base de datos compartida a través de una LAN
  3. el hecho de que (creo) es mucho menos esfuerzo desarrollar un nivel 2
    aplicación
  4. Actualizaciones del programa cliente automatizadas a través de LAN

No hay solución correcta

Otros consejos

Una solución de 2 niveles puede ser más fácil de desarrollar, pero será más difícil de mantener si la aplicación es de cualquier tamaño y / o complejidad.

Si esta aplicación va a ser importante para la empresa y se implementará durante un período de tiempo significativo, creo que encontrará el tiempo extra que pasa separando su presentación, lógica empresarial y acceso a datos en sus propias capas. pagado cuando llega el momento de arreglar cosas, alterar la lógica o extender la aplicación.

Esta es una de esas preguntas donde probablemente obtendrás tantas opiniones diferentes como respuestas.

Puede ser más fácil de desarrollar al principio, pero también creo que le costará a largo plazo si el proyecto no es una herramienta trivial para uso interno solamente.

Si necesita o no 3 niveles debe depender de cuánto tiempo va a mantener el proyecto y cuántas características / actualizaciones está planeando para más adelante. También puede depender de cuántos errores está dispuesto a aceptar (y corregir). La OMI de 3 niveles tiende a crear un software más estable.

Ambas respuestas parecen estar casi diciendo que es obvio que 3 niveles es una solución superior. tal vez

Rockford lhotka parece estar discutiendo que debería ir con 2 niveles a menos que el costo beneficio El análisis de su situación particular se reduce a favor de 3 niveles.

él dice:

  

Como buen arquitecto, debería ser arrastrado pateando y gritando para agregar niveles a su sistema.

La seguridad que sugiere es la única área en la que una solución de 3 niveles es claramente superior.

Y él argumenta que

  

Peor aún, los límites agregan complejidad cruda al diseño de software, la infraestructura de red, la capacidad de administración y el mantenimiento general de un sistema. En resumen, cuantos más niveles haya en una aplicación, más complejidad habrá para tratar con & # 8211; lo que aumenta directamente el costo de compilar y mantener la aplicación.

Finalmente, con respecto a la escalabilidad, me gustaría saber si es cierto que si usa conjuntos de registros desconectados en ado para el acceso a datos, tiene una agrupación de conexiones por defecto y, por lo tanto, un alto grado de escalabilidad de todos modos.

Copiado del libro de Charles Williams Bases de datos profesionales de Visual Basic 6: -

  

2 niveles frente a N niveles

     

Elegir entre un nivel 2 y un nivel n   los modelos parecen ser lo que hay en las personas   mentes Hay tantas variables para   factor en la ecuación (incluyendo   preferencia) que ningún libro puede   determinar la mejor estructura para su   modelo cliente-servidor. Algunos de estos   Las variables pueden incluir:

     
    

La flexibilidad y el poder de su servidor de base de datos elegido. De hoy     los servidores de bases de datos son capaces de     manejando cientos o incluso miles de     conexiones concurrentes sin moverse     a una arquitectura de 3 niveles.

         

La potencia y versatilidad de la CPU que aloja el servidor. El mas poderoso     la CPU cuanto más rápido será el servidor     manejar las tareas solicitadas.

         

Cuánto rendimiento se está ejecutando en el servidor y cuántos consecutivos     existen conexiones Puede tener pocos o     muchas conexiones y cada conexión     puede pasar pocas o muchas solicitudes.

         

El factor económico. ¿Cuánto está dispuesto a gastar en su sistema?     Por lo general, un sistema de n niveles costará     más para desarrollar y mantener. Si tu     puede salir adelante con una solución de 2 niveles que     puede ahorrar una gran cantidad de dinero.

  

Para mí, esto parece sugerir que a menos que esté desarrollando una aplicación basada en web (muy popular) ese nivel 2 puede ser la opción más lógica.

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