]> git.ipfire.org Git - thirdparty/fastapi/fastapi.git/commitdiff
๐ŸŒ Add Korean translation for `docs/ko/docs/benchmarks.md` (#12540)
author์ž„์„ ์˜ค <vhtmxj154@naver.com>
Sun, 27 Oct 2024 15:01:38 +0000 (00:01 +0900)
committerGitHub <noreply@github.com>
Sun, 27 Oct 2024 15:01:38 +0000 (15:01 +0000)
docs/ko/docs/benchmarks.md [new file with mode: 0644]

diff --git a/docs/ko/docs/benchmarks.md b/docs/ko/docs/benchmarks.md
new file mode 100644 (file)
index 0000000..aff8ae7
--- /dev/null
@@ -0,0 +1,34 @@
+# ๋ฒค์น˜๋งˆํฌ
+
+๋…๋ฆฝ์ ์ธ TechEmpower ๋ฒค์น˜๋งˆํฌ์— ๋”ฐ๋ฅด๋ฉด **FastAPI** ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด Uvicorn์„ ์‚ฌ์šฉํ•˜์—ฌ <a href="https://www.techempower.com/benchmarks/#section=test&runid=7464e520-0dc2-473d-bd34-dbdfd7e85911&hw=ph&test=query&l=zijzen-7" class="external-link" target="_blank">๊ฐ€์žฅ ๋น ๋ฅธ Python ํ”„๋ ˆ์ž„์›Œํฌ ์ค‘ ํ•˜๋‚˜</a>๋กœ ์‹คํ–‰๋˜๋ฉฐ, Starlette์™€ Uvicorn ์ž์ฒด(๋‚ด๋ถ€์ ์œผ๋กœ FastAPI๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋„๊ตฌ)๋ณด๋‹ค ์กฐ๊ธˆ ์•„๋ž˜์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค.
+
+๊ทธ๋Ÿฌ๋‚˜ ๋ฒค์น˜๋งˆํฌ์™€ ๋น„๊ต๋ฅผ ํ™•์ธํ•  ๋•Œ ๋‹ค์Œ ์‚ฌํ•ญ์„ ์—ผ๋‘์— ๋‘์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
+
+## ๋ฒค์น˜๋งˆํฌ์™€ ์†๋„
+
+๋ฒค์น˜๋งˆํฌ๋ฅผ ํ™•์ธํ•  ๋•Œ, ์ผ๋ฐ˜์ ์œผ๋กœ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์œ ํ˜•์˜ ๋„๊ตฌ๊ฐ€ ๋™๋“ฑํ•œ ๊ฒƒ์œผ๋กœ ๋น„๊ต๋˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
+
+ํŠนํžˆ, Uvicorn, Starlette, FastAPI๊ฐ€ ํ•จ๊ป˜ ๋น„๊ต๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค(๋‹ค๋ฅธ ์—ฌ๋Ÿฌ ๋„๊ตฌ์™€ ํ•จ๊ป˜).
+
+๋„๊ตฌ๊ฐ€ ํ•ด๊ฒฐํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋‹จ์ˆœํ• ์ˆ˜๋ก ์„ฑ๋Šฅ์ด ๋” ์ข‹์•„์ง‘๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋Œ€๋ถ€๋ถ„์˜ ๋ฒค์น˜๋งˆํฌ๋Š” ๋„๊ตฌ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ํ…Œ์ŠคํŠธํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
+
+๊ณ„์ธต ๊ตฌ์กฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:
+
+* **Uvicorn**: ASGI ์„œ๋ฒ„
+    * **Starlette**: (Uvicorn ์‚ฌ์šฉ) ์›น ๋งˆ์ดํฌ๋กœ ํ”„๋ ˆ์ž„์›Œํฌ
+        * **FastAPI**: (Starlette ์‚ฌ์šฉ) API ๊ตฌ์ถ•์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ๋“ฑ ์—ฌ๋Ÿฌ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด ํฌํ•จ๋œ API ๋งˆ์ดํฌ๋กœ ํ”„๋ ˆ์ž„์›Œํฌ
+
+* **Uvicorn**:
+    * ์„œ๋ฒ„ ์ž์ฒด ์™ธ์—๋Š” ๋งŽ์€ ์ถ”๊ฐ€ ์ฝ”๋“œ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ตœ๊ณ ์˜ ์„ฑ๋Šฅ์„ ๋ฐœํœ˜ํ•ฉ๋‹ˆ๋‹ค.
+    * ์ง์ ‘ Uvicorn์œผ๋กœ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์ง€๋Š” ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ์‚ฌ์šฉ์ž์˜ ์ฝ”๋“œ์—๋Š” ์ ์–ด๋„ Starlette(๋˜๋Š” **FastAPI**)์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ชจ๋“  ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ์ตœ์ข… ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์•ฑ ์ฝ”๋“œ์™€ ๋ฒ„๊ทธ๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•œ ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
+    * Uvicorn์„ ๋น„๊ตํ•  ๋•Œ๋Š” Daphne, Hypercorn, uWSGI ๋“ฑ์˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์„œ๋ฒ„์™€ ๋น„๊ตํ•˜์„ธ์š”.
+* **Starlette**:
+    * Uvicorn ๋‹ค์Œ์œผ๋กœ ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ฐœํœ˜ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์‹ค Starlette๋Š” Uvicorn์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋” ๋งŽ์€ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— Uvicorn๋ณด๋‹ค "๋А๋ ค์งˆ" ์ˆ˜๋ฐ–์— ์—†์Šต๋‹ˆ๋‹ค.
+    * ํ•˜์ง€๋งŒ ๊ฒฝ๋กœ ๊ธฐ๋ฐ˜ ๋ผ์šฐํŒ… ๋“ฑ ๊ฐ„๋‹จํ•œ ์›น ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
+    * Starlette๋ฅผ ๋น„๊ตํ•  ๋•Œ๋Š” Sanic, Flask, Django ๋“ฑ์˜ ์›น ํ”„๋ ˆ์ž„์›Œํฌ(๋˜๋Š” ๋งˆ์ดํฌ๋กœ ํ”„๋ ˆ์ž„์›Œํฌ)์™€ ๋น„๊ตํ•˜์„ธ์š”.
+* **FastAPI**:
+    * Starlette๊ฐ€ Uvicorn์„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ Uvicorn๋ณด๋‹ค ๋นจ๋ผ์งˆ ์ˆ˜ ์—†๋Š” ๊ฒƒ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, **FastAPI**๋Š” Starlette๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ๋” ๋น ๋ฅผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
+    * FastAPI๋Š” Starlette์— ์ถ”๊ฐ€์ ์œผ๋กœ ๋” ๋งŽ์€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. API๋ฅผ ๊ตฌ์ถ•ํ•  ๋•Œ ๊ฑฐ์˜ ํ•ญ์ƒ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ๋ฐ ์ง๋ ฌํ™”์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ๋“ค์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌธ์„œ ์ž๋™ํ™” ๊ธฐ๋Šฅ๋„ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค(๋ฌธ์„œ ์ž๋™ํ™”๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์‹œ ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š๊ณ  ์‹œ์ž‘ ์‹œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค).
+    * FastAPI๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์ง์ ‘ Starlette(๋˜๋Š” Sanic, Flask, Responder ๋“ฑ)๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ๋ฐ ์ง๋ ฌํ™”๋ฅผ ์ง์ ‘ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ตœ์ข… ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ FastAPI๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒƒ๊ณผ ๋™์ผํ•œ ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋งŽ์€ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ๋ฐ ์ง๋ ฌํ™”๊ฐ€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ž‘์„ฑ๋œ ์ฝ”๋“œ ์ค‘ ๊ฐ€์žฅ ๋งŽ์€ ๋ถ€๋ถ„์„ ์ฐจ์ง€ํ•ฉ๋‹ˆ๋‹ค.
+    * ๋”ฐ๋ผ์„œ FastAPI๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ๊ฐœ๋ฐœ ์‹œ๊ฐ„, ๋ฒ„๊ทธ, ์ฝ”๋“œ ๋ผ์ธ์„ ์ค„์ผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, FastAPI๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜์„ ๋•Œ์™€ ๋™์ผํ•˜๊ฑฐ๋‚˜ ๋” ๋‚˜์€ ์„ฑ๋Šฅ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์ฝ”๋“œ์—์„œ ๋ชจ๋‘ ๊ตฌํ˜„ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—).
+    * FastAPI๋ฅผ ๋น„๊ตํ•  ๋•Œ๋Š” Flask-apispec, NestJS, Molten ๋“ฑ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ, ์ง๋ ฌํ™” ๋ฐ ๋ฌธ์„œํ™”๊ฐ€ ํ†ตํ•ฉ๋œ ์ž๋™ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ, ์ง๋ ฌํ™” ๋ฐ ๋ฌธ์„œํ™”๋ฅผ ์ œ๊ณตํ•˜๋Š” ์›น ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ํ”„๋ ˆ์ž„์›Œํฌ(๋˜๋Š” ๋„๊ตฌ ์ง‘ํ•ฉ)์™€ ๋น„๊ตํ•˜์„ธ์š”.