¿Cuál es la comparación de Firebase con Parse y MongoDB?

En primer lugar, comparemos manzanas con manzanas. Parse y Firebase son proveedores de BaaS – Backend as a Service y se pueden comparar. Mongo DB es una base de datos orientada a documentos multiplataforma y no se puede comparar con Parse o Firebase, sino con otras bases de datos funcionales cruzadas.

  • Firebase es un servicio de datos en la nube en tiempo real. Firebasedatabase se almacena como JSON y se sincroniza en tiempo real con cada cliente conectado. Cuando crea aplicaciones multiplataforma con nuestros SDK de Android, iOS y JavaScript, todos sus clientes comparten una base de datos Firebase y automáticamente reciben actualizaciones con los datos más recientes.
  • Parse es una plataforma BaaS que proporciona SDK para construir backends móviles para Windows 8, Windows Phone 8, iOS, Android, JavaScript y OS X. Con Parse, el desarrollador puede agregar un backend escalable en minutos y lanzar una aplicación móvil o web con todas las funciones en un tiempo récord sin preocuparse nunca por la gestión del servidor. Parse ofrece notificaciones automáticas, integración social, almacenamiento de datos y la capacidad de agregar una lógica enriquecida personalizada al backend de su aplicación con Cloud Code.

Comparación de BaaS

Facebook decidió cerrar Parse y el servicio ya no estará disponible el próximo año. Entonces, primero comparará Parse con la versión Parse Open Source disponible para descargar. Los datos proporcionados aquí fueron extraídos del artículo.

http://blog.back4app.com/2016/03…

Comparación Parse con Parse OpenSource

Migrar los datos y configurar su propio servidor Parse es una de las opciones más preferidas ya que Parse se despide pronto. El servidor y el panel Parse de código abierto son un excelente reemplazo para Parse con el soporte de la comunidad Parse. Muchos lo ven como un gran marco potencial, ya que puede desarrollarlo de acuerdo con sus necesidades y obtener mejoras y nuevas características de la comunidad de desarrolladores. El código abierto de Parse ya es compatible con muchas características de Parse.com, pero aquí hay algunas de ellas que aún no se han abierto.

Analítica

Los análisis de línea de base, incluidas las métricas de retención, fueron características útiles en Parse. Parse Analytics proporcionó información sobre las interacciones de los usuarios en torno a las notificaciones push y las solicitudes de API que pasan por Parse. También se puede personalizar para cortar y cortar los detalles de su uso de Parse Data y Parse. Empuje con eventos aleatorios y un conjunto arbitrario de dimensiones. Hay algunas opciones pagas para reemplazar las funciones de Parse Analytics.

Autenticación

El inicio de sesión social solo es posible a través de Facebook. Se supone que también debe iniciar sesión a través de Twitter haciendo referencia a facebook.js y RestWrite.js. Pero hay problemas abiertos reportados en OAuth. Pero la buena noticia es que con el código abierto de Parse es posible iniciar sesión con Facebook, Twitter, Google, Meetup, GitHub, LinkedIn e Instagram.

Config global

Esta característica permitió modificar el comportamiento de una aplicación, como agregar o quitar una función sin tener que reconstruirla. Los valores modificados podrían reflejarse rápidamente en el Panel para que los usuarios puedan ver los cambios sin actualizar la aplicación. Esta característica no está disponible por ahora, pero se dice que es de código abierto en el primer RP.

Notificaciones push

La notificación push está disponible en ParseServer, pero requiere un esfuerzo en la implementación. Pero falta en el panel a través del cual el usuario podría haber administrado las notificaciones push. ‘PushAdapter’, que permite que Parse Server envíe notificaciones push utilizando cualquier resumen de proveedor push de la forma en que se envían los push para que pueda conectarlo fácilmente a cualquier servicio que exponga una API para enviar . Esta característica fue la más solicitada y Parse recientemente prometió abrirla en código fuente.

Validación de recibo de compra en la aplicación

Fue una de las soluciones listas para usar de Parse. La validación del recibo para las aplicaciones de iOS fue tan simple como agregar una línea de código. Pero el servidor Parse no cuenta con esta validación.

Trabajos en segundo plano

Con Parse, una vez que se implementa el código, puede agregarlo como una nueva entrada a la programación de trabajos en WebConsole. Había muchas opciones disponibles para personalizar la frecuencia de estos trabajos, incluida la hora de inicio. Los estados de cualquier trabajo actualmente en ejecución o trabajos anteriores que se hayan completado estaban disponibles. De todos modos, Parse tenía un límite en la cantidad de trabajos en segundo plano y cuánto tiempo podría ejecutarse. BackgroundJob podría programarse para que se agote el tiempo de espera si se configura como una función en la nube. BackgroundJobs no están disponibles en Parse Open Source.

Correos electrónicos del sistema

Parse ofreció una manera fácil de enviar bienvenida, contraseña olvidada, verificación de correo electrónico y otros correos electrónicos generados por el sistema que no son compatibles con el servidor Parse. Enviar por correo electrónico al usuario utilizando algún proveedor de correo es una de las soluciones disponibles.

Webhooks

Los Cloud Webhooks de Parse eran solo una característica conveniente porque Parse se estaba ejecutando en un entorno de servidor cerrado y alojado. Las funciones de la nube se pueden invocar desde cualquiera de los SDK del cliente, así como a través de la API REST. Puede cargar contenido web estático arbitrario o crear aplicaciones web dinámicas utilizando el SDK de JavaScript en el lado del cliente y el Código de nube más Express en el lado del servidor. Los desarrolladores que no usan el servidor Parse perderán los módulos nativos de Cloud Code como la imagen en la nube que permitieron manipular imágenes gráficas.

Auto indexación en la base de datos

“Necesita administrar sus índices usted mismo. Hosse Parse agrega automáticamente índices basados ​​en el flujo de consultas entrantes ”. Este anuncio fue el mensaje de la función de indexación automática de colecciones de MongoDB de Parse basada en los patrones de consulta de una aplicación. Con ese excelente servicio desaparecido, y dado que el servidor de análisis no lo hace, han para gestionar de forma manual.

Monitoreo de tiempo de actividad

Es necesario saber cuánto tiempo tarda su aplicación en estar disponible para los usuarios después de la implementación. Si bien Parse se ocupó de algunos problemas serios de tiempo de actividad después de unirse a Facebook, tenían el servicio relativamente estable. Pero ahora, dado que el servidor Parse debe estar alojado en un servicio de alojamiento de terceros, debe confiar en su sistema de monitoreo de tiempo de actividad. Los proveedores de terceros que ofrecen implementaciones con un solo clic pueden ser excelentes, pero solo con un monitoreo confiable del tiempo de actividad.

Registros

Puede ver los registros de Cloud Code utilizando la herramienta de línea de comando si se agregó un bloque de lanzamiento en el código. Pero console.log yconsole.error fueron útiles para registrar mensajes. Estos aún no son de código abierto.

CLP: permisos de nivel de clase

Parse Dashboard era un tablero independiente para administrar aplicaciones de Parse que se podían usar para controlar Parse Serverapps y aplicaciones que se ejecutan en Parse. Algunas características, como los permisos de nivel de clase (CLP) eran solo una cuestión de configuración mediante el panel de control. Hay algunas soluciones alternativas pensadas para reemplazar esta función. Dado que _SCHEMAtable en el almacén de datos de MongoDB contiene los CLP, estos datos se pueden transferir durante la migración de Parse al servidor Parse local y la actualización de estos valores afectará el acceso a los datos.

Código de la nube

El usuario podría agregar el código personalizado que se ejecutaría en el lado del servidor en la nube Parse. El usuario podría agregar el código de la nube y depurarlo usando el panel de control. Pero con el servidor Parse, ya no es posible. Debido a que el Código de nube alojado en Parse no ejecuta un entorno de nodo completo, puede haber algunas diferencias en la forma en que se ejecuta el Código de nube en ParseServer. Algunos módulos de código de nube nativos no están disponibles en el servidor Parse. Necesitas usar un reemplazo.

Puede usar el módulo NPM para estos módulos en la nube:

• Arma de correo
• Mandrill
• Momento
• SendGrid
• raya
• Twilio
• Guion bajo

El búfer se incluye de forma nativa en NodeJS. Para enlaces de aplicaciones, no hay reemplazo directo.
Para Parse Image, se recomienda utilizar otra biblioteca de manipulación de imágenes, como el módulo contenedor ImageMagick. Con promesas de notificaciones push y configuración global para ser de código abierto y una gran cantidad de terceros que ofrecen otras funciones que faltan, como código de nube, monitoreo de tiempo de actividad, registros y CLP, Parseserver sigue siendo una de las mejores alternativas para el cierre de Parse. Esté atento a este espacio para la próxima publicación de blog sobre las soluciones alternativas para estas brechas de Parseserver.

,

Parse y Firebase son PaaS (plataforma como servicio), lo que significa que ofrecen a los desarrolladores configuraciones rápidas de backend. A diferencia de Amazon Web Services (AWS) o Microsoft Azure, que son IaaS (Infraestructura como servicio), parse y firebase no requieren configurar las computadoras e instalar un servidor web y programar su propio backend.

En cambio, cuando crea una cuenta de análisis o firebase, se le proporcionan tablas o estructuras de datos vacías y la API REST o SDK para acceder a las estructuras de datos. No tiene que configurarlo usted mismo. En Parse, crea las tablas (llamadas Clases) en su panel de control en línea y luego usa el SDK en sus aplicaciones móviles o web para acceder y escribir en estas tablas.

Firebase es diferente de Parse en el sentido de que Firebase usa un esquema de estructura de datos diferente (de hecho, blobs JSON) y Firebase y otros servicios similares como Pubnub le ofrecen un sistema de accionamiento de interrupción basado en push frente a sistemas basados ​​en sondeo para obtener los datos más rápido cuando un cambio ocurre.

Entonces, supongamos que está creando una aplicación de mensajería, simplemente puede comenzar con Parse para almacenar la información de los usuarios y los mensajes. Pero luego, en los clientes, deberá verificar periódicamente las tablas de Parse para ver si hay un nuevo mensaje. Esto significa que su aplicación tendrá un retraso de cuando un usuario escribe un mensaje y el otro usuario recibe el mensaje.

Pero con Firebase o Pubnub, usan sockets y otros métodos para notificarle cuando algo cambia en la base de datos. Entonces, cuando un usuario en su aplicación de mensajería escribe un mensaje y se almacena en Firebase, Firebase notificará a todos los demás clientes que escuchan una clave específica en su JSON que hubo un cambio de datos y podría haber un nuevo mensaje. De esa forma, obtiene datos instantáneamente sobre los clientes y, por lo tanto, la aplicación de mensajería será más resoponsiva y en tiempo real.

MongoDB es una arquitectura de base de datos. No es un servicio como Parse, Pubnub, AWS o Azure. Es más similar a SQLite o Hbase. Es un sistema de base de datos distribuido que no es sql que puede elegir instalar en su IaaS como AWS para administrar sus datos. A diferencia de sql, mongo trata con objetos, no con filas en una tabla. Y a diferencia de SQL también, está distribuido, lo que significa que está diseñado para comunicarse entre varias computadoras donde está instalado y almacenar datos de tal manera que es mucho más rápido acceder a una gran cantidad de datos y hacer cálculos en ellos (trabajos de reducción de mapas, etc.).

Cuando llegué a saber sobre Parse Shutdown. He molestado mucho y muchos otros que han alojado sus aplicaciones en la plataforma Parse, están buscando una solución alternativa. Yo también soy uno de ellos.

Ya he hablado con varios proveedores de plataformas de desarrollo de aplicaciones y verifico sus plataformas. Firebase fue uno de ellos. Pero hay un problema con esta plataforma, necesita escribir toda la API y tomará mucho tiempo.

El otro que obtuve fue ConfigureIT . Lo encontré como la buena solución en comparación con otras plataformas. En realidad, mis 10 a 15 aplicaciones están en Parse. Así que estoy un poco preocupado por eso. Ahora, después de comprobar todas las soluciones, finalmente llegué a una decisión.

También quiero guiar a todas las personas que están pasando por la misma situación que yo estoy pasando. Verifiqué todas las características e instalaciones proporcionadas por esta plataforma y también hablé con las personas autorizadas de esta plataforma. Realmente uno genuino.

La migración a ConfigureIT tiene muchos beneficios para los usuarios de Parse, ya que CIT proporciona el proceso de transferencia base del asistente, por lo que solo debe hacer clic en el botón y cambiar la URL base para cambiar y disfrutar el CIT para siempre sin ningún dolor de cabeza.

¿Cómo Configure.IT supera a Parse?

  • Parse proporciona solo back-end a la aplicación móvil, mientras que CIT proporciona un paquete completo de solución de aplicación móvil personalizada con back-end que se puede usar tanto para la aplicación móvil como para la aplicación web
  • La oferta principal de Parse es Hosting, análisis y código en la nube, mientras que CIT permite construir aplicaciones móviles sin escribir código, con solo arrastrar y soltar junto con el alojamiento
  • Sin bloqueo, puede alojar e implementar en cualquier lugar. Que estaba restringido al host solo para el servidor Parse
  • No-SQL a RDBMS-MySQL
  • Importe aplicaciones, bases de datos y datos existentes que no son posibles en Parse
  • Panel de administración dinámico y 100% personalizable que fue a través de Primitive
  • Exposición a notificaciones, programadores y trabajos Cron
  • Integración API externa con desarrollo API personalizado

Haga clic en Parse Migration Tool para obtener más información sobre esta herramienta de migración.

Parse y MongoDB no tienen un marco de Web Socket sobre ellos, lo que significa que necesita construir uno usted mismo usando Socket.IO / Any other Web Socket Framework. Se sabe que Firebase se usa en aplicaciones en tiempo real como Chat, etc. Firebase no incluye Notificaciones Push, CloudCode, etc., por lo que si su aplicación las necesita, es posible que deba usar varios proveedores de servicios. Hay pocos BaaS que pueden hacer PushNotifications + Search + Realtime + Data Storage. Puede consultar CloudBoost ( http://www.cloudboost.io ), que es literalmente Parse + Firebase + Algolia, todo combinado en uno.

Puede consultar la comparación de funciones aquí: https://cloudboost.io/compare

Google ha lanzado recientemente una nueva versión de Firebase . Proporciona una plataforma unificada para crear aplicaciones Android, iOS y web. Admob, Analytics, Authentication, Indexing, Test Lab y Notificaciones son algunas de las nuevas características introducidas en la última versión de Firebase.
Parse Server es una mejor opción para crear nuevas aplicaciones o API. Siga leyendo para tener una idea de comparación entre los dos y comprender por qué Parse Server es aún mejor.

Escribí un artículo comparando ambas plataformas para una nueva aplicación.

Firebase vs. Servidor Parse | blog back4app

More Interesting

Estoy buscando patrones de IU útiles que faciliten la creación de un objeto complejo o actividad de entidad / registro de cambios para un CRM. Las entidades incluyen un cliente potencial (cliente futuro o actual) con sus datos personales, direcciones de envío, pedidos, conversaciones por correo electrónico, teléfono y mensajes de texto, etc. ¿Cómo hago esto?

¿Cuál es un mejor marco: Struts o Spring?

¿Cuál es una buena estrategia para competir con una aplicación web ya existente y popular que está dentro del mismo nicho y tiene el mismo propósito general?

¿Cuáles son algunos ejemplos geniales y creativos de tutoriales de incorporación para aplicaciones web?

Cómo hacer que el contenido detrás de un muro de inicio de sesión sea accesible para los motores de búsqueda

Rendimiento web: ¿la carga por debajo de 1 s es buena para un sitio web?

¿Qué debo considerar al diseñar una aplicación web?

¿Puedo crear aplicaciones web con Bootstrap y Ruby on Rails? Si es así, ¿por qué las personas usan frameworks Javascript?

¿Por qué la aplicación de Slack es solo un contenedor web en lugar de una aplicación nativa?

¿Hay alguna otra aplicación utilizada para crear una página web?

¿Cuáles son algunas plataformas de alojamiento para la aplicación web Django?

Cómo crear una aplicación web usando WordPress sin codificar simplemente arrastrando y soltando

¿Cuánto tiempo le toma a una persona construir una aplicación web simple?

¿Cómo aborda Node.JS varias técnicas de piratería como la inyección SQL o las secuencias de comandos de sitios cruzados (XSS)?

Cómo hacer diseños de plantillas web receptivas