OhDelivery 프로젝트의 반경 내 조회 기능은 배달 주문이 들어왔을 때, 해당 가게의 반경 Nkm 이내에 있는 배달 가능한 상태의 라이더들을 조회하고 알림을 보내는 기능이다.이 때, 라이더들의 위치는 실시간으로 변하고 있음을 가정하고 DB에서 라이더들을 조회하는
리스트와 튜플의 차이 리스트는 가변, 튜플은 불변이다. 튜플은 딕셔너리 키로 사용할 수 있다. GIL이란? GIL(Global Interpreter Lock)은 하나의 스레드만 파이썬 바이트 코드를 실행하도록 하는 락이다. 멀티 스레딩의 성능을 제한하지만, IO-bo
OhDelviery 프로젝트의 라이더 알림 기능을 구현하던 중 주변의 라이더를 조회하는 로직에 대한 성능 테스트를 진행해보기로 하였다. 해당 로직은 배달 이벤트 발생 시 가게 반경 10km이내의 라이더들을 조회해오는 로직으로 1. DB에서 현재 상태가 배달 가능인 라이
이번 스프링부트 프로젝트에서 인터페이스의 구현체를 선택해서 주입해야하는 부분이 있었다. 구현체를 주입하는건 간단하고 다양한 방법이 존재하지만, 스프링 빈 주입시 어떤 구현체를 주입할지 명확하게 지정할 수 있도록 해주는 @Qualifier 애너테이션을 적용해보기로 하였다
기획 이번 프로젝트는 라이더용 배달 어플로, 주문이 발생하면 가게 근처의 라이더들에게 주문 배달 알림을 전송하는 기능을 구현해야한다. 이 때, 이 알림 기능을 어떤 기술로 구현할지에 대해 고민해보았다. 메시지 큐 우선 이번 알림 서비스 구현은 이벤트 기반의 메시지
기본 질문 1. 영속성 컨텍스트의 범위는? ➡️ 영속성 컨텍스트의 범위는 일반적으로 HTTP 요청이 시작될 때 생성되고, 응답이 완료될 때 소멸된다. JPA에서는 @Trancational이 적용된 메서드 내에서 유지된다. 영속성 컨텍스트는 엔티티 객체를 관리하는
프로그래머스: 콜라 문제https://school.programmers.co.kr/learn/courses/30/lessons/132267해당 문제를 해결하기 위해 재귀 함수를 사용했다.그런데 특정 테스트 케이스에서만 런타임 에러가 발생했다. 재귀 함수를 사용
프로젝트명: 13friday진행 기간: 2025.03.12 ~ 2025.03.26팀원: 박동휘,서현재,김지현,진강훈목표: MSA 기반 B2B 물류 관리 및 배송 시스템 개발현재 : MSA를 경험할 수 있어서 좋았다강훈: 새로운 아키텍쳐 경험을 쌓고 다양한 기술을 적용
Redis(Remote Dictionary Server)는 인메모리 NoSQL 데이터베이스로, 키-값(key-value) 저장소 형태로 데이터를 빠르게 저장하고 검색할 수 있다.가장 큰 특징은 인메모리 데이터 베이스라는 점이다. 데이터를 디스크가 아닌 메모리(RAM)에
ECS ECS(Amazon Elastic Container Service)는 AWS에서 제공하는 컨테이너 오케스트레이션 서비스이다. 컨테이너 기반 애플리케이션을 AWS 환경에서 쉽게 배포하고 관리할 수 있도록 도와준다. 쿠버네티스와 비슷한 역할을 하지만 보다 저렴하고
📝 프로젝트 개요 프로젝트명: AI를 활용한 배달 REST API SERVER 진행 기간: 2025.02.12 ~ 2025.02.25 팀원: 이승욱, 김정환, 김지현, 오연주 목표: 광화문 근처에서 운영될 음식점들의 배달 및 포장 주문 관리, 결제, 그리고 주문 내
프로젝트명: AI를 활용한 배달 REST API SERVER진행 기간: 2025.02.12 ~ 2025.02.26팀원: 이승욱, 김정환, 김지현, 오연주목표: 광화문 근처에서 운영될 음식점들의 배달 및 포장 주문 관리, 결제, 그리고 주문 내역 관리 기능을 제공하는 플
Delivery 프로젝트 기능 구현을 마무리 하고 배포 단계에서 CI/CD를 할 것인지 의논하였으나 프로젝트 규모가 작아 그냥 배포만 하기로 결정하였다. 그런데 배포 과정에서 예상치 못한 오류를 만났으니... 트러블 슈팅을 정리해보자첫 번째 문제는 우리의 프로젝트 파일
트러블 슈팅 : AcccessDeninedHandler와 JwtAuthenticationEntryPoint를 설정했음에도 문제가 계속 발생했는데 첫 번째는 인가 과정에서 던져진 예외
이번 delivery 프로젝트에서 유저 기능 구현을 담당하게 되어 JWT 토큰 방식의 로그인을 구현 하던 중 토큰을 쿠키에 저장할지 헤더에 저장할지 고민이 생겼다. 두 가지 방식은 각각의 장단점이 존재한다. Cookie 쿠키(Cookie)에 저장하는 방식은 서버가 J
Q. 자바에서 Checked Exception과 Unchecked Exception에 대해 설명해주세요.
백엔드 개발자 4명이 스프링부트로 진행하는 배달/포장 서비스 서버 개발 프로젝트 설계이다. 광화문 근처에서 운영될 음식점들의 배달 및 포장 주문 관리, 결제, 그리고 주문 내역 관리 기능을 제공하는 플랫폼 개발한다. 도메인 : 사용자(User), 음식점(Store),
Spring Cloud 스프링 클라우드는 마이크로서비스 아키텍쳐(MSA) 기반의 시스템 구축을 도와주는 스프링 프레임워크의 확장이다. MSA 환경에서는 서비스 간 통신, 로드 밸런싱, 분산 구성 관리 등의 다양한 기능이 필요한데 스프링 클라우드는 이러한 기능을 손쉽게
MSA(Microservices Architecture)란 하나의 애플리케이션을 여러 개의 독립적인 서비스로 분리하여 개발, 배포, 유지보수를 용이하게 하는 소프트웨어 아키텍처 스타일로, 모든 기능이 하나의 애플리케이션 내에 포함되는 모놀리식 아키텍처(Mono
프로젝트를 배포할 땐 CI/CD 환경을 구성해서 배포하는 편이지만 간단하고 빠르게 배포를 하고 싶을 때는 jar 파일을 직접 올려 배포하기도 한다. EC2와 RDS 인스턴스를 설정하고 스프링부트 서버를 배포해보자. RDS RDS 인스턴스 생성 AWS RDS 대시보