diff --git a/docs-site/app/[lang]/docs/layout.tsx b/docs-site/app/[lang]/docs/layout.tsx
index cacb4ef..fae838a 100644
--- a/docs-site/app/[lang]/docs/layout.tsx
+++ b/docs-site/app/[lang]/docs/layout.tsx
@@ -30,6 +30,14 @@ export default async function Layout({
),
}}
+ githubUrl="https://github.com/teamPaprika/bingsan"
+ links={[
+ {
+ text: lang === 'ko' ? '홈' : 'Home',
+ url: `/${lang}`,
+ active: 'none',
+ },
+ ]}
i18n={i18n}
>
{children}
diff --git a/docs-site/app/page.tsx b/docs-site/app/page.tsx
index 915fdd8..a3eac27 100644
--- a/docs-site/app/page.tsx
+++ b/docs-site/app/page.tsx
@@ -1,5 +1,27 @@
-import { redirect } from 'next/navigation';
+'use client';
+
+import { useEffect } from 'react';
export default function RootPage() {
- redirect('/en');
+ useEffect(() => {
+ // Client-side redirect for when JavaScript is enabled
+ const basePath = process.env.NEXT_PUBLIC_BASE_PATH || '';
+ window.location.href = `${basePath}/en`;
+ }, []);
+
+ const basePath = process.env.NEXT_PUBLIC_BASE_PATH || '';
+
+ return (
+ <>
+ {/* Meta refresh for when JavaScript is disabled */}
+
+
+
Redirecting to documentation...
+
+ If you are not redirected automatically, please{' '}
+ click here.
+
+
+ >
+ );
}
diff --git a/docs-site/content/docs/en/api/index.mdx b/docs-site/content/docs/en/api/index.mdx
index 748cbaf..d755995 100644
--- a/docs-site/content/docs/en/api/index.mdx
+++ b/docs-site/content/docs/en/api/index.mdx
@@ -21,7 +21,7 @@ When authentication is enabled, include the bearer token in requests:
curl -H "Authorization: Bearer " http://localhost:8181/v1/namespaces
```
-See [Authentication Configuration](/docs/configuration/auth) for details.
+See [Authentication Configuration](../configuration/auth) for details.
## Content Type
@@ -35,9 +35,9 @@ Content-Type: application/json
### Core Operations
-- [Namespaces](/docs/api/namespaces) - Namespace CRUD operations
-- [Tables](/docs/api/tables) - Table management and commits
-- [Views](/docs/api/views) - View management
+- [Namespaces](./namespaces) - Namespace CRUD operations
+- [Tables](./tables) - Table management and commits
+- [Views](./views) - View management
## Error Responses
diff --git a/docs-site/content/docs/en/architecture/index.mdx b/docs-site/content/docs/en/architecture/index.mdx
index 6ef906d..ee24cc2 100644
--- a/docs-site/content/docs/en/architecture/index.mdx
+++ b/docs-site/content/docs/en/architecture/index.mdx
@@ -92,7 +92,7 @@ PostgreSQL row-level locking with configurable timeouts prevents concurrent modi
- Automatic retry with exponential backoff
- Handles lock conflicts gracefully
-See [Distributed Locking](/docs/performance/locking) for configuration details.
+See [Distributed Locking](../performance/locking) for configuration details.
### Object Pooling
@@ -102,10 +102,10 @@ Memory optimization through buffer reuse:
- Reduces GC pressure under high load
- Prometheus metrics for pool health
-See [Object Pooling](/docs/performance/pooling) for implementation details.
+See [Object Pooling](../performance/pooling) for implementation details.
## Sections
-- [Request Flow](/docs/architecture/request-flow) - How requests are processed
-- [Data Model](/docs/architecture/data-model) - Database schema and metadata storage
-- [Scalability](/docs/architecture/scalability) - Scaling strategies and limits
+- [Request Flow](./request-flow) - How requests are processed
+- [Data Model](./data-model) - Database schema and metadata storage
+- [Scalability](./scalability) - Scaling strategies and limits
diff --git a/docs-site/content/docs/en/configuration/index.mdx b/docs-site/content/docs/en/configuration/index.mdx
index 652bfe8..6a38016 100644
--- a/docs-site/content/docs/en/configuration/index.mdx
+++ b/docs-site/content/docs/en/configuration/index.mdx
@@ -82,10 +82,10 @@ catalog:
## Configuration Sections
-- [Server](/docs/configuration/server) - HTTP server settings
-- [Database](/docs/configuration/database) - PostgreSQL connection
-- [Storage](/docs/configuration/storage) - S3/GCS/Local storage backends
-- [Authentication](/docs/configuration/auth) - OAuth2 and API key authentication
+- [Server](./server) - HTTP server settings
+- [Database](./database) - PostgreSQL connection
+- [Storage](./storage) - S3/GCS/Local storage backends
+- [Authentication](./auth) - OAuth2 and API key authentication
## Environment Variables
diff --git a/docs-site/content/docs/en/contributing/index.mdx b/docs-site/content/docs/en/contributing/index.mdx
index 48fd639..ed9b25e 100644
--- a/docs-site/content/docs/en/contributing/index.mdx
+++ b/docs-site/content/docs/en/contributing/index.mdx
@@ -73,7 +73,7 @@ bingsan/
### Code Contributions
-- Follow the [code style guide](/docs/contributing/code-style)
+- Follow the [code style guide](./code-style)
- Write tests for new functionality
- Update documentation as needed
- Keep commits focused and well-described
diff --git a/docs-site/content/docs/en/contributing/pull-requests.mdx b/docs-site/content/docs/en/contributing/pull-requests.mdx
index a6fdce1..80e9677 100644
--- a/docs-site/content/docs/en/contributing/pull-requests.mdx
+++ b/docs-site/content/docs/en/contributing/pull-requests.mdx
@@ -35,7 +35,7 @@ Use descriptive branch names:
### 2. Make Your Changes
-- Follow the [Code Style Guide](/docs/contributing/code-style)
+- Follow the [Code Style Guide](./code-style)
- Write tests for new functionality
- Update documentation as needed
diff --git a/docs-site/content/docs/en/deployment/index.mdx b/docs-site/content/docs/en/deployment/index.mdx
index 4a2f66c..2fbe0ae 100644
--- a/docs-site/content/docs/en/deployment/index.mdx
+++ b/docs-site/content/docs/en/deployment/index.mdx
@@ -11,12 +11,12 @@ This section covers deploying Bingsan in various environments.
### Development
-- [Docker Compose](/docs/deployment/docker) - Quick local setup
+- [Docker Compose](./docker) - Quick local setup
### Production
-- [Kubernetes](/docs/deployment/kubernetes) - Scalable cloud deployment
-- [Docker](/docs/deployment/docker) - Single-node production
+- [Kubernetes](./kubernetes) - Scalable cloud deployment
+- [Docker](./docker) - Single-node production
## Quick Comparison
@@ -54,4 +54,4 @@ Regardless of deployment method, you'll need to configure:
2. **Storage**: S3/GCS credentials and bucket
3. **Auth** (optional): OAuth/API key settings
-See [Configuration](/docs/configuration) for all options.
+See [Configuration](../configuration) for all options.
diff --git a/docs-site/content/docs/en/getting-started/first-steps.mdx b/docs-site/content/docs/en/getting-started/first-steps.mdx
index 71eb6bd..a0de1b7 100644
--- a/docs-site/content/docs/en/getting-started/first-steps.mdx
+++ b/docs-site/content/docs/en/getting-started/first-steps.mdx
@@ -246,6 +246,6 @@ spark.sql("SELECT * FROM bingsan.analytics.user_events LIMIT 10").show()
## Next Steps
-- [Explore all API endpoints](/docs/api)
-- [Configure authentication](/docs/configuration/auth)
-- [Set up monitoring](/docs/configuration/monitoring)
+- [Explore all API endpoints](../api)
+- [Configure authentication](../configuration/auth)
+- [Set up monitoring](../configuration/monitoring)
diff --git a/docs-site/content/docs/en/getting-started/index.mdx b/docs-site/content/docs/en/getting-started/index.mdx
index 280f61d..04c6e57 100644
--- a/docs-site/content/docs/en/getting-started/index.mdx
+++ b/docs-site/content/docs/en/getting-started/index.mdx
@@ -17,6 +17,6 @@ Before installing Bingsan, ensure you have the following:
## Sections
-- [Quick Start](/docs/getting-started/quick-start) - Get running in 5 minutes
-- [Installation](/docs/getting-started/installation) - Detailed installation options
-- [First Steps](/docs/getting-started/first-steps) - Create your first namespace and table
+- [Quick Start](./quick-start) - Get running in 5 minutes
+- [Installation](./installation) - Detailed installation options
+- [First Steps](./first-steps) - Create your first namespace and table
diff --git a/docs-site/content/docs/en/getting-started/installation.mdx b/docs-site/content/docs/en/getting-started/installation.mdx
index 0793b1d..a6a6f25 100644
--- a/docs-site/content/docs/en/getting-started/installation.mdx
+++ b/docs-site/content/docs/en/getting-started/installation.mdx
@@ -115,7 +115,7 @@ docker run -d \
Deploy to Kubernetes using Helm or raw manifests.
-See the [Kubernetes Deployment Guide](/docs/deployment/kubernetes) for detailed instructions.
+See the [Kubernetes Deployment Guide](../deployment/kubernetes) for detailed instructions.
## Database Setup
@@ -163,4 +163,4 @@ All configuration options can be set via environment variables using the `ICEBER
| `ICEBERG_DATABASE_DATABASE` | `database.database` | Database name |
| `ICEBERG_AUTH_ENABLED` | `auth.enabled` | Enable authentication |
-See the [Configuration Guide](/docs/configuration) for all options.
+See the [Configuration Guide](../configuration) for all options.
diff --git a/docs-site/content/docs/en/getting-started/quick-start.mdx b/docs-site/content/docs/en/getting-started/quick-start.mdx
index ad6f9ec..445d15f 100644
--- a/docs-site/content/docs/en/getting-started/quick-start.mdx
+++ b/docs-site/content/docs/en/getting-started/quick-start.mdx
@@ -27,7 +27,7 @@ Copy the example configuration file:
cp config.example.yaml config.yaml
```
-The default configuration works out of the box for local development. For production, see the [Configuration Guide](/docs/configuration).
+The default configuration works out of the box for local development. For production, see the [Configuration Guide](../configuration).
## Step 3: Start with Docker Compose
@@ -94,9 +94,9 @@ Response:
## Next Steps
-- [Create your first table](/docs/getting-started/first-steps)
-- [Learn about all API endpoints](/docs/api)
-- [Configure for production](/docs/configuration)
+- [Create your first table](./first-steps)
+- [Learn about all API endpoints](../api)
+- [Configure for production](../configuration)
## Stopping the Services
diff --git a/docs-site/content/docs/en/integrations/index.mdx b/docs-site/content/docs/en/integrations/index.mdx
index 3ae3eb3..c102385 100644
--- a/docs-site/content/docs/en/integrations/index.mdx
+++ b/docs-site/content/docs/en/integrations/index.mdx
@@ -9,9 +9,9 @@ Bingsan integrates with all major Iceberg clients through the standard REST Cata
## Supported Clients
-- [Apache Spark](/docs/integrations/spark) - Batch and streaming data processing
-- [Trino](/docs/integrations/trino) - Distributed SQL query engine
-- [PyIceberg](/docs/integrations/pyiceberg) - Python library for Iceberg
+- [Apache Spark](./spark) - Batch and streaming data processing
+- [Trino](./trino) - Distributed SQL query engine
+- [PyIceberg](./pyiceberg) - Python library for Iceberg
## Connection Overview
diff --git a/docs-site/content/docs/en/performance/index.mdx b/docs-site/content/docs/en/performance/index.mdx
index e475dfc..f7187bb 100644
--- a/docs-site/content/docs/en/performance/index.mdx
+++ b/docs-site/content/docs/en/performance/index.mdx
@@ -48,8 +48,8 @@ ICEBERG_CATALOG_MAX_LOCK_RETRIES=100
## Sections
-- [Object Pooling](/docs/performance/pooling) - Memory buffer reuse for reduced allocations
-- [Distributed Locking](/docs/performance/locking) - PostgreSQL-based locking with retry logic
-- [Benchmarking](/docs/performance/benchmarking) - Load testing with Apache Polaris Tools
-- [Metrics](/docs/performance/metrics) - Prometheus metrics for monitoring
-- [Tuning](/docs/performance/tuning) - Performance tuning guidelines
+- [Object Pooling](./pooling) - Memory buffer reuse for reduced allocations
+- [Distributed Locking](./locking) - PostgreSQL-based locking with retry logic
+- [Benchmarking](./benchmarking) - Load testing with Apache Polaris Tools
+- [Metrics](./metrics) - Prometheus metrics for monitoring
+- [Tuning](./tuning) - Performance tuning guidelines
diff --git a/docs-site/content/docs/ko/api/index.mdx b/docs-site/content/docs/ko/api/index.mdx
index dde6342..625cc15 100644
--- a/docs-site/content/docs/ko/api/index.mdx
+++ b/docs-site/content/docs/ko/api/index.mdx
@@ -21,7 +21,7 @@ http://localhost:8181/v1
curl -H "Authorization: Bearer " http://localhost:8181/v1/namespaces
```
-자세한 내용은 [인증 설정](/docs/configuration/auth)을 참조하세요.
+자세한 내용은 [인증 설정](../configuration/auth)을 참조하세요.
## Content Type
@@ -35,9 +35,9 @@ Content-Type: application/json
### 핵심 작업
-- [네임스페이스](/docs/api/namespaces) - 네임스페이스 CRUD 작업
-- [테이블](/docs/api/tables) - 테이블 관리 및 커밋
-- [뷰](/docs/api/views) - 뷰 관리
+- [네임스페이스](./namespaces) - 네임스페이스 CRUD 작업
+- [테이블](./tables) - 테이블 관리 및 커밋
+- [뷰](./views) - 뷰 관리
## 오류 응답
diff --git a/docs-site/content/docs/ko/architecture/index.mdx b/docs-site/content/docs/ko/architecture/index.mdx
index 137fd8c..ed2e851 100644
--- a/docs-site/content/docs/ko/architecture/index.mdx
+++ b/docs-site/content/docs/ko/architecture/index.mdx
@@ -90,10 +90,10 @@ Bingsan은 Apache Iceberg REST Catalog 명세를 구현한 상태 비저장(stat
- 지수 백오프를 통한 자동 재시도
- 락 충돌 원활히 처리
-자세한 설정은 [분산 잠금](/docs/performance/locking)을 참조하세요.
+자세한 설정은 [분산 잠금](../performance/locking)을 참조하세요.
## 섹션
-- [요청 흐름](/docs/architecture/request-flow) - 요청 처리 방식
-- [데이터 모델](/docs/architecture/data-model) - 데이터베이스 스키마 및 메타데이터 저장
-- [확장성](/docs/architecture/scalability) - 확장 전략 및 한계
+- [요청 흐름](./request-flow) - 요청 처리 방식
+- [데이터 모델](./data-model) - 데이터베이스 스키마 및 메타데이터 저장
+- [확장성](./scalability) - 확장 전략 및 한계
diff --git a/docs-site/content/docs/ko/configuration/index.mdx b/docs-site/content/docs/ko/configuration/index.mdx
index b5a60af..bb2d92b 100644
--- a/docs-site/content/docs/ko/configuration/index.mdx
+++ b/docs-site/content/docs/ko/configuration/index.mdx
@@ -41,10 +41,10 @@ auth:
## 설정 섹션
-- [서버](/docs/configuration/server) - HTTP 서버 설정
-- [데이터베이스](/docs/configuration/database) - PostgreSQL 연결
-- [스토리지](/docs/configuration/storage) - S3/GCS/로컬 스토리지 백엔드
-- [인증](/docs/configuration/auth) - OAuth2 및 API 키 인증
+- [서버](./server) - HTTP 서버 설정
+- [데이터베이스](./database) - PostgreSQL 연결
+- [스토리지](./storage) - S3/GCS/로컬 스토리지 백엔드
+- [인증](./auth) - OAuth2 및 API 키 인증
## 환경 변수
diff --git a/docs-site/content/docs/ko/contributing/index.mdx b/docs-site/content/docs/ko/contributing/index.mdx
index 0a6fc84..556a130 100644
--- a/docs-site/content/docs/ko/contributing/index.mdx
+++ b/docs-site/content/docs/ko/contributing/index.mdx
@@ -73,7 +73,7 @@ bingsan/
### 코드 기여
-- [코드 스타일 가이드](/docs/contributing/code-style) 준수
+- [코드 스타일 가이드](./code-style) 준수
- 새 기능에 대한 테스트 작성
- 필요에 따라 문서 업데이트
- 커밋을 집중적이고 잘 설명하도록 유지
diff --git a/docs-site/content/docs/ko/contributing/pull-requests.mdx b/docs-site/content/docs/ko/contributing/pull-requests.mdx
index 8063e08..a7fadd1 100644
--- a/docs-site/content/docs/ko/contributing/pull-requests.mdx
+++ b/docs-site/content/docs/ko/contributing/pull-requests.mdx
@@ -35,7 +35,7 @@ git checkout -b feature/your-feature-name
### 2. 변경사항 작성
-- [코드 스타일 가이드](/docs/contributing/code-style) 준수
+- [코드 스타일 가이드](./code-style) 준수
- 새 기능에 대한 테스트 작성
- 필요시 문서 업데이트
diff --git a/docs-site/content/docs/ko/deployment/index.mdx b/docs-site/content/docs/ko/deployment/index.mdx
index 20a5872..8a3482e 100644
--- a/docs-site/content/docs/ko/deployment/index.mdx
+++ b/docs-site/content/docs/ko/deployment/index.mdx
@@ -11,12 +11,12 @@ description: 다양한 환경에서 Bingsan 배포
### 개발 환경
-- [Docker Compose](/docs/deployment/docker) - 빠른 로컬 설정
+- [Docker Compose](./docker) - 빠른 로컬 설정
### 프로덕션
-- [Kubernetes](/docs/deployment/kubernetes) - 확장 가능한 클라우드 배포
-- [Docker](/docs/deployment/docker) - 단일 노드 프로덕션
+- [Kubernetes](./kubernetes) - 확장 가능한 클라우드 배포
+- [Docker](./docker) - 단일 노드 프로덕션
## 빠른 비교
@@ -54,4 +54,4 @@ description: 다양한 환경에서 Bingsan 배포
2. **스토리지**: S3/GCS 자격 증명 및 버킷
3. **인증** (선택사항): OAuth/API 키 설정
-모든 옵션은 [설정](/docs/configuration)을 참조하세요.
+모든 옵션은 [설정](../configuration)을 참조하세요.
diff --git a/docs-site/content/docs/ko/getting-started/first-steps.mdx b/docs-site/content/docs/ko/getting-started/first-steps.mdx
index 87776ee..2a68f6a 100644
--- a/docs-site/content/docs/ko/getting-started/first-steps.mdx
+++ b/docs-site/content/docs/ko/getting-started/first-steps.mdx
@@ -246,6 +246,6 @@ spark.sql("SELECT * FROM bingsan.analytics.user_events LIMIT 10").show()
## 다음 단계
-- [모든 API 엔드포인트 살펴보기](/docs/api)
-- [인증 설정](/docs/configuration/auth)
-- [모니터링 설정](/docs/configuration/monitoring)
+- [모든 API 엔드포인트 살펴보기](../api)
+- [인증 설정](../configuration/auth)
+- [모니터링 설정](../configuration/monitoring)
diff --git a/docs-site/content/docs/ko/getting-started/index.mdx b/docs-site/content/docs/ko/getting-started/index.mdx
index edf54d5..697c154 100644
--- a/docs-site/content/docs/ko/getting-started/index.mdx
+++ b/docs-site/content/docs/ko/getting-started/index.mdx
@@ -17,6 +17,6 @@ Bingsan을 설치하기 전에 다음 항목이 준비되어 있는지 확인하
## 섹션
-- [빠른 시작](/docs/getting-started/quick-start) - 5분 만에 실행하기
-- [설치](/docs/getting-started/installation) - 상세 설치 옵션
-- [첫 번째 단계](/docs/getting-started/first-steps) - 첫 번째 네임스페이스와 테이블 생성하기
+- [빠른 시작](./quick-start) - 5분 만에 실행하기
+- [설치](./installation) - 상세 설치 옵션
+- [첫 번째 단계](./first-steps) - 첫 번째 네임스페이스와 테이블 생성하기
diff --git a/docs-site/content/docs/ko/getting-started/installation.mdx b/docs-site/content/docs/ko/getting-started/installation.mdx
index fcfa22d..455fd0d 100644
--- a/docs-site/content/docs/ko/getting-started/installation.mdx
+++ b/docs-site/content/docs/ko/getting-started/installation.mdx
@@ -115,7 +115,7 @@ docker run -d \
Helm 또는 raw 매니페스트를 사용하여 Kubernetes에 배포합니다.
-자세한 내용은 [Kubernetes 배포 가이드](/docs/deployment/kubernetes)를 참조하세요.
+자세한 내용은 [Kubernetes 배포 가이드](../deployment/kubernetes)를 참조하세요.
## 데이터베이스 설정
@@ -163,4 +163,4 @@ curl http://localhost:8181/v1/config
| `ICEBERG_DATABASE_DATABASE` | `database.database` | 데이터베이스 이름 |
| `ICEBERG_AUTH_ENABLED` | `auth.enabled` | 인증 활성화 |
-모든 옵션은 [설정 가이드](/docs/configuration)를 참조하세요.
+모든 옵션은 [설정 가이드](../configuration)를 참조하세요.
diff --git a/docs-site/content/docs/ko/getting-started/quick-start.mdx b/docs-site/content/docs/ko/getting-started/quick-start.mdx
index d6eec3c..ab68c07 100644
--- a/docs-site/content/docs/ko/getting-started/quick-start.mdx
+++ b/docs-site/content/docs/ko/getting-started/quick-start.mdx
@@ -27,7 +27,7 @@ cd bingsan
cp config.example.yaml config.yaml
```
-기본 설정은 로컬 개발 환경에서 바로 사용할 수 있습니다. 프로덕션 환경의 경우 [설정 가이드](/docs/configuration)를 참조하세요.
+기본 설정은 로컬 개발 환경에서 바로 사용할 수 있습니다. 프로덕션 환경의 경우 [설정 가이드](../configuration)를 참조하세요.
## Step 3: Docker Compose로 시작
@@ -94,9 +94,9 @@ curl http://localhost:8181/v1/namespaces
## 다음 단계
-- [첫 번째 테이블 생성하기](/docs/getting-started/first-steps)
-- [모든 API 엔드포인트 알아보기](/docs/api)
-- [프로덕션 설정](/docs/configuration)
+- [첫 번째 테이블 생성하기](./first-steps)
+- [모든 API 엔드포인트 알아보기](../api)
+- [프로덕션 설정](../configuration)
## 서비스 중지
diff --git a/docs-site/content/docs/ko/integrations/index.mdx b/docs-site/content/docs/ko/integrations/index.mdx
index 410fcb9..1b5c6bd 100644
--- a/docs-site/content/docs/ko/integrations/index.mdx
+++ b/docs-site/content/docs/ko/integrations/index.mdx
@@ -9,9 +9,9 @@ Bingsan은 표준 REST Catalog API를 통해 모든 주요 Iceberg 클라이언
## 지원 클라이언트
-- [Apache Spark](/docs/integrations/spark) - 배치 및 스트리밍 데이터 처리
-- [Trino](/docs/integrations/trino) - 분산 SQL 쿼리 엔진
-- [PyIceberg](/docs/integrations/pyiceberg) - Iceberg용 Python 라이브러리
+- [Apache Spark](./spark) - 배치 및 스트리밍 데이터 처리
+- [Trino](./trino) - 분산 SQL 쿼리 엔진
+- [PyIceberg](./pyiceberg) - Iceberg용 Python 라이브러리
## 연결 개요
diff --git a/docs-site/content/docs/ko/performance/index.mdx b/docs-site/content/docs/ko/performance/index.mdx
index a58dc51..8b5dc39 100644
--- a/docs-site/content/docs/ko/performance/index.mdx
+++ b/docs-site/content/docs/ko/performance/index.mdx
@@ -46,8 +46,8 @@ ICEBERG_CATALOG_MAX_LOCK_RETRIES=100
## 섹션
-- [오브젝트 풀링](/docs/performance/pooling) - 할당 감소를 위한 메모리 버퍼 재사용
-- [분산 잠금](/docs/performance/locking) - 재시도 로직이 있는 PostgreSQL 기반 잠금
-- [벤치마킹](/docs/performance/benchmarking) - Apache Polaris Tools를 사용한 부하 테스트
-- [메트릭](/docs/performance/metrics) - 모니터링을 위한 Prometheus 메트릭
-- [튜닝](/docs/performance/tuning) - 성능 튜닝 가이드라인
+- [오브젝트 풀링](./pooling) - 할당 감소를 위한 메모리 버퍼 재사용
+- [분산 잠금](./locking) - 재시도 로직이 있는 PostgreSQL 기반 잠금
+- [벤치마킹](./benchmarking) - Apache Polaris Tools를 사용한 부하 테스트
+- [메트릭](./metrics) - 모니터링을 위한 Prometheus 메트릭
+- [튜닝](./tuning) - 성능 튜닝 가이드라인