¿Qué ocurre en el mundo de las tecnologías del lado del servidor en relación con el auge de las aplicaciones móviles?

12

Con las tecnologías móviles cada vez más populares, ¿qué sucede en el lado del servidor con la mayoría de estas aplicaciones cuando necesitan comunicarse con un back-end?

Estoy acostumbrado al mundo de la tecnología desde hace 10 años, cuando se accedió a la mayoría de los recursos al solicitar una página web dinámica que detrás de lo visto usó un lenguaje del lado del servidor para obtener la información que necesitaba de una base de datos relacional.

¿Esto sigue siendo el caso y, de no ser así, cuáles son los grandes cambios?

    
pregunta Akromyk 27.09.2012 - 06:56

5 respuestas

7

Desde lo alto de mi cabeza:

  1. Uso de servicios web en lugar de acceso directo a la base de datos del cliente.
  2. RESTO en lugar de jabón. SOAP parece ser demasiado pesado para la comunicación móvil con backend. REST utilizando JSON es mucho más sencillo de configurar y consumir. Especialmente si utiliza diferentes tecnologías en el cliente y el servidor.
  3. Enfocarse en múltiples vistas para páginas web. Uno para escritorio y otro para móvil. Debería ser fácil si alguien usa MVC, pero sigue siendo bastante problemático.

Probablemente hay más. Las aplicaciones móviles se consideran en su mayoría clientes normales, que consumen datos y los muestran.

    
respondido por el Euphoric 27.09.2012 - 07:28
6

Tecnologías

  • RESTful API utilizando JSON como serialización - Las aplicaciones nativas, aplicaciones híbridas y aplicaciones web móviles utilizan la misma API. Incluso en el caso anterior, las plantillas del lado del cliente se utilizan con frecuencia (consulte el ejemplo excelente en " Dejando JSP en el polvo: moviendo LinkedIn a las plantillas del lado del cliente de dust.js ")

  • Servidores ligeros, asíncronos (controlados por eventos) : no más Apache pre-fork. Nginx, node.js, Twisted, Tornado, etc. se utilizan ahora.

  • OAuth / inicio de sesión social : los usuarios esperan no tener que registrar una cuenta para cada aplicación individual. Así, la mayoría de las aplicaciones permiten iniciar sesión con FB, TW y otros proveedores. Para FB, tanto Android como iOS proporcionan la opción Single-Sign-On .

Cosas a considerar

  • Las redes móviles tienen latencias muy altas;
  • Es normal que los clientes pierdan conexiones;
  • Es normal que un cliente cambie la IP durante la sesión;
  • Los móviles no son tan poderosos como los equipos de escritorio / portátiles;
respondido por el vartec 27.09.2012 - 15:45
4

RESTO es la mitad de la historia. Lo más interesante que los protocolos más ligeros en el cable son los servidores y las pilas de aplicaciones web más ligeros: las solicitudes a gran escala de datagramas pequeños en comparación con el HTML renderizado comparativamente grueso significa que tiene diferentes requisitos. Algunos ejemplos:

  • node.js es probablemente el ejemplo canónico de esto. La mayoría de las personas se cuelgan de la función javascript-on-the-server, pero eso es una pista falsa: genial para los niños que no pueden avanzar más allá de js, pero no importa. La parte realmente ingeniosa es la naturaleza asincrónica que hace que se amplíe de manera insana, especialmente cuando se prestan servicios RESTful pequeños y agudos. Algunas otras pilas con similitudes se torcerían para python o manos de mono para .NET.

  • nginx utiliza una gran cantidad de la misma IO (libuv) con evento que hace node.js, y está limpiando el mercado de servidores en algunos círculos. Mucho más enfocado que apache y increíblemente rápido.

  • Las pilas de servidores delgados están apareciendo en entornos que tradicionalmente tenían marcos gruesos que hacían muchas suposiciones. IE, en rubí tienes sinatra para contrapesar rieles. En Python tienes un matraz [y otros] para contrarrestar el django. En .NET tienes la WebAPI para compensar MVC y WebForms. Todas las pilas que mencioné son muy, muy finas y están más (o totalmente) enfocadas en servir datagramas y no páginas web. Ninguno de los que menciono presenta el tipo de plantillas y ORM que uno espera de una pila web típica en estos días.

Dicho todo esto, la mayoría de las veces alguien está sirviendo su aplicación móvil al piratear la aplicación web del lado del servidor existente de 10 años para servir a json en un punto final HTTP diferente. El mundo no ha cambiado tanto, la administración seguirá cojeando en dos ruedas y una dona si creen que pueden salirse con la suya.

    
respondido por el Wyatt Barnett 27.09.2012 - 15:37
1
  

¿Esto sigue siendo el caso y, de no ser así, cuáles son los grandes cambios?

Creo que todavía hay aplicaciones que usan la arquitectura del lado del servidor o del servidor del cliente mencionada. Sin embargo, en los últimos años hay un gran movimiento hacia SOA (Service Oriented Architecture) . Por lo tanto, la comunicación a través de servicios seguros abre nuevas capacidades a todas las aplicaciones cliente, y al mismo tiempo accede / reutiliza los servicios empresariales de back-end.

Con los mercados emergentes de dispositivos móviles y tabletas, es cada vez más importante utilizar servicios HTTP como un importante canal de comunicación. para proporcionar un servicio extendido a las aplicaciones cliente.

    
respondido por el EL Yusubov 27.09.2012 - 13:01
1

La mayoría de los back-ends ahora admiten JSON y REST y no solo SOAP. Aparte de eso, no hay mucha diferencia entre un front-end web y una aplicación móvil. Creo que la mayoría de los desafíos para las aplicaciones móviles están en la parte delantera (la mejor manera de ajustar la información en una pantalla más pequeña). Algunas aplicaciones están comenzando a aprovechar las capacidades móviles (como los informes de ubicación), pero están en ambos extremos.

    
respondido por el TMN 27.09.2012 - 14:41

Lea otras preguntas en las etiquetas