¿Cuál es mejor para el usuario entre Parse, Firebase y AWS Cognito? [cerrado]


Estoy dispuesto a usar el servicio de sincronización para mi aplicación. Pero quiero elegir la mejor. Quiero saber cuál es mejor entre todos estos. Mi aplicación se ejecutará en Android, IOS, Windows y Web.

Voy con Firebase porque lo probé. Me está dando resultados rápidos y también me está permitiendo trabajar fuera de línea. ¿Es mejor o iré con Parse o AWS Cognito?

También tengo una opción de Google Cloud. ¿Google Cloud proporciona servicios como Firebase? ¿Y son posibles las actualizaciones en tiempo real con Parse como like Firebase?

Author: Yves M., 2014-12-31

1 answers

Codeek tiene un buen punto de que esta pregunta se basa en la opinión, así que tome mi respuesta con un grano de sal.

Tengo experiencia tanto con Parse como con Firebase, pero no con Cognito. En mi experiencia, Analizar es mejor cuando se trabaja con grandes bases de datos basadas en relaciones. (Es decir, bases de datos donde múltiples clases de objetos se apuntan entre sí e interactúan.) En este sistema, es fácil almacenar una gran cantidad de datos de forma muy sucinta, pero el trabajo con estos datos se realiza a través de instantáneas. Esto significa que puede tomar una instantánea de los datos, editarla y, a continuación, actualizar el servidor con la instantánea actualizada. Esto es perfecto para cosas como mi aplicación de entrega donde solo un usuario está actualizando los pedidos en nuestro servidor a la vez.

Firebase implementa un esquema modelo-observador, por lo que es mucho mejor para aplicaciones que son altamente interactivas. Por ejemplo, he utilizado Firebase para crear un juego en tiempo real de hot potato. La ventaja aquí es que los cambios en los datos en el los servidores se envían automáticamente a todos los dispositivos que se han registrado como oyentes (la funcionalidad no está disponible en el análisis de mi experiencia). Esto mantiene a todos los usuarios en la misma página todo el tiempo. La desventaja es que la base de datos está estructurada de manera jerárquica y no tiene "objetos" definidos. Más bien, está estructurado a través de pares clave/valor donde las claves principales no pueden tener un valor asociado. Para ilustrar esto, una estructura de ejemplo para almacenar un juego en mi base de datos fue algo como esto:

-Games  
--1  
---Users  
----1 = "[email protected]"  
----2 = "[email protected]"  
---PotatoHolder = 1  
---TimeRemaining = 30  
---Loser = -1  

Cognito con el que no estoy familiarizado, así que permitiré que alguien más explique cómo está diseñado ese sistema de base de datos.

En resumen, codeek es correcto que esta es una pregunta basada en la opinión, pero para dos de sus opciones, una buena regla general de mi experiencia es que Parse es fantástico para grandes bases de datos de relaciones en conjunto con aplicaciones de un solo usuario (es decir, juegos de un solo jugador o basados en turnos). Firebase es más adecuado para sistemas de datos jerárquicos en conjunto con aplicaciones multijugador en tiempo real.

Espero que esto ayude! Si pudiera publicar un poco más sobre qué tipo de aplicación está tratando de construir, entonces tal vez yo, o alguien más, podría proporcionar un poco más de orientación.

Respuesta expandida: Aunque esta pregunta ha sido marcada como fuera de tema, para responder a la pregunta de seguimiento de Nidhi si hay una manera de usar el análisis como un esquema modelo-observador: No es fácil. Usar un temporizador es la opción más simple. El otro la opción es usar notificaciones push. Esto requeriría obtener permiso de su usuario. Puede configurar el código de la nube en Parse para enviar automáticamente notificaciones push a todos los usuarios relevantes y luego interceptarlos dentro de su cliente para que estén "silenciosos". En otras palabras, cuando lleguen, puedes hacer que tu cliente responda actualizando tu juego sin mostrar una cinta o notificación como las notificaciones push normales. No he hecho esto yo mismo, ya que prefiero usar Firebase para eso tipo de aplicación, pero creo que es posible.
Fuente: Actualización Automática De PFQueryTableView Cuando Se Actualizan Nuevos Datos o Se Actualizan Cada Minuto Usando Parse
La respuesta de Keith es similar a la referencia de Nidhi a actualizar PFObjects a través de un Temporizador, el comentario de Handsomeguy se refiere a la posibilidad de notificaciones push "silenciosas".

 28
Author: Patrick Bradshaw,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 11:54:43