AI Briefing
KO

Choosing a Python Server Framework for Image Processing: Django, FastAPI, Sanic

·2022.08.29 19:00

Key point

KakaoPay compared Django, FastAPI, and Sanic while migrating from Kotlin to a Python-based server framework to ensure consistency and development efficiency in its image processing logic.

1 / 2

Details

KakaoPay decided to migrate from its existing Kotlin + Spring Boot environment to a Python-based server framework to improve the efficiency of its face detection and verification service. This was done to resolve the result consistency issues and decreased development productivity that arose when porting Python logic written by data scientists into Kotlin.

The core factors for framework selection were set as stability, performance, productivity, and ecosystem, and based on these, three candidates were compared: Django(DRF), FastAPI, and Sanic.

  • Django: A synchronous API server with high stability and a massive ecosystem.
  • FastAPI: An asynchronous API server known for fast performance, high productivity, and excellent documentation.
  • Sanic: A lightweight, asynchronous API server offering the fastest performance.

The performance testing was conducted in an AWS Cloud environment using Locust. To resemble the actual service, the workload was configured to include I/O Bound tasks and ML Model Inference calls, measuring Throughput(RPS) and Latency.

This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.

Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.