JPA Dirty Checking사용시 주의점 - JPA를 사용한 업데이트 연산을 믿지 말자.
안녕하세요. 카카오헤어샵 백엔드 개발팀 딘입니다. 이번 포스팅에서는 간단하지만 쉽게 놓칠 수 있는 부분을 소개해드리려고 합니다. :) 어느 날 API 모니터링 중 유난히 응답속도가 오래 걸리는 API를 발견하게 되었고, 어떤 작업을 수행하는 API인지 찾아보게 되었습니다. API의 기능을 간략하게 정리하자면 아래와 같은 기능을 수행하고 있었습니다. 사
써드파티 API 호출을 위한 암호화 삽질기
[기술 블로그] 로플랫 SDK 개발 이야기
Webhook 이란
[키워드] 로케일(Locale)이란? 국가 및 언어 설정
로케일(Locale)은 사용자 인터페이스에서 사용되는 언어, 지역 설정, 출력 형식 등을 정의하는 문자열입니다. 유닉스, 리눅스, 맥OS 등 POSIX (호환) 시스템에서는 언어, 국가, 인코딩 방법의 조합으로된 문자열을 사용합니다.
GKE Autopilot 사용하기
[키워드] ruby-install이란? 루비 설치 유틸리티
ruby-install은 맥OS(macOS)와 리눅스(Linux)에서 프로그래밍 언어 Ruby의 다양한 배포판을 손쉽게 설치할 수 있도록 도와주는 도구입니다. Ruby, JRuby, Rubinius, TruffleRuby, mruby 등의 배포판을 지원하고 있으며, 원하는 버전을 원하는 위치에 설치할 수 있습니다. direnv, rbenv, RVM와...
[키워드] 노션(Notion)이란? 올인원 업무용 협업 도구
노션(Notion)은 노션(Notion Labs)에서 개발하고 서비스하는 노트, 업무, 할 일 관리, 데이터베이스 등의 기능을 지원하는 온라인 올인원 협업 도구입니다. 노션 랩은 2016년 이반 자오와 시몬 라스트 등이 함께 설립하였으며, 2020년 4월 현재 2조 이상의 기업 가치를 평가 받으며 약 550억원의 투자를 유치하였습니다. 투자 시점에 사...
사전예약 서버 프로파일링으로 서버 병목찾아 개선하기
artillery, linux perf로 node.js 서버 성능을 테스팅하여 flamegraph를 뽑아내고 서버의 병목구간을 찾아 개선한 경험을 소개합니다.
자바의 HashMap을 효과적으로 사용하는 법
Java의 HashMap에 대하여 딱 이만큼만에서 소개했드시 HashMap은 유용한 자료형이다.저번시간에는 HashMap의 이론적인 방법을 소개했다면 이번에는 효과적으로 사용하는 방법을 알아보자.HashMap에서 모든 Key와 Value를 print하기HashMap에서 모든 Key와 Value를 print하는 다양한 방법이 있다. 하나씩 알아 보자.모든 key를 print 하는 방법Set keys = productPrice.keySet();//print all the keys for (String key : keys) { System.out.println(key); }// or keys.forEach(key -> System.out.println(key));좀 더 간결한 람다 표현식인 forEa..
hardhat과 typechain을 사용한 컨트랙트 개발
[키워드] iTerm2란? 맥OS의 터미널 대체 애플리케이션
iTerm2는 맥OS에서 공식 터미널 애플리케이션 대신 사용할 수 있는 가상 터미널 애플리케이션입니다. 화면 분할, 핫키 윈도우, 검색 및 하이라이트, 카피 모드, 붙여넣기 히스토리, 인스턴스 리플레이 등의 기능을 제공하고 있으며, 터미널보다 기능이 많아서 맥OS 사용자들의 사랑을 받고 있습니다. 최신 버전은 2020년 11월에 릴리스된 3.4 버전입니다.
8퍼센트 플랫폼개발 인턴 후기-마지막
이벤트 케러셀 남은 기간에는 저번 인턴기에 쓴 이벤트 케러셀/배너 스태프 페이지 만들기 작업을 이어서 계속했다. 관리자 페이지에서 케러셀과 배너를 저장하면 관련 정보를 DB에 저장하는 API와 DB에 저장된 정보를 바탕으로 홈페이지에 케러셀과 배너를 자동으로 띄우는 API를 만들었다. 100% 완성한 게 아니라서 인수인계를 하고 가야 한다는 점이 좀 아쉽다. 9주가 호로록 처음 인턴기 쓰던 순간이 생각난다. 그때는 2주도 이렇게 안 지나가는데
Redis를 통한 현재 접속 유저 파악하기
안녕하세요. Sell POD팀에서 판매자 대상으로 업무를 하고 있는 개발자 박명훈입니다. 오늘은 좀 더 기술적인 글을 작성해보려고 합니다. 최근 만든 서비스 중 하나는 지마켓과 옥션의 판매자 플랫픔 ESM+에서 접속 중인 사용자를 확인하고 다른 사용자를 로그아웃 시킬 수 있는 기능을 개발하였습니다. 다른 시니어 개발자 분 한분과 함께 개발을 했는데, 저는 서비스에서 사용하는 API을 주로 개발하였습니다. 이 기능을 통해서 현재 접속하고 있는 로그인 유저를 확인할 수 있고, 중복 로그인이 발생하였는지를 알 수 있고 이를 통해 다른 기능을 제공할 수 있습니다. 개발 고민최초 해당 업무를 받았을 때, 어떤 식으로 개발을 해야할 지 많은 고민을 했습니다. 당연히 로그인에 대한 로직이고, 해당 데이터 접근이 많고..
Java Application 성능개선에 대해 알아보자 - Local Cache 편
시작하기 앞서...Application을 개발하다 보면 기능이 점점 복잡해지고 데이터가 쌓이면서, 처음과 다른 성능 저하가 발생하게 된다.서버의 사양을 올리거나, 서버의 댓수를 추가하면 전체적인 성능은 올라가지만 그만큼의 비용이 발생하게 된다. 자본이 무한하다면 상관없지만, 물리적 증설은 최후의 보루로 남겨두고 Application 적인 측면에서 성능개선을 꾀할 수 있는 두 가지 방법을 소개하도록 하겠다. Cache의 정의Cache란? - feat Wikipedia캐시(cache, 문화어: 캐쉬, 고속 완충기, 고속 완충 기억기)는컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시..
Redis를 활용한 공유 자원 동시성 처리
두려움 없이 성장하는 뱅크샐러드
안녕하세요. 뱅크샐러드 보험 스쿼드의 테크 리드(Tech Lead…
[키워드] 리눅스 네임스페이스(Linux Namespace)란?
리눅스 네임스페이스는 프로세스를 실행할 때 시스템의 리소스를 분리해서 실행할 수 있도록 도와주는 기능입니다. 한 시스템의 프로세스들은 기본적으로 시스템의 리소스들을 공유해서 실행됩니다. 리눅스 네임스페이스를 사용하면 PID, 네트워크, UTS, 마운트, Cgroup 등의 시스템 리소스를 격리해서 프로세스를 실행할 수 있습니다.