Firebase
는
Firebase
는 2014년 구글에 인수된 모바일 및 웹 애플리케이션 개발 플랫폼이다.
기존 React
에서는 서버와 DB를 구현하기 위해 Node.js
를 사용했다.
하지만 Firebase
를 사용한다면 복잡한 위 과정을 생략하고 제공하는 API만을 사용하여 간단하게 서비스를 개발을 할 수 있다.
Firebase
의 다양한 기능은 개발 기간을 단축시키며, 효율적인 개발 방식을 제공한다.
대표적인 장점은 다음과 같다.
일반 서비스에서 사용자 인증 기능(로그인, 회원가입...)을 구현하는 과정은 매우 복잡하다.
로그인 사용자 인증 세션처리, 세션을 이용한 데이터베이스 보안처리, 아이디 및 비밀번호 찾기...
하지만 Firebase
는 자체적인 인증 시스템을 지원하여 위의 과정을 쉽게 처리할 수 있다.
Firebase
는 Oracle
, MySQL
과 같은 관계형 데이터베이스 대신 Document
형식의 빠르고 간편한 NoSQL
기반의 데이터베이스를 사용한다.
또한 RTSP(Real Time Stream Protocol)
방식을 지원한다.
Real Time Stream Protocol
는 실시간으로 데이터들을 전송해주는 방식으로 소켓 기반 서버보다 코드 양이 줄어 간결한 구성이 가능하다.
Firebase
는 Console
이라는 서버 관리자 페이지를 제공하여 앱 서버 관리 차원에서의 편의성을 높여준다.
Firebase
는 실시간 접속자부터 오류통계, 사용자 이탈율, 인기 페이지, 반송페이지, 사용시간...등등 사용자의 활동을 추적할 수 있다.
이 데이터들을 통해 개발자는 서비스의 문제를 정의하고 효율적인 마케팅 계획을 수립할 수 있다.
종종 서버의 응답속도가 느려지는 단점이 있다.
이는 국내에서 만약 지금보다 Firebase
를 활용한 서비스 개발 시도가 증가한다면 Google
이 아시아 서버를 새로 구축하여 응답 지연이 해결될 것이라 추측하고 있다.
FireStore(신버전 데이터베이스)
, RTD(구버전 데이터베이스)
의 쿼리 구성이 빈약하다.
예를 들면 OR
, LIKE
문이 쿼리 구성에 포함되어 있지 않아 유사한 글자 데이터를 데이터베이스에서 검색할 수 없다.