언제까지 자동으로 잡아 주길 원해. - LocalContainerEntityManagerFactoryBean
안녕하세요. 카카오헤어샵 백엔드 개발팀 카이입니다. 이번 포스팅에서는 빈으로 등록된 값 사용한 AttributeConverter를 개발하면서 겪은 문제를 공유하고 어떻게 풀어 갔는지 소개해보려고 합니다. 저의 첫 포스팅 끝까지 읽어주실 거조. :) (문제 해결이 궁금하시다면 아래 요약으로 SKIP) 문제의 서막 엔티티의 속성 값 중 디비에 저장 및
JPA Dirty Checking사용시 주의점 - JPA를 사용한 업데이트 연산을 믿지 말자.
안녕하세요. 카카오헤어샵 백엔드 개발팀 딘입니다. 이번 포스팅에서는 간단하지만 쉽게 놓칠 수 있는 부분을 소개해드리려고 합니다. :) 어느 날 API 모니터링 중 유난히 응답속도가 오래 걸리는 API를 발견하게 되었고, 어떤 작업을 수행하는 API인지 찾아보게 되었습니다. API의 기능을 간략하게 정리하자면 아래와 같은 기능을 수행하고 있었습니다. 사
[뉴스] AWS, 오사카 리전(ap-northeast-3) 정식 공개
AWS에서는 2021년 3월 2일 오사카 리전(ap-northeast-3)을 정식 오픈하였습니다. 오사카 리전은 2018년부터 제한적으로 일부 고객에게만 서비스되던 로컬 리전으로 AZ를 3개로 확장하면서 일반 리전으로 공개하였습니다. 도쿄, 홍콩, 뭄바이, 서울, 싱가폴, 시드니, 베이징, 닝샤에 이어 아시아 9번째 리전이며, 리전 코드는 ap-nor...
8퍼센트 플랫폼개발 인턴 후기-마지막
이벤트 케러셀 남은 기간에는 저번 인턴기에 쓴 이벤트 케러셀/배너 스태프 페이지 만들기 작업을 이어서 계속했다. 관리자 페이지에서 케러셀과 배너를 저장하면 관련 정보를 DB에 저장하는 API와 DB에 저장된 정보를 바탕으로 홈페이지에 케러셀과 배너를 자동으로 띄우는 API를 만들었다. 100% 완성한 게 아니라서 인수인계를 하고 가야 한다는 점이 좀 아쉽다. 9주가 호로록 처음 인턴기 쓰던 순간이 생각난다. 그때는 2주도 이렇게 안 지나가는데
Redis를 통한 현재 접속 유저 파악하기
안녕하세요. Sell POD팀에서 판매자 대상으로 업무를 하고 있는 개발자 박명훈입니다. 오늘은 좀 더 기술적인 글을 작성해보려고 합니다. 최근 만든 서비스 중 하나는 지마켓과 옥션의 판매자 플랫픔 ESM+에서 접속 중인 사용자를 확인하고 다른 사용자를 로그아웃 시킬 수 있는 기능을 개발하였습니다. 다른 시니어 개발자 분 한분과 함께 개발을 했는데, 저는 서비스에서 사용하는 API을 주로 개발하였습니다. 이 기능을 통해서 현재 접속하고 있는 로그인 유저를 확인할 수 있고, 중복 로그인이 발생하였는지를 알 수 있고 이를 통해 다른 기능을 제공할 수 있습니다. 개발 고민최초 해당 업무를 받았을 때, 어떤 식으로 개발을 해야할 지 많은 고민을 했습니다. 당연히 로그인에 대한 로직이고, 해당 데이터 접근이 많고..
Java의 HashMap에 대하여 딱 이만큼만
HashMap은 매우 유용한 자료형(?)이다. Java에서 HashMap과 HashTable의 비교하는 글은 인터넷에 많이 있으므로 따로 정리하지 않겠다. HashMap은 key 와 value로 구성되는데 Map이라는 자료구조를 사용한다. Map은 key와 value을 연결하는 개념의 자료구조이다. 아래과 같은 식이다. "korea" --> "seoul" "japan" --> "tokyo" Java에서 Map은 interface이다. 즉 먼가 내부적으로 구현되어있는 것이 아니고 역활과 기능을 정리한 개념이라는 뜻이다. https://docs.oracle.com/javase/8/docs/api/java/util/Map.html Map은 하나의 key에 하나의 value가 mapping된다. 그외에도 여러가..
Quartz Scheduler Admin 고도화 - 파일럿 프로젝트
개별 서비스에 직접적인 영향은 없으나 서비스 유지보수에 도움이 되는 Quartz Scheduler Admin 에 대한 고도화 작업을 진행함으로서 실무 투입전 포털개발팀에서 사용하는 기술 스펙 적응 및 업무 프로세스 등을 익히고 파일럿 프로젝트 이후에도 계속 사용할 수 있는 산출물을 남김으로서 팀에 기여 하고자 하였습니다. Intro Quartz Scheduler Admin 이란? Quartz Job Scheduler 는 DB 기반으로 스케줄러
[DeFi 탐험 #2] Swerve
[장고 ORM] 역방향 참조 외래 키 찾기
이 포스팅은 8퍼센트의 CTO 이호성 님으로부터 치킨 두 마리를 지원받아 주관적으로 작성되었습니다. 개요 (TL; DR) 장고에서 외래 키 값을 수정할 때, 순방향 참조를 수정하는 경우(수정할 모델이 다른 모델을 가리킬 때)에는 단순히 외래 키 필드에 저장된 값을 수정하면 됩니다. 하지만 반대로, 역방향 참조를 수정하는 경우(다른 모델이 수정할 모델을 가리킬 때)에는 수정할 모델을 가리키는 모든 모델을 수정해야 합니다. 어디서 이 모델을 가리키
PostgreSQL 튜닝 - Autovacuum 최적화에 대하여
엔라이즈 개발팀은 2014년부터 PostgreSQL 을 꾸준히 사용해 왔습니다. 그동안 PostgreSQL 을 사용하면서 알게 된 다양한 최적화 방법들을 앞으로 작성할 여러 글들을 통해 공유 하고자 합니다. 이번 글에서는 PostgreSQL 의 Autovacuum 과 이를 최적화 하는 방법에 대해 이야기 해 보도록 하겠습니다.
PostgreSQL GIN 인덱스를 통한 LIKE 검색 성능 개선
JPA 덕분에 DB에서 삽질한 이야기
DB에 저장을 했는데, 조회가 안 돼요
Database Driven Development에서 진짜 DDD로의 선회, 이벤트 스토밍 -2-
DDD를 위한 첫걸음. Event Storming
Spatial index를 이용한 웹 어플리케이션 최적화
ERD 협업! Aquerytool 소개
AQueryTool Web 환경에서 간단하게 ERD를 그려볼 수 있는 Tool 이 있어 소개 해 보려고 합니다. 간단하게 ERD 를 그리고 관계를 설정하고, Query를 뽑아낼때 생산성 측면에서 활용이 가능할것으로 생각됩니다. 관련 소개와 도움말과 관련해서는 해당 링크를 참조하시면 더 자세하게 설명되어 있습니다. 1. 회원 가입 및 로그인 AQuueryTool : https://aquerytool.com 에 접속 회원가입을 하지않아도 ERD 작
SSMS 소소한 팁!
“빨리 좀 확인 해주세요~!” 😨 😨 😨 업무를 하다 보면 긴급 요청이 들어와 급히 테이블을 찾아야 하는 경우가 있죠 '이 테이블이 맞나?' '그 컬럼이 이 테이블에 있나?' '데이터가 잘 입력되어 있나?' 이런 경우가 많다면 이미 알고 계시는 내용일 수도 있겠지만 혹시 누군가에게는 꿀팁이 될 수도 있을거란 생각으로 SQL Server Management Studio 사용과 SQL 쿼리 작성에 도움이 될만한 내용을 소개해봅니다 😄 1.
게시판 CMS - 파일럿 프로젝트
입사일부터 일주일간 세팅 및 적응기간을 마치고 팀에서 실무를 하기 위한 전반적인 웹 기술들을 숙지하고자 하는 목적을 가지고 4주간 파일럿 프로젝트를 진행하였습니다. 이 글에서는 제가 파일럿 프로젝트를 진행할 때 사용한 기술들 , 진행하면서 어려웠던 점을 어떻게 해결하였는지 , 프로젝트를 마친 뒤 느낀 점에 대해 공유하고자 합니다. 1. 프로젝트 주제 제가 전달받은 프로젝트 주제는 소셜 로그인을 이용한 게시판 서비스 및 CMS시스템 구현이었습
[SQL SEVER] Lock -01. DeadLock 진단
“새벽마다 Dead-Lock이 발생해서, DB서버가 뻗을려고 해요” 😱 😱 😱 울 회사에는 아직 DBA 담당 조직이 셋팅되어 있지 않아, 가끔씩 SQL관련된 기술지원을 부탁 받곤 합니다. (Health Data Bank를 지향하는 우리 회사, Data관련 기초 체력이 부실하다는 자아 비판을 해봅니다.) 각설하고, 기술 블로그도 생겼으니, Dead-Lock case 대처하는 방법을 정리 하고, 공유를 해보고자 합니다. 우선, Dead-Loc