# πŸ“Œ ν”„λ‘œμ νŠΈ μƒνƒœ ## πŸ“Œ 릴리슀 ν˜„μž¬ λ¦΄λ¦¬μŠ€λŠ” **v0.2.0-rc.3**이며 릴리슀 ν›„λ³΄μž…λ‹ˆλ‹€. λ³€κ²½ λ‚΄μš©κ³Ό νƒœκ·Έ μ‹œμ μ— μ•Œλ €μ§„ 결함은 [릴리슀 λ…ΈνŠΈ](https://github.com/dorianverlaine/pingclair/releases/tag/v0.2.0-rc.3)에 μžˆμŠ΅λ‹ˆλ‹€. `v0.1.x` 계열은 μœ μ§€λ³΄μˆ˜λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μˆ˜μ •λ„, λ°±ν¬νŠΈλ„, λ³΄μ•ˆ 곡지도 μ—†μŠ΅λ‹ˆλ‹€. λ˜ν•œ `v0.1.x`λŠ” Admin API의 `api_key` ν•„λ“œλ₯Ό νŒŒμ‹±ν•˜λ©΄μ„œ 읽지 μ•Šμ•„ κ·Έ ν•„λ“œκ°€ 아무것도 λ³΄ν˜Έν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. ## βœ… 지원 ν•­λͺ© | μ˜μ—­ | μƒνƒœ | | --- | --- | | ν”„λ‘œν† μ½œ | TCP μœ„μ˜ HTTP/1.1κ³Ό HTTP/2, QUIC μœ„μ˜ HTTP/3을 ν•˜λ‚˜μ˜ μ„€μ •μ—μ„œ. | | TLS | ACME 곡개 μΈμ¦μ„œ μžλ™ λ°œκΈ‰, μƒμ£Όν•˜λŠ” λ‚΄λΆ€ 인증 κΈ°κ΄€, μˆ˜λ™ μΈμ¦μ„œμ™€ ν‚€. | | 정적 파일 | `zstd`Β·`gzip` μ••μΆ•, λ²”μœ„ μš”μ²­, 쑰건뢀 μš”μ²­μ„ μ§€μ›ν•˜λŠ” 파일 제곡. | | λ¦¬λ²„μŠ€ ν”„λ‘μ‹œ | μ—¬λŸ¬ μ—…μŠ€νŠΈλ¦Ό, μ—¬λŸ¬ λΆ€ν•˜ λΆ„μ‚° μ •μ±…, λŠ₯동 μƒνƒœ 확인, μ˜ˆλΉ„ μ—…μŠ€νŠΈλ¦Ό. | | FastCGI | HTTP/1.1κ³Ό HTTP/2μ—μ„œ `php_fastcgi` 지원. | | 속도 μ œν•œ | 맀처 λ‹¨μœ„μ˜ μ •ν™•ν•œ 둜컬 속도 μ œν•œ. | | κ΄€μΈ‘μ„± | λ‘œν…Œμ΄μ…˜μ„ μ§€μ›ν•˜λŠ” μ ‘κ·Ό λ‘œκ·Έμ™€ Prometheus μ§€ν‘œ. | | 관리 | μƒνƒœ 확인과 μ„€μ • λ‹€μ‹œ λ‘œλ“œλ₯Ό μœ„ν•œ Admin API. | ## πŸ›‘οΈ μ˜λ„μ μœΌλ‘œ κ±°λΆ€ν•˜λŠ” μ„€μ • μ„€μ • ν˜•μ‹μ΄ μ •μ˜ν•œ 이름은 μ„œλ²„κ°€ κ΅¬ν˜„ν•œ μˆ˜λ³΄λ‹€ λ§ŽμŠ΅λ‹ˆλ‹€. μΆ©μ‘±ν•  수 μ—†λŠ” 이름은 λ‘œλ“œ μ‹œμ μ— 이름을 λ“€μ–΄ κ±°λΆ€ν•˜κ³  "κΈ°λŠ₯이 μ—†λ‹€"κ³  μ•Œλ¦½λ‹ˆλ‹€. 자주 λ¬»λŠ” 예: - `map`, `invoke`, `tracing` 같은 μ§€μ‹œμ–΄ - `storage` μ˜΅μ…˜(μΈμ¦μ„œμ™€ μƒνƒœλŠ” 둜컬 λ””μŠ€ν¬μ—λ§Œ μ €μž₯ν•˜κΈ° λ•Œλ¬Έ) - `on_demand_tls`와 OCSP stapling κ΄€λ ¨ μ˜΅μ…˜ - `handle_errors`(μ„€μ • νƒ€μž…μ€ μžˆμ§€λ§Œ 아무 일도 ν•˜μ§€ μ•ŠμŒ) - `encode br`(슀트리밍 Brotli 인코더가 μ—†κΈ° λ•Œλ¬Έ) 전체 λͺ©λ‘μ€ μ„œλ²„ μ €μž₯μ†Œμ˜ README에 있으며, νŒŒμ„œκ°€ λͺ©λ‘μ— μ—†λŠ” 이름을 κ±°λΆ€ν•˜λ©΄ μ‹€νŒ¨ν•˜λŠ” ν…ŒμŠ€νŠΈκ°€ μ§€ν‚΅λ‹ˆλ‹€. ## ⚠️ μ•Œλ €μ§„ μ œν•œ - **μΈμ¦μ„œ μ €μž₯μ†ŒλŠ” 둜컬 μ „μš©.** μ €μž₯μ†Œκ°€ λ””μŠ€ν¬μ˜ λ””λ ‰ν„°λ¦¬μ΄λ―€λ‘œ μ—¬λŸ¬ μΈμŠ€ν„΄μŠ€κ°€ ν•˜λ‚˜λ₯Ό κ³΅μœ ν•  수 μ—†μŠ΅λ‹ˆλ‹€. - **DNS-01 κ³΅κΈ‰μžλŠ” ν•˜λ‚˜.** `tls { dns cloudflare }`와 μ „μ—­ `acme_dns`λŠ” Cloudflare만 κ΅¬ν˜„ν•©λ‹ˆλ‹€. λ‹€λ₯Έ κ³΅κΈ‰μž 이름은 기동 μ‹œ κ±°λΆ€λ˜λ©° λ°›μ•„λ“€μ—¬ λ¬΄μ‹œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. - **HTTP/3의 trailer와 터널.** μš”μ²­μ—μ„œ μ„ μ–Έν•œ trailerλŠ” μ „λ‹¬λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€(ν™•μ • μ „ `501`, ν™•μ • ν›„ 슀트림 reset). μ—…μŠ€νŠΈλ¦Ό trailerλŠ” `502`κ°€ 되고 `CONNECT`λŠ” `501`을 λ°˜ν™˜ν•©λ‹ˆλ‹€. - **HTTP/3의 FastCGIλŠ” `501`을 λ°˜ν™˜ν•©λ‹ˆλ‹€.** κ·Έ κ²½λ‘œκ°€ 자체 FastCGI ν΄λΌμ΄μ–ΈνŠΈλ₯Ό κ°€μ§ˆ λ•ŒκΉŒμ§€μ˜ λ™μž‘μž…λ‹ˆλ‹€. - **WebSocket μ—…κ·Έλ ˆμ΄λ“œλŠ” λΆ€ν•˜ μ‹œ κ°„ν—μ μœΌλ‘œ μ‹€νŒ¨ν•©λ‹ˆλ‹€.** λ°”μœ λ¨Έμ‹ μ—μ„œ μ•½ 10-15%μž…λ‹ˆλ‹€. 원인은 Pingclair의 처리 κ°€ μ•„λ‹ˆλΌ μ—…μŠ€νŠΈλ¦Ό `pingora-proxy` crate의 경쟁 μƒνƒœμž…λ‹ˆλ‹€([cloudflare/pingora#946](https://github.com/cloudflare/pingora/issues/946)). 유휴 λ¨Έμ‹ μ—μ„œλŠ” μž¬ν˜„λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ## πŸ› 보고 결함과 λ¬Έμ„œ 였λ₯˜λŠ” [issue tracker](https://github.com/dorianverlaine/pingclair/issues)둜 λ³΄κ³ ν•˜μ‹­μ‹œμ˜€. λΉ„κ³΅κ°œ 보고 경둜λ₯Ό μ •ν•œ λ³΄μ•ˆ 정책은 아직 κ³΅κ°œν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. ## πŸ“š κ΄€λ ¨ λ¬Έμ„œ - [CHANGELOG](https://github.com/dorianverlaine/pingclair/blob/main/CHANGELOG.md): 릴리슀 κ°„ λ³€κ²½. - [μ„±λŠ₯ μΈ‘μ •](/ko/project/benchmarks/): μΈ‘μ • 쑰건과 κ²°κ³Ό. - [μ•„ν‚€ν…μ²˜](/ko/concepts/architecture/): ꡬ성 μš”μ†Œμ™€ μš”μ²­ 경둜.