Parse 서버 확장
2020년, Facebook이 Parse의 오픈 소스 버전을 공개하기로 결정한 지 4년이 넘는 시간이 흘렀습니다. 이 기간 동안 많은 새로운 기능이 출시되었고 서포터즈 커뮤니티도 그 어느 때보다 커졌습니다. 이후 Back4App의 Parse 서버 플랫폼을 신뢰하기로 결정한 수많은 Parse.com 사용자들이 있다는 사실에 자부심을 느낍니다. 이 여정을 시작하면서 배운 몇 가지 교훈을 커뮤니티와 공유하고자 합니다.
Parse 확장 문제는 여러 Parse 사용자들에게 이슈가 되어 왔으며, 그 비결을 알려드리겠습니다.
Parse Server는 Parse.com의 오픈 소스 버전으로 출시되었지만 다른 여러 가지 면에서 귀중한 리소스로 입증되었습니다. 앱 구축 및 확장을 위한 훌륭한 NodeJS 프레임워크를 제공합니다. Back4App에서는 일부 앱을 최대 10.000 Req/s(동시 사용자 약 80,000명)까지 확장했습니다. 이 모든 것이 백엔드를 완벽하게 제어하고 블랙박스 솔루션의 잠금 및 제한을 피하면서 가능합니다.
이러한 경험은 Parse Server가 다른 블랙박스 백엔드의 한계를 훨씬 뛰어넘어 가격 페이지(아래 참조)에서 발표한 600 요청/초보다 훨씬 더 큰 규모로 확장할 수 있음을 입증합니다. 여러 가지 유용한 기능을 통해 Parse Server는 최고의 앱 확장 옵션이 될 수 있습니다. 이 중 가장 중요한 몇 가지 요소를 강조하고 싶습니다.
Contents
1-대규모 리엔지니어링 없이 확장 가능
새로운 모듈을 추가할 수 있는 유연성: 앱이 성장함에 따라 사용자 참여를 유지하거나 고객 확보를 개선하기 위해 새로운 기능이 필요하지만, 때로는 완전한 백엔드 플랫폼을 사용할 수 없을 수도 있습니다. Parse Server는 오픈 소스 솔루션이므로 다양한 npm(NodeJS) 모듈을 설치하고 고급 기능에 액세스하는 새로운 API를 통합할 수 있습니다.
수직 x 수평 확장: Parse Server는 인스턴스 간 상태 공유와 같은 문제 없는 수평적 확장을 지원하도록 설계되었습니다. 이를 통해 앱 요청 처리를 공유하기 위해 동일한 Parse Server 인스턴스를 새로 생성하기만 하면 됩니다. 이를 통해 머신 구성만 늘리는 수직 확장과 성능 및 비용 최적화를 위한 수평 확장 사이에서 최적의 균형을 찾을 수 있습니다. 예를 들어, 단일 머신에서 하나의 Parse Server 인스턴스로 시작하여 비용과 성능을 지속적으로 모니터링하면서 클라우드 플랫폼으로 수직 확장할 수 있습니다. 앱이 성장하면 이러한 서버의 복사본을 생성하고 로드 밸런서를 추가하여 요청을 더 잘 분산할 수 있습니다.
장애 방지 인프라에서 앱 실행
앱 확장을 시작할 때 중복성은 중요합니다. 많은 사용자로 인해 서버가 다운되는 것은 원치 않을 것입니다. 앱 확장을 시작하자마자 다음 구조를 사용해야 합니다.
- 로드 밸런서
- 애플리케이션 서버를 위한 자동 확장(최소 2개)
- 데이터베이스 서버용 복제본 세트(서버 2대 + 조정기 1대)
쿼리 성능 최적화: Parse Server 사용자 지정 앱 요청을 사용하여 각 앱 유형에 대해 최상의 성능을 얻을 수 있습니다.
2- 견고한 Parse Server 스택
언뜻 보기에는 어렵게 보일 수 있지만 실제로 확장성은 상당히 인상적입니다. 자바스크립트의 단일 스레드 특성에도 불구하고 Node는 클러스터 모듈을 사용하여 여러 코어를 활용할 수 있으므로 개발자는 공유 포트로 프로세스 네트워크를 생성할 수 있습니다. 여러 머신에 걸쳐 스케일아웃하기 위해 개발자는 nginx를 사용하여 여러 Parse Server 인스턴스에서 수신된 요청의 부하를 분산할 수 있습니다. 또한 노드의 사이트 인증은 connect-auth 라이브러리를 사용하여 효율적으로 실행할 수 있습니다. 이 프로세스는 일반적인 개발 실수를 방지하며 속도 또한 주요 이점 중 하나입니다.
3-어디서나 Parse Server 배포
원하는 서버에 Parse Server를 설치할 수 있습니다. 이를 통해 지연과 같은 문제를 피하고 필요에 맞는 최적의 인프라를 사용할 수 있습니다. 기술이 있다면 앱에 최적화된 자체 인프라를 구축하여 Parse Server를 호스팅할 수 있습니다. 더 나은 성능을 발휘할 수 있다고 생각되면 클라우드 솔루션을 선택할 수도 있습니다.
시장에서 사용 가능한 모든 주요 클라우드에 Parse를 배포할 수 있습니다. 예를 들어 AWS, Google Cloud, Digital Ocean 또는 Azure가 있습니다. 관리형 전문 서비스를 선호한다면 Back4app을 선택할 수 있습니다.
저희는 오픈 소스 모델이 Parse Server의 성공의 열쇠라고 결론지었습니다. 이 모델은 앱을 확장하는 즉시 프레임워크로 원하는 모든 작업을 수행할 수 있도록 보장합니다. 이는 Parse Server가 앱 백엔드 구축에 가장 인기 있는 오픈 소스 프레임워크가 된 이유를 설명하는 데 큰 도움이 됩니다. 현재 git 저장소에는 26,000명 이상의 스타게이저가 있으며 커뮤니티에는 100.000,000명 이상의 개발자가 포함되어 있습니다.
이 게시물이 마음에 드셨나요? Back4App에 무료로 가입하세요.
Parse Server를 확장하는 방법은?
대규모 Parse 앱에서 최고 수준의 성능을 달성하려면 다음을 수행하세요.
성능을 위해 쿼리를 최적화하세요.
앱을 장애 방지 및 중복 구조로 실행하세요.
NPM 모듈을 광범위하게 추가하세요.
Parse 앱은 얼마나 커질 수 있나요?
Back4app에서는 이미 초당 10,000건 이상의 요청을 처리할 수 있는 앱을 확장했습니다. 따라서 적절한 인프라만 구축된다면 앱은 상당히 크게 성장할 수 있습니다.
Parse를 어디에 배포할 수 있나요?
Parse는 Back4app과 같은 전문 Parse 호스팅 서비스나 AWS, Azure, Alibaba, Google Cloud, Digital Ocean과 같은 클라우드에 배포할 수 있습니다.