buscando algunos consejos generales y/o pensamientos ...procesamiento paralelo frente a procesamiento del lado del cliente + ajax?
Estoy creando lo que creo que es más una aplicación web que una página web, porque pretendo que sea como una aplicación de Gmail donde se iría la página se abre durante todo el día mientras se "empujan" las actualizaciones a la página (para el interesado estoy usando la técnica de programación del cometa). Nunca antes había creado una página web tan rica en ajax y javascript (ahora soy un gran admirador de jquery). debido a esto, una y otra vez cuando estoy implementando una nueva característica que requiere un cambio dinámico en la UI que el servidor necesita saber, me enfrento con la misma pregunta:
1) ¿debería hacer todo el procesamiento en el cliente en javascript y publicar lo menos posible a través de ajax o 2) debo publicar una solicitud al servidor a través de ajax, hacer que el servidor haga todo el procesamiento y luego devolver el nuevo html. luego, en la respuesta ajax, realizo una tarea sencilla con el nuevo HTML
. Siempre me he sentido inclinado a seguir el # 1. esta aplicación web, imagino, puede ser muy hablador con todas las solicitudes de Ajax. Mi idea es minimizar al máximo el tamaño de las solicitudes y las respuestas, y confiar en que los motores de JavaScript mejoran continuamente para hacer la mayor cantidad posible de actualizaciones de UI y de procesamiento. He descubierto con jquery que puedo hacer tanto en el lado del cliente que no podría haberlo hecho antes. mi código de JavaScript es en realidad mucho más grande y más complejo que mi código de servidor. también hay calculcaciones simples que debo realizar y también las he impulsado en el lado del cliente.
Supongo que la principal pregunta que tengo es, ¿SIEMPRE debemos esforzarnos por el procesamiento del lado del cliente sobre el procesamiento del lado del servidor siempre que sea posible? Siempre he sentido que, cuanto menos tenga que manejar el servidor, mejor será para la escalabilidad/el rendimiento. deje que el poder del procesador del cliente haga todo el trabajo (si es posible).
thoughts?
Lo viejo es nuevo y lo nuevo es viejo otra vez. :) – NotMe