Cómo implementar una base de datos en la nube compartida para mi Android y aplicaciones web

La mejor manera de hacerlo es simplemente usando una instancia elástica de MongoDB de MongoLabs. Puede usarlo en todas sus aplicaciones a través de una API REST, que puede diseñar usando:

  1. NodeJS – Restify / Express / Sails.js
  2. Python – Frasco, Django

Estos son los mejores y más fáciles en el negocio para desarrollar API de aplicaciones móviles. También puede tener un punto final web.

¿Por qué usar Mongo?

  1. Es fácil de configurar y configurar.
  2. NoSql le brinda los beneficios de cambiar el esquema de manera fácil y dinámica.
  3. MongoDB se puede ampliar fácilmente a medida que crece el negocio.
  4. Implementación API fácil de usar (muy fácil de integrar en NodeJS).
  5. Controladores disponibles para todos los idiomas populares: Python, .NET, Java, Go, Scala, Clojure.

He implementado API livianas para que las aplicaciones móviles se comuniquen en una base de datos compartida usando NodeJS, y no hay nada más fácil que esto.

Espero que esto ayude. Si necesita ayuda con una implementación basada en un idioma en particular, no dude en comentarme / enviarme un mensaje.

Trabajé en una aplicación como esta, pero no hice el trabajo de diseño inicial. Lo que estás haciendo suena mucho así. El problema con el que nos encontramos fue que los usuarios estarían en el campo utilizando un PDA para recopilar datos, pero no tenían acceso a Internet, por lo que los datos que recopilaron no podían enviarse directamente a la base de datos principal. Tuvieron que esperar hasta tener acceso a la red y luego harían una sincronización que cargaría todos los datos a la base de datos principal. Los desarrolladores originales tenían todo funcionando (aunque no muy bien), excepto que no sabían cómo subir fotos. Aparentemente, no eran muy buenos en la planificación previa y solo se preocupaban por los problemas a medida que aparecían y no anticipaban posibles problemas.

El sitio web siempre debe estar conectado a la base de datos principal. Como sitio web, siempre tiene acceso a Internet y, como tal, acceso constante a la base de datos en la nube (odio esa palabra). Construir la web y la base de datos con eso en mente hacen que sea lo más funcional posible.

La aplicación de Android debe tener su propia base de datos como parte de la aplicación y todos los datos recopilados deben ir allí. Una vez que el usuario puede obtener acceso a Internet, debe haber una opción que permita que la aplicación se conecte a la base de datos en la nube y mediante el uso de declaraciones SQL (procedimientos almacenados AKA), la aplicación carga todos los datos a la base de datos man.

Ahora, alguien debe validar que todos los datos recopilados se movieron realmente, incluidas todas las imágenes, si corresponde. Una vez que se han verificado los datos, se debe establecer alguna variable para que cuando la aplicación de Android se conecte a la base de datos principal, verifique estas variables. Si están configurados, elimina los datos asociados en su propia base de datos. Asegúrate de deshacerte de las fotos capturadas también. Todas estas cosas ocupan memoria que puede ser muy importante en Android.

Dices que ya tienes la aplicación y el sitio web creados, así que espero que hayas tenido en cuenta todas estas cosas. El método que usaban los programadores originales para cargar los datos era un servicio, pero tuve la impresión de que realmente no sabían cómo usarlo. Crearon el servicio ellos mismos, por lo que no es como si no tuvieran control sobre él. Simplemente no creo que entendieran quiénes se supone que deben trabajar esas cosas. No puedo darle ningún detalle (por varias razones), pero observe todas las tecnologías posibles que se utilizan para conectar un Android a un sitio web y cargar datos. Averigua cuál es el más fácil de usar, el que mejor entiendes, y construye la interfaz en esa línea.

Espero que esto ayude.

Por lo tanto, necesitará un idioma del lado del servidor en el que publicar los datos de la aplicación. Si crea el código del lado del servidor como una base de código basada en API, tanto el sitio web como la aplicación móvil pueden usar la API para administrar los datos.

Como conoce Java, es posible que desee seguir con eso, de lo contrario puede usar casi cualquier lenguaje del lado del servidor para crear la API (ejemplos: PHP, ruby, Python, alguna variante .net, etc.)

Es genial que hayas hecho tanto.
Ahora todo lo que necesitas hacer es

Cree una API Restful para la aplicación o el servicio web que desee.
Dado que existen varios métodos para crear Restful API, lo recomendaría al utilizar los lenguajes más utilizados, como python o php.

Luego guarde su base de datos en la nube a través de proveedores de alojamiento web.

Vincula tu API con la base de datos

Luego proporcione la URL para su API en el código de Android y WHOLA que haya terminado.
Si encuentra algún problema, puede ir a YouTube para obtener las mejores soluciones

More Interesting

¿Por qué los desarrolladores de back-end hacen que los desarrolladores de front-end se sientan insignificantes?

¿Es cierto que los desarrolladores frontend son fácilmente reemplazables y menos valiosos que los desarrolladores backend?

JavaScript (lenguaje de programación): ¿Cuáles son algunas ideas para una biblioteca Javascript amigable para los niños?

¿Debo contratar desarrolladores independientes de front-end y back-end?

Cómo encontrar diseñadores web experimentados para una colaboración a largo plazo

¿Cuáles son los frontend y backend de cualquier aplicación de Android?

Soy un desarrollador de PHP con muchos años de experiencia, principalmente en Back End Development. Quiero aprender cosas nuevas, algo requerido en el mercado que paga bien. ¿Qué debo esperar?

¿Cuál es el mejor lenguaje / marco para un back-end diseñado para interactuar con varias plataformas (aplicación iOS, habilidad Alexa, sitio web, etc.)?

¿Debo continuar con el desarrollo front-end o cambiar al backend?

Quiero ser un desarrollador de Java. Estoy confundido con las tecnologías de desarrollo front-end y back-end. ¿Cuál debo elegir para ser desarrollador de Java?

¿Puedo construir un sitio web de red social atractivo y funcional usando solo ASP.NET, C # y SQL para back-end y HTML y CSS para front-end?

¿Qué idiomas de back-end debes conocer para el desarrollo web?

¿Cuáles son las mejores tecnologías para el desarrollo front-end y back-end?

¿Qué significa "back end" en el desarrollo de software?

¿Cuáles son algunas de las ventajas que Node.js tiene sobre otros marcos de back-end?