본문 바로가기

Firebase

[인프런] 1. 파이어베이스란?

너네 백엔드 하고 싶은 거 있으면 얼마든지 해 난 괜찮어 왜냐면 나는 파이어베이스가 있어 강의 - 대시보드 | 인프런 (inflearn.com)

 

너네 백엔드 하고 싶은 거 있으면 얼마든지 해 난 괜찮어 왜냐면 나는 파이어베이스가 있어 | 제

제주코딩베이스캠프 | 프론트엔드 개발자인데 로그인 기능을 구현하지 못해 아쉬웠던 적 있으신가요? DB를 이용해 데이터를 저장하고 불러오는 기능을 구현하고 싶지만 쿼리를 공부하기는 부담

www.inflearn.com

 

1. 파이어베이스란?

 

- Firebase는 2011년 파이어베이스 사가 개발하고 2014년에 구글에 인수된 모바일 및 웹, 앱 애플리케이션 개발 플랫폼

- 파이어베이스는 서버 없는(서버리스) 개발을 가능하게 하기 때문에 백엔드에 대한 지식이 없어도 웹서비스를 출시할 수 있다. 

 

- Firebase플랫폼을 사용한다면 개발자는 실제로 아무것도 (DB, 사용자 정보, 서버) 소유하고 있지 않는 것과 같다. 

- 구글의 힘을 빌려쓰는 것이기 때문에 개인적으로 사용하는 앱이나, 이윤을 추구하지 않는 간단한 수준의 앱을 테스트 할 때 사용하는 것이 좋다. 

 

2. 웹 서버를 구축하기 위한 과정 

 

1)

- Web Server는 웹 브라우저에서 요청하는 HTML, CSS, JS를 전송해주는 서비스 프로그램을 말한다.  요청에 따른 정적인 컨텐츠를 전달하기 때문에 정적 서버라 부르기도 한다. 

 

2)

 - Web Server가 회원가입, DB 저장 등의 기능을 만들기 위해서는 Database 서버를 하나 더 만들어야 한다.  이것이 우리가 쓰는 My SQL이나 Oracle을 의미 

 

 

3)

- Web 서버가 DB 안에 접속할 수 있으려면 중간 다리 역할을 하는 Back-end 서버가 필요하다. 

- Front - end에서 Back- end 서버로 요청을 보내면 서버에서 Database에서 제공하는 라이브러리를 이용해 필요한 데이터를 리턴해주는 구조를 가지고 있다. 

-  웹 서비스를 만들려면 Web 서버, Back-end 서버, Database 서버를 구축해야 함

 

 

 

- Firebase는 유저가 서버로 데이터를 전송하고 받은 데이터를 DB에 저장하도록 도와준다 

- 즉, Firebase는 서버와 DB 역할을 동시에 하게 된다. 

 

 

 

- firebase는 BaaS에 속함

- BaaS는 개발자가 백엔드 서비스를 가능한 한 가장 빠르고 간단하게 관리하는 데 집줃된 백엔드 특화 서비스 

 

3. firebase가 제공하는 서비스 종류 

 

- Firebase를 통해 우리는 데이터베이스 , 서버, 호스팅, 데이터 업로드 등의 다양한 기능을 우리가 만든 프론트엔드 페이지에 적용할 수 있다. 

 

1) Cloud FireStore

 

- 안드로이드, ios, 웹서비스에서 데이터베이스 관련 코드 없이 데이터베이스를 사용할 수 있다. 

 

2) Firbase ML

 

- 텍스트 인식, 얼굴 인식과 같은 머신러닝 기능을 모바일 기기에서 사용가능하도록 하는 SDK(Software Development Kit)이다. 

- 웹에서 사용 불가 

 

3) Cloud Functions

 

- firebase로 구축한 서버에 비즈니스 로직을 실행할 수 있도록 사용자가 작성한 코드를 실행하는 기능을 제공한다. 

 

4) Cloud Storage

 

- 이미지 파일과 같이 데이터를 저장하는 기능을 제공한다. 

- 구글 드라이브와 비슷함 

 

5) Hosting

 

- 웹서비스를 호스팅함 

 

6) Authentication

 

- 여러 인증로직을 미리 구현하여 사용자에게 간단히 제공할 수 있다. 

 

7) RealTime Database

 

- 구글에 인수되기 전 Firebase사가 개발하던 원조 데이터베이스 

- DB에 데이터가 실시간으로 반영되고 사용자에게 동기화된다.

- 덕분에 RealTime Database를 이용하면 다른 사람이 작성한 글 또는 수정한 글을 실시간으로 바로 볼 수 있게 된다.