InfoGrab DocsInfoGrab Docs

레퍼런스 아키텍처: 최대 20 RPS 또는 1,000명 사용자

레퍼런스 아키텍처: 최대 20 RPS 또는 1,000명 사용자에 대해 설명합니다.

이 레퍼런스 아키텍처는 초당 20건의 요청(RPS) 최대 부하를 대상으로 합니다. 실제 데이터를 기준으로 이 부하는 수동 작업과 자동화된 작업을 모두 포함하여 최대 1,000명 사용자에 해당합니다. 레퍼런스 아키텍처 전체 목록은 사용할 수 있는 레퍼런스 아키텍처 를 참고합니다. 목표 부하 : API: 20 RPS, Web: 2 RPS, Git (Pull): 2 RPS, Git (Push): 1 RPS 고가용성 : 지원하지 않습니다. 고가용성 환경이 필요하다면 변형된 3K 레퍼런스 아키텍처 를 따릅니다. 클라우드 네이티브 하이브리드 : 지원하지 않습니다. 클라우드 네이티브 하이브리드 환경이 필요하다면 변형된 하이브리드 레퍼런스 아키텍처 를 따를 수 있습니다. 어떤 레퍼런스 아키텍처를 사용할지 정하지 못한 경우 : 자세한 내용은 시작할 아키텍처 결정 을 참고합니다. 사용자 구성 GCP 예시 1 AWS 예시 1 Azure 예시 1 최대 1,000명 또는 20 RPS 8 vCPU, 16 GB 메모리 n1-standard-8 2 c5.2xlarge F8s v2 다음 다이어그램은 GitLab을 단일 서버에 설치할 수 있지만 내부적으로는 여러 서비스로 구성된다는 점을 보여줍니다. 인스턴스를 확장할 때는 이러한 서비스를 분리하여 각 서비스의 수요에 맞게 개별적으로 확장합니다. 일부 서비스에는 PaaS를 활용할 수 있습니다. 예를 들어 일부 파일 시스템에는 Cloud Object Storage를 사용할 수 있습니다. 이중화를 위해 일부 서비스는 동일한 데이터를 저장하는 노드 클러스터로 구성됩니다. 수평 확장한 GitLab 구성에서는 클러스터를 조율하거나 리소스를 탐색하기 위해 여러 보조 서비스가 필요합니다. 예를 들어 PostgreSQL 연결 관리를 위한 PgBouncer, Prometheus 엔드포인트 탐색을 위한 Consul 이 있습니다. PlantUML 다이어그램 (29줄) 소스 코드 보기 @startuml 1k card "**Prometheus**" as monitor #7FFFD4 package "GitLab Single Server" as gitlab-single-server { together { card "**GitLab Rails**" as gitlab #32CD32 card "**Gitaly**" as gitaly #FF8C00 card "**PostgreSQL**" as postgres #4EA7FF card "**Redis**" as redis #FF6347 card "**Sidekiq**" as sidekiq #ff8dd1 } card "Local Storage" as local_storage #white } gitlab -[#32CD32]--> gitaly gitlab -[#32CD32]--> postgres gitlab -[#32CD32]--> redis gitlab -[#32CD32]--> sidekiq gitaly -[#32CD32]--> local_storage postgres -[#32CD32]--> local_stor