project 4

CMS 및 내부정산 시스템 데이터베이스 선택

1. 들어가며BFIND 프로젝트의 백엔드 개발을 시작하기에 앞서, 데이터베이스 아키텍처 설계 과정과 의사결정 내용을 정리했다. 현재 프론트엔드 일부만 구현된 상태에서, 백엔드 개발을 위한 데이터베이스 설계를 고민해보았다. BFIND는 웹툰, 웹소설 콘텐츠를 제공하는 웹 콘텐츠 플랫폼이다. 콘텐츠 관리 시스템(CMS)과 내부 정산 시스템을 기반으로 하며, Java/Kotlin과 Spring을 활용해 구축하기로 했다.1.1 기술 스택 선정 배경Java/Kotlin, Spring 선택 이유안정성과 신뢰성대규모 웹툰 플랫폼에서 검증된 기술 스택결제/정산과 같은 금전적 트랜잭션의 안정적 처리 보장Spring의 선언적 트랜잭션 관리로 데이터 정합성 확보확장성과 유연성트래픽 증가에 따른 수평적 확장 용이MSA 전환 ..

Project 2025.02.25

Youtube transcript 추출 및 번역, 요약 서비스 만들기 (Python, fastapi, React.js)

Intro유튜브 중독자답게 볼 영상이 너무 많은 관계로, lilys.ai 라는 서비스를 유료 사용 중이다. 그런데 이걸 한번 내가 만들어서 써본다면 어떨까 싶어서 GCP Free tier를 활용해서 간단하게 만들어봤다.Day 1 요약 동기유튜브 영상 자막, 번역, 요약, 영상 하이라이트 기능을 하나의 서비스로 통합해 제공하는 아이디어에서 시작되었다.기존에 lilys.ai 같은 유료 서비스를 사용하던 경험을 바탕으로, GCP Free Tier를 활용하여 직접 구현해보고자 결정하였다.의사결정 과정가장 먼저 고민한 것은 백엔드 기술 스택이었다. 백엔드 개발을 위한 기술 스택으로 Python과 FastAPI를 선택했다. Python과 FastAPI의 조합을 선택한 것은 단순한 기술적 선호도를 넘어서 실용적이라..

Project 2025.02.09

Kafka Saga 패턴 도입해 보상 트랜잭션 구현하기 (ERP Kafka 도입 2편)

지난 포스트에서는 Kafka 도입 배경과 그로 인한 효과를 살펴보았다.   모놀리식 아키텍처 ERP 프로젝트에서 Kafka 도입하기 1편정리한 내용이 생각보다 많아서 1편과 2편으로 나누어 작성한다.내용은 아래 목차 참고. 1편 목차 1. 도입: ERP 프로젝트의 시작과 모놀리식 아키텍처의 한계 2. REST Client로의 첫 번째 시도 • REST Creadyoun.tistory.com Kafka를 통해 서비스 간 비동기 통신을 구현하고, 시스템의 확장성과 안정성을 크게 개선할 수 있었다. 하지만, Kafka만으로는 분리된 마이크로서비스 간의 데이터 일관성을 완벽히 보장하지 못하는 문제가 남아 있었다. 이번 글에서는 Kafka와 Saga패턴을 활용해서 데이터 정합성 문제를 어떻게 해결했는지를 살펴보겠..

Project 2025.01.21

모놀리식 아키텍처 ERP 프로젝트에서 Kafka 도입하기 1편

간략 소개는 이전 포스트를 참고. 클라우드 SaaS 기반 ERP 시스템 개발 프로젝트 정리*수정 중 (2025-01-13) GitHub - ready-oun/ERPSystem: Final project overviewFinal project overview. Contribute to ready-oun/ERPSystem development by creating an account on GitHub.github.com 구현 영상 YouTube 참조: https://tinyurl.com/omz-erp-youtureadyoun.tistory.comERP 프로젝트는 처음 모놀리식 아키텍처로 시작했다.모든 서비스가 하나의 애플리케이션에 통합된 상태였다.그런데 전체 기능이 크게 72가지 정도가 되면서 서비스 분리 ..

Project 2025.01.20