Contents
What is Firebase?
Firebase is Google’s mobile platform that helps you quickly develop high-quality apps and grow your business. Firebase is a Backend as a service (BaaS). With help of firebase, one can do tasks without worrying about server setup, server maintenance, it provides high-end features like API, storage, hosting, analytics.
Real-time DataBase
Firebase provides a cloud-hosted real-time database facility. Data are stored in JSON format, sync happens in real-time and remains available if our app goes offline. We can able to build cross-platform apps with the iOS, Android and Javascript SDKs.
Firebase uses WebSockets instead of HTTP calls because WebSockets are faster than typical HTTP calls. If the client goes offline, the data remains on his/her disk and updates to new data once connected to the network.
File storage
Firebase provides cloud storage facility to developers who need to store and exhibit users files when they need. It performs uploads and downloads despite network quality and auto-resumes uploads or downloads if failed.
The developer can define their own security model to protect the files or they can simply use security models provided by firebase.
This Firebase file or cloud storage facility which powers Google Photos and Spotify.
Authentication
Firebase provides ready-made UI libraries to authenticate users into your apps. The authentication models provide by firebase are
- Using Email and Password
- Phone number
- Github
- Play Games
- Anonymous
Firebase Authentication feature follows OAuth2.0 and OpenID Connect, so it can be easily integrated with any custom backend.
Hosting
Firebase provides static hosting facility to host and deploy our web apps across the global level with help of its Content delivery networks(CDN) with a single command.
Firebase deploy
Here is our article to Host your website on Firebase
FIrebase provides a built-in SSL support to deliver our content across the globe. Every file we upload is cached on SSDs at their CDN’s and delivered to users with a lightning speed.
With the help of Firebase CLI (Command Line Interface), we can put our apps running in seconds.i have tried it personally and got the best result. And we can rollback to the previous version of our files if a mistake happens.
Cloud Messaging
Firebase Cloud Messaging (FCM) formerly Google Cloud Messaging (GCM) is a free cross-platform messaging platform helps us to deliver messages and notifications reliably.
With help of FCM, we can send push notifications or data messages. We can set priorities like Normal priority and high priority to deliver messages and notifications.
Crashalytics
Firebase crashalytics provides actionable insight into your app issues with its powerful crash reporting, supports Android and iOS.
Provides real-time alerts.
PROS
- Real-time Database
- Readymade API
- File storage
- Built-in security
- Email, phone, social authentication
- No penny invested for server and maintenance Google looks them
CONS
- The storage format is different from SQL, migrating data may be a headache
- Not suitable for enterprise
- No on-premise installation
- limited query ability
ALSO READ:Â General Java Interview Questions