React native backend

안녕하세요 react native를 사용해서 어플리케이션을 제작 진행중인 스타트업입니다.
현재 프론트엔드는 거의 완성이 되었는데 서버 및 데이터베이스 개발을 처음 해 보아서 많이 막막한 상황입니다.

어플에서 백엔드가 필요한 부분은 커뮤니티(기존에 존재하는 다른 어플들같은 커뮤니티라고 생각하시면 됩니다) 및 유저 로그인, 소셜로그인 등등입니다.

어떤 플랫폼을 사용해서 어떻게 개발하는 것이 좋을까요?(aws를 사용한다면 ec2, rds등 자세하게ㅠㅠ)
혹시 자문가능하신 분 계시면 연락남겨주시면 감사하겠습니다

저는 firebase를 추천합니다. 좀 느리긴해도 종합선물세트처럼 다 들어있습니다.

aws에 amplify라는 서비스도 괜찮다고 생각합니다. 이 제품은 아직 써보진 않았습니다.
https://docs.amplify.aws/

뭔가 다른 플랫폼에 의존하기 싫고 내부가 어떻게 동작하는지 미심적다면, 오픈소스로 컨트롤 가능한 parse 를 찾아보시면 좋겠네요. 이것도 위의 두 서비스처럼 호스팅해주는 서비스가 있습니다.

1 Like

친절한 답변 감사합니다!! firebase를 쓰면 많이 느려질까요? 공통적으로 다른분들도 firebase가 느리다는 점을 많이 지적하더라구요 ㅠㅠ

firebase가 느리다는 건 제 경험상 두 가지 이슈가 있습니다.

  1. firebase sdk 을 통합하는데 이 라이브러리 용량이 무척 큽니다. 그래서 앱을 초기 구동할 때 느린 점
  2. firebase db나 storage 가 seoul은 아직 공식지원하지 않아서 도쿄에 있습니다. 그래서 라운드 트립 시간이 길어요. (그런데 한번 연결하면 그 후에는 onSnapshot으로 업데이트나 삭제등의 이벤트를 받게 됩니다. 이건 정말 빨라요.)

여러가지 상황을 고려해서 aws와 firebase중에 결정해야겠네요 ㅠㅠㅠ감사합니다!!

저는 Firebase 로 어플리케이션을 만들고 있습니다.
AWS는 경험이 없어서 비교는 하기 어렵습니다만,
Firebase(필요시 GCP도 함께)로 구현되지 않는 것은 없는 것 같습니다.
특히나, 유저 로그인 인증과 소셜로그인을 구현하는 것은 편리했던 것 같네요.

API는 Functions를 사용하고,
DB는 Firestore 를 사용하고 있습니다.

1 Like

답변 감사합니다 저도 firebase로 간단한 프로젝트는 해본적이 있느데 aws를 써본적이 없어서 ㅠㅠㅠ고민이 되네요 ㅠㅠ

저는 AWS 를 쓰고 있는 유저로써 Amplify는 분명 개발자에게 편리한 옵션들을 제공해 주는 플랫폼인 것은 사실입니다만, 아직 베타버전이라고 해도 될정도로 완성도가 떨어지는 편입니다. 그로 인한 사이드이펙트 발생으로 인하여 해결을 위해 구글링이나 amplify github 리포지토리에서 시간을 보내는 경우가 심심찮게 발생합니다 ㅎ

그래서 AWS를 한번도 써보신 적이 없으시다고 하면 Amplify는 솔직히 아직까지는 비추입니다.
단, 소셜로그인을 제외한 유저 로그인(Cognito)과 저장소(S3) 하실 거라면 한번 써봄직 하다고 생각은 듭니다. 소셜로그인은 로컬 개발환경과 배포 환경과의 통일감이 없어서 개발할 때 상당히 불편한 경험이 있습니다.

YouTube에 Amplify 튜토리얼 영상은 많이 존재하는데, 몇개 봐 보시고 결정하심이 좋을 듯 합니다. Nader Dabit이란 사람의 채널을 보는 걸 추천드립니다

그리고 expo와 react-native를 활용한 예제 리포지토리와 튜토리얼 영상도 공유드려보겠습니다.


https://drive.google.com/drive/folders/14lyN2MaecQ2_69_PJQO7LPSlGPNlFjSO?usp=sharing

1 Like

답변 정말 감사합니다 이제서야 확인했네요
좋은 정보 감사합니다!!