¿Cómo ahorrar dinero con Firebase?
Después de conocer muchas tragedias en foros sobre como los costos de Firebase se disparan en el lapso de días decidí tomar algunos comentarios sobre como evitar esto. Perdonen la simpleza del artículo pero me pareció algo urgente.
Antes de empezar, si después de un año del lanzamiento no estás usando not-in y != query operators para .where(), que seguis esperando?
Siguiendo.
En primer lugar, PONER UN LÍMITE. En internet, a cualquiera le puede pasar alguna falla que escala miles de dólares en instantes.
Establecer instrucciones de cuotas de uso de recursos
Limite sus gastos (guía) con una función que apaga sus servicios automáticamente
- Tenga cuidado con los servicios en la nube. Es muy poderoso y muy útil, pero al mismo tiempo, un arma de doble filo. No importa quién sea el proveedor, una vez que entregue la tarjeta de crédito, usted será responsable de los servicios.
- Conserve diferentes proyectos para proyectos de prueba de Firebase y NO les agregue facturación. Lo mismo ocurre con cualquier proyecto de prueba de nivel gratuito, sin importar el proveedor.
- Vale la pena esforzarse y leer en las plataformas en la nube. Cada servicio de Amazon / IBM / Google tiene una documentación enorme, en la que es fácil perderse. Pero vale la pena. Especialmente leyendo sobre servicios sin servidor que pueden escalar. Hay una razón por la que existen trabajos de tiempo completo solo para servicios en la nube.
- Utilice "Google Cloud Monitoring". Es gratis AFAIK, y lanza alertas a los pocos minutos de exceder el uso. ¡Los tableros también son geniales! Hubo cierta curva de aprendizaje, pero una vez que lo configuró, el monitoreo en realidad no es mucho trabajo. Las alertas se pueden configurar en SMS, correos electrónicos y notificaciones de aplicaciones.
- La facturación y las métricas se retrasan. Acepte este hecho y planifique su proyecto en torno a él. Todas las plataformas (AWS / GCP, etc.) tienen este problema, simplemente porque es demasiado caro calcular la facturación en tiempo real y los servicios pueden escalar rápidamente.
- Si las cosas salen mal, que no cunda el pánico, no es el fin del mundo :). Confíe en el flujo, pueden trabajar por su cuenta. Concéntrese en lo aprendido y tenga una conversación honesta con todos. La comunidad de desarrollo en general es solidaria.
¿Cómo se puede evitar esto?
Pruebe su aplicación utilizando Firebase Emulator Suite siempre que pueda, de esta manera, incluso el peor error no le costará dinero ni destruirá ningún dato real.
Si es posible, utilice un proyecto provisional en el plan Spark. Entendemos que los cambios recientes en Cloud Functions han hecho que esto sea menos factible de lo que solía ser.
¿Qué debes hacer si te equivocas?
Si comete un error de programación que le cuesta más dinero del que puede pagar, detenga la aplicación (si puede) y comuníquese con el Soporte de Firebase inmediatamente. Como puede ver al final de esta publicación, en la mayoría de los casos intentaremos proporcionar un reembolso por facturas grandes accidentales. Por supuesto, cada caso es diferente, así que no puedo prometer esto, pero sepa que lo intentaremos y el equipo de soporte está realmente de su lado.