SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
목차
• 파이어베이스란 무엇인가?
• 우리가 사용한 파이어베이스
• 파이어베이스 삽질기
• 파이어베이스에 대한 아쉬운점
파이어베이스란 무엇인가
넌 개발에만 집중해 나머진 내가 다 할게 ! - 파이어베이스
구글이 인수한 클라우드 서비스로, 개발자들이 앱을 개발하고 서비스를 제공하는데 꼭 필요한 근간
(백엔드)인 분석도구, 데이터베이스, 광고 등을 API의 형태로 개발자에게 제공하는 백엔드 서비스다.
멀티 플랫폼 지원 - 아이폰, 안드로이드, 웹, 서버 , restful, c++(게임쪽 분야도 노리는듯 하네요.)
왜 파이어베이스를 쓰는가?
• 제한된 개발 기간
• 빠른 사용자 분석 및 피드백 반영가능
• 크로스플랫폼
• 소수의 인력으로 서비스 레벨 의 품질구현
• 확장용이
• 기타 등등
파이어베이스를 사용하기전에
하나의 리뷰 객체를 데이터베이스에 저장할려면…
개발 및 배포 환경셋팅,
클라이언트 코드(HTTP 코드, JSON 파싱 및 만들기)
서버코드(JSON 파싱 및 만들기, DB 저장 및 요청코드]
다수의 서버가 필요.
실패했을때 반환코드와 그에 따른 처리 함수를 다 만들어줘야했음.
+보안, 로드밸런싱, 스케일링, 캐시 , 서버 상태 반환 코드들도 다 짜줘야 했음.
파이어베이스 삽질기
• 1. 보안 설정 문제
• 2. RESTFUL 형태로 데이터를 요청할때
• 3. 파이어베이스는 기본적으로 비동기로 처리된다.
1. 보안 설정 문제
개인적으로 편하게 디버깅 및 테스트할때!
EXAMPLE
• HTTPS://FIREBASE.GOOGLE.COM/DOCS/DATABASE/SECURITY/?HL=KO
- 데이터베이스 보안 규칙 설정
• HTTPS://FIREBASE.GOOGLE.COM/DOCS/STORAGE/SECURITY/?HL=KO
- 클라우드 스토리지 보안 규칙 설정
• HTTPS://DEVELOPERS-KR.GOOGLEBLOG.COM/2017/01/GROUP-SECURITY-IN-FIREBASE-
DATABASE.HTML
- 파이어베이스에 보안 규칙 설정 예시
보안규칙에 관한 자세한 사항은!
2. RESTFUL 방식으로 사용할때
• 기존에 서비스를 파이어베이스로 옮기면서 RESTFUL 통신부분은 기존걸 쓰기로함.
• 파이어베이스 DB는 NOSQL 기반. RESTFUL 하게 데이터를 가져올때 조건에 맞는 데이터를 가져
올때 URL에 쿼리값을 붙여서 보낸다.
EX)
curl 'https://dinosaur-
facts.firebaseio.com/dinosaurs.json?orderBy="dimensions/height
"&startAt=3
- 키가 3을 초과하는 공룡의 리스트를 가져옴.
음 그렇게 하면 되겠군…
Firebase에 요청할 내 GPS를 기반으로 주변에 있는
화장실과 와이파이 지역을 알려주는 url을 만든후
http 요청을 함
하지만 안됨… 왜?
- 그런데 조건을 걸지않고 데이터를 로드하면 됨.
- 특정 조건에 맞게 RESTFUL방식으로 데이터를 검색할려면 키값 색인 설정이 필요함.
3. 파이어베이스는 비동기기반
• 파이어베이스를 사용하는데 있어서 가장 많이 실수하는 부분 중 하나
파이어베이스 아쉬운점
• 인증 기능을 구현할때 커스텀 하기 어렵다.(EX. 카카오톡, 네이버 로그인)
• 파일 저장기능을 유연하게 쓸라면 GOOGLE CLOUD STORAGE 와 따로 연동이필요한데 과정이 매우 복잡함(아직 지원도
잘 안되는 편).
• 데이터를 가져올때 QUERY 의 배열 길이를 알 수 없기 때문에 PAGINATION 구현이 힘듬(별도의 처리가 필요함)
• DB AUTO INCREMENT 기능이 없어서 별도로 만들어줘야됨.
• 나아지고는 있으나 아직은 불 친절한 문서(생각보다 삽질이 많다)
• 푸쉬기능에 이미지 전송기능은 X
• 아직은 관련 사이트나 참고할 만한 자료가 많지 않음.

Contenu connexe

Tendances

Webservice cache strategy
Webservice cache strategyWebservice cache strategy
Webservice cache strategy
DaeMyung Kang
 
로그 수집, 집약
로그 수집, 집약로그 수집, 집약
로그 수집, 집약
kidoki
 
ASP.NET과 C#으로 개발하는 대규모 소셜 게임
ASP.NET과 C#으로 개발하는 대규모 소셜 게임ASP.NET과 C#으로 개발하는 대규모 소셜 게임
ASP.NET과 C#으로 개발하는 대규모 소셜 게임
흥배 최
 

Tendances (20)

AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
AWS를 활용하여 Daily Report 만들기 : 로그 수집부터 자동화된 분석까지
 
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
 
Webservice cache strategy
Webservice cache strategyWebservice cache strategy
Webservice cache strategy
 
[246] foursquare데이터라이프사이클 설현준
[246] foursquare데이터라이프사이클 설현준[246] foursquare데이터라이프사이클 설현준
[246] foursquare데이터라이프사이클 설현준
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
 
[Gaming on AWS] AWS와 함께 한 쿠키런 서버 Re-architecting 사례 - 데브시스터즈
[Gaming on AWS] AWS와 함께 한 쿠키런 서버 Re-architecting 사례 - 데브시스터즈[Gaming on AWS] AWS와 함께 한 쿠키런 서버 Re-architecting 사례 - 데브시스터즈
[Gaming on AWS] AWS와 함께 한 쿠키런 서버 Re-architecting 사례 - 데브시스터즈
 
클라우드 춘추전국시대 서버 개발자 생존기
클라우드 춘추전국시대 서버 개발자 생존기클라우드 춘추전국시대 서버 개발자 생존기
클라우드 춘추전국시대 서버 개발자 생존기
 
[Line Developer Day 2014] 라인 글로벌 게임 서버 개발하기
[Line Developer Day 2014] 라인 글로벌 게임 서버 개발하기[Line Developer Day 2014] 라인 글로벌 게임 서버 개발하기
[Line Developer Day 2014] 라인 글로벌 게임 서버 개발하기
 
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
 
Soscon2017 오픈소스를 활용한 마이크로 서비스의 캐시 전략
Soscon2017 오픈소스를 활용한 마이크로 서비스의 캐시 전략Soscon2017 오픈소스를 활용한 마이크로 서비스의 캐시 전략
Soscon2017 오픈소스를 활용한 마이크로 서비스의 캐시 전략
 
로그 수집, 집약
로그 수집, 집약로그 수집, 집약
로그 수집, 집약
 
Cloudera Impala 1.0
Cloudera Impala 1.0Cloudera Impala 1.0
Cloudera Impala 1.0
 
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
 
AWS-IAM,S3,EC2
AWS-IAM,S3,EC2AWS-IAM,S3,EC2
AWS-IAM,S3,EC2
 
AWS RDS, DYNAMO
AWS RDS, DYNAMOAWS RDS, DYNAMO
AWS RDS, DYNAMO
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
 
AWS lambda, step function, cloud watch
AWS lambda, step function, cloud watchAWS lambda, step function, cloud watch
AWS lambda, step function, cloud watch
 
ASP.NET과 C#으로 개발하는 대규모 소셜 게임
ASP.NET과 C#으로 개발하는 대규모 소셜 게임ASP.NET과 C#으로 개발하는 대규모 소셜 게임
ASP.NET과 C#으로 개발하는 대규모 소셜 게임
 
DynamoDB를 이용한 PHP와 Django간 세션 공유 - 강대성 (피플펀드컴퍼니)
DynamoDB를 이용한 PHP와 Django간 세션 공유 - 강대성 (피플펀드컴퍼니)DynamoDB를 이용한 PHP와 Django간 세션 공유 - 강대성 (피플펀드컴퍼니)
DynamoDB를 이용한 PHP와 Django간 세션 공유 - 강대성 (피플펀드컴퍼니)
 
Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021
Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021
Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021
 

En vedette

데이터분석과통계2 - 최재걸님
데이터분석과통계2 - 최재걸님데이터분석과통계2 - 최재걸님
데이터분석과통계2 - 최재걸님
NAVER D2
 
JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님
JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님
JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님
NAVER D2
 
개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님
NAVER D2
 

En vedette (20)

Papago/N2MT 개발이야기
Papago/N2MT 개발이야기Papago/N2MT 개발이야기
Papago/N2MT 개발이야기
 
[D2CAMPUS] Algorithm tips - ALGOS
[D2CAMPUS] Algorithm tips - ALGOS[D2CAMPUS] Algorithm tips - ALGOS
[D2CAMPUS] Algorithm tips - ALGOS
 
데이터분석과통계2 - 최재걸님
데이터분석과통계2 - 최재걸님데이터분석과통계2 - 최재걸님
데이터분석과통계2 - 최재걸님
 
JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님
JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님
JavaScript 비동기 프로그래밍 집중 탐구 - 조유성님
 
[D2 CAMPUS] 분야별 모임 '보안' 발표자료
[D2 CAMPUS] 분야별 모임 '보안' 발표자료[D2 CAMPUS] 분야별 모임 '보안' 발표자료
[D2 CAMPUS] 분야별 모임 '보안' 발표자료
 
swig를 이용한 C++ 랩핑
swig를 이용한 C++ 랩핑swig를 이용한 C++ 랩핑
swig를 이용한 C++ 랩핑
 
Django에서 websocket을 사용하는 방법
Django에서 websocket을 사용하는 방법Django에서 websocket을 사용하는 방법
Django에서 websocket을 사용하는 방법
 
오픈소스 SW 라이선스 - 박은정님
오픈소스 SW 라이선스 - 박은정님오픈소스 SW 라이선스 - 박은정님
오픈소스 SW 라이선스 - 박은정님
 
개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님
 
[D2 CAMPUS] 2016 한양대학교 프로그래밍 경시대회 문제풀이
[D2 CAMPUS] 2016 한양대학교 프로그래밍 경시대회 문제풀이[D2 CAMPUS] 2016 한양대학교 프로그래밍 경시대회 문제풀이
[D2 CAMPUS] 2016 한양대학교 프로그래밍 경시대회 문제풀이
 
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes[D2 COMMUNITY] Open Container Seoul Meetup -  마이크로 서비스 아키텍쳐와 Docker kubernetes
[D2 COMMUNITY] Open Container Seoul Meetup - 마이크로 서비스 아키텍쳐와 Docker kubernetes
 
[D2 COMMUNITY] Open Container Seoul Meetup - Running a container platform in ...
[D2 COMMUNITY] Open Container Seoul Meetup - Running a container platform in ...[D2 COMMUNITY] Open Container Seoul Meetup - Running a container platform in ...
[D2 COMMUNITY] Open Container Seoul Meetup - Running a container platform in ...
 
[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제 풀이
[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제 풀이[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제 풀이
[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제 풀이
 
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift
[D2 COMMUNITY] Open Container Seoul Meetup - Kubernetes를 이용한 서비스 구축과 openshift
 
[D2 CAMPUS] 부산대 Alcall 프로그래밍 경시대회 문제 풀이
[D2 CAMPUS] 부산대 Alcall 프로그래밍 경시대회 문제 풀이[D2 CAMPUS] 부산대 Alcall 프로그래밍 경시대회 문제 풀이
[D2 CAMPUS] 부산대 Alcall 프로그래밍 경시대회 문제 풀이
 
[D2 COMMUNITY] Open Container Seoul Meetup - Docker security
[D2 COMMUNITY] Open Container Seoul Meetup - Docker security[D2 COMMUNITY] Open Container Seoul Meetup - Docker security
[D2 COMMUNITY] Open Container Seoul Meetup - Docker security
 
오픈소스 맛보기 - 정민우님
오픈소스 맛보기 - 정민우님오픈소스 맛보기 - 정민우님
오픈소스 맛보기 - 정민우님
 
[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제
[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제
[D2 CAMPUS] 숭실대 SCCC 프로그래밍 경시대회 문제
 
[2A4]DeepLearningAtNAVER
[2A4]DeepLearningAtNAVER[2A4]DeepLearningAtNAVER
[2A4]DeepLearningAtNAVER
 
카카오스토리 웹팀의 코드리뷰 경험
카카오스토리 웹팀의 코드리뷰 경험카카오스토리 웹팀의 코드리뷰 경험
카카오스토리 웹팀의 코드리뷰 경험
 

Similaire à 파이어베이스 네이버 밋업발표

레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
Sang Don Kim
 
IT 인프라의 새로운 대안 Amazon Web Service
IT 인프라의 새로운 대안 Amazon Web ServiceIT 인프라의 새로운 대안 Amazon Web Service
IT 인프라의 새로운 대안 Amazon Web Service
Gun-su Jang
 
SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016
SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016
SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016
Amazon Web Services Korea
 

Similaire à 파이어베이스 네이버 밋업발표 (20)

서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)
 
삶이편해지는_백엔드_개발자_지식.pdf
삶이편해지는_백엔드_개발자_지식.pdf삶이편해지는_백엔드_개발자_지식.pdf
삶이편해지는_백엔드_개발자_지식.pdf
 
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
레코벨의 추천 서비스 고군 분투기 - AWS Summit Seoul 2017
 
[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요
[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요
[테크데이즈2015] 개발하기 바쁜데 푸시와 메시지큐는 있는거 쓸래요
 
AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015
AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015 AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015
AWS로 사용자 천만 명 서비스 만들기 (윤석찬)- 클라우드 태권 2015
 
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
[Td 2015]개발하기 바쁜데 푸시서버와 메시지큐는 있는거 쓸래요(김영재)
 
Firebase for Web (웹개발을 위한 파이어베이스) 1 Hosting
Firebase for Web (웹개발을 위한 파이어베이스) 1 HostingFirebase for Web (웹개발을 위한 파이어베이스) 1 Hosting
Firebase for Web (웹개발을 위한 파이어베이스) 1 Hosting
 
슬로우캠퍼스 - 안드로이드 개발자들이여 Firebase로 날아보자 :)
슬로우캠퍼스 - 안드로이드 개발자들이여  Firebase로 날아보자 :)슬로우캠퍼스 - 안드로이드 개발자들이여  Firebase로 날아보자 :)
슬로우캠퍼스 - 안드로이드 개발자들이여 Firebase로 날아보자 :)
 
Firebase for web (웹개발을 위한 파이어베이스) 3 Real-Time Database
Firebase for web (웹개발을 위한 파이어베이스) 3 Real-Time DatabaseFirebase for web (웹개발을 위한 파이어베이스) 3 Real-Time Database
Firebase for web (웹개발을 위한 파이어베이스) 3 Real-Time Database
 
IT 인프라의 새로운 대안 Amazon Web Service
IT 인프라의 새로운 대안 Amazon Web ServiceIT 인프라의 새로운 대안 Amazon Web Service
IT 인프라의 새로운 대안 Amazon Web Service
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
 
1711 azure-live
1711 azure-live1711 azure-live
1711 azure-live
 
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
2017 Ad-Tech on AWS 세미나ㅣAWS에서의 빅데이터와 분석
 
FIrebase를 이용한 호우호우 미니게임 만들기
FIrebase를 이용한 호우호우 미니게임 만들기FIrebase를 이용한 호우호우 미니게임 만들기
FIrebase를 이용한 호우호우 미니게임 만들기
 
Firebase를 이용한 호우호우 미니게임 만들기
Firebase를 이용한 호우호우 미니게임 만들기Firebase를 이용한 호우호우 미니게임 만들기
Firebase를 이용한 호우호우 미니게임 만들기
 
빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)빅데이터 기술 현황과 시장 전망(2014)
빅데이터 기술 현황과 시장 전망(2014)
 
KGC 2013 DevSisters
KGC 2013 DevSistersKGC 2013 DevSisters
KGC 2013 DevSisters
 
SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016
SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016
SBS 콘텐츠허브의 AWS 도입 사례 :: SBS 콘텐츠허브 :: AWS Media Day 2016
 
AWS 클라우드 데이터 이전을 위한 6가지 전략 (윤석찬) :: AWS 8월 월간 웨비나
AWS 클라우드 데이터 이전을 위한 6가지 전략 (윤석찬) :: AWS 8월 월간 웨비나 AWS 클라우드 데이터 이전을 위한 6가지 전략 (윤석찬) :: AWS 8월 월간 웨비나
AWS 클라우드 데이터 이전을 위한 6가지 전략 (윤석찬) :: AWS 8월 월간 웨비나
 
야, 너두 짤수있어 - IaC Basic(210131 김성익)
야, 너두 짤수있어 - IaC Basic(210131 김성익)야, 너두 짤수있어 - IaC Basic(210131 김성익)
야, 너두 짤수있어 - IaC Basic(210131 김성익)
 

Plus de NAVER D2

Plus de NAVER D2 (20)

[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
 
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
 
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기
 
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
 
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
 
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
 
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
 
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
 
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
 
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load BalancingOld version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
 
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
 
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
 
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
 
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
 
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
 
[213] Fashion Visual Search
[213] Fashion Visual Search[213] Fashion Visual Search
[213] Fashion Visual Search
 
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
 
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
 
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
 
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
 

파이어베이스 네이버 밋업발표

  • 1.
  • 2. 목차 • 파이어베이스란 무엇인가? • 우리가 사용한 파이어베이스 • 파이어베이스 삽질기 • 파이어베이스에 대한 아쉬운점
  • 3. 파이어베이스란 무엇인가 넌 개발에만 집중해 나머진 내가 다 할게 ! - 파이어베이스 구글이 인수한 클라우드 서비스로, 개발자들이 앱을 개발하고 서비스를 제공하는데 꼭 필요한 근간 (백엔드)인 분석도구, 데이터베이스, 광고 등을 API의 형태로 개발자에게 제공하는 백엔드 서비스다.
  • 4.
  • 5. 멀티 플랫폼 지원 - 아이폰, 안드로이드, 웹, 서버 , restful, c++(게임쪽 분야도 노리는듯 하네요.)
  • 6. 왜 파이어베이스를 쓰는가? • 제한된 개발 기간 • 빠른 사용자 분석 및 피드백 반영가능 • 크로스플랫폼 • 소수의 인력으로 서비스 레벨 의 품질구현 • 확장용이 • 기타 등등
  • 7. 파이어베이스를 사용하기전에 하나의 리뷰 객체를 데이터베이스에 저장할려면… 개발 및 배포 환경셋팅, 클라이언트 코드(HTTP 코드, JSON 파싱 및 만들기) 서버코드(JSON 파싱 및 만들기, DB 저장 및 요청코드] 다수의 서버가 필요. 실패했을때 반환코드와 그에 따른 처리 함수를 다 만들어줘야했음. +보안, 로드밸런싱, 스케일링, 캐시 , 서버 상태 반환 코드들도 다 짜줘야 했음.
  • 8.
  • 9.
  • 10. 파이어베이스 삽질기 • 1. 보안 설정 문제 • 2. RESTFUL 형태로 데이터를 요청할때 • 3. 파이어베이스는 기본적으로 비동기로 처리된다.
  • 12. 개인적으로 편하게 디버깅 및 테스트할때!
  • 14. • HTTPS://FIREBASE.GOOGLE.COM/DOCS/DATABASE/SECURITY/?HL=KO - 데이터베이스 보안 규칙 설정 • HTTPS://FIREBASE.GOOGLE.COM/DOCS/STORAGE/SECURITY/?HL=KO - 클라우드 스토리지 보안 규칙 설정 • HTTPS://DEVELOPERS-KR.GOOGLEBLOG.COM/2017/01/GROUP-SECURITY-IN-FIREBASE- DATABASE.HTML - 파이어베이스에 보안 규칙 설정 예시 보안규칙에 관한 자세한 사항은!
  • 15. 2. RESTFUL 방식으로 사용할때 • 기존에 서비스를 파이어베이스로 옮기면서 RESTFUL 통신부분은 기존걸 쓰기로함. • 파이어베이스 DB는 NOSQL 기반. RESTFUL 하게 데이터를 가져올때 조건에 맞는 데이터를 가져 올때 URL에 쿼리값을 붙여서 보낸다. EX) curl 'https://dinosaur- facts.firebaseio.com/dinosaurs.json?orderBy="dimensions/height "&startAt=3 - 키가 3을 초과하는 공룡의 리스트를 가져옴.
  • 16. 음 그렇게 하면 되겠군… Firebase에 요청할 내 GPS를 기반으로 주변에 있는 화장실과 와이파이 지역을 알려주는 url을 만든후 http 요청을 함
  • 17. 하지만 안됨… 왜? - 그런데 조건을 걸지않고 데이터를 로드하면 됨. - 특정 조건에 맞게 RESTFUL방식으로 데이터를 검색할려면 키값 색인 설정이 필요함.
  • 18. 3. 파이어베이스는 비동기기반 • 파이어베이스를 사용하는데 있어서 가장 많이 실수하는 부분 중 하나
  • 19. 파이어베이스 아쉬운점 • 인증 기능을 구현할때 커스텀 하기 어렵다.(EX. 카카오톡, 네이버 로그인) • 파일 저장기능을 유연하게 쓸라면 GOOGLE CLOUD STORAGE 와 따로 연동이필요한데 과정이 매우 복잡함(아직 지원도 잘 안되는 편). • 데이터를 가져올때 QUERY 의 배열 길이를 알 수 없기 때문에 PAGINATION 구현이 힘듬(별도의 처리가 필요함) • DB AUTO INCREMENT 기능이 없어서 별도로 만들어줘야됨. • 나아지고는 있으나 아직은 불 친절한 문서(생각보다 삽질이 많다) • 푸쉬기능에 이미지 전송기능은 X • 아직은 관련 사이트나 참고할 만한 자료가 많지 않음.