Spring - Data Integrity Violation Exception
·
❌ Error Handling
❌ Spring - Data Integrity Violation Exception Data Integrity Violation Exception 발생 가능성 SQL 쿼리가 잘못되거나 Data가 잘못되었을 경우 RuntimeException으로 잘못된 데이터가 바인딩 될 경우 영속성 컨텍스트에 이미 등록된 객체에, 동일ID의 다른 참조값을 가진 객체가 접근할 경우 해결 Entity의 필드명에 오타가 들어간 경우로 인해 잘못된 SQL Insert Query를 던짐 MapStruct의 필드 매핑이 잘못된 경우 @Mapping Annotation을 사용하여 올바른 필드매핑 연관관계가 매핑된 객체의 Cascade 전이 범위를 Merge로 변경하면 동일 ID값의 다른 주소값을 참조하는 객체가 들어와도 객체 병합과정..
IntelliJ - PXIX Path Validation Failed Error
·
❌ Error Handling
❌ IntelliJ - PXIX Path Validation Failed Error 스프링 부트 버전 변경에 따른 스프링 부트의 내부동작중 SSL 관련하여 어떤 문제가 생긴것 같았다. 일단 application.yml에 server ssl enabled설정을 false로 바꾸니 해결됬지만 그래도 해결 방법을 알아보자. 오류 사진 PXIX Path Validation Failed Error CA 인증서 생성 or 가져오기 Open Windows CMD 열기 cd C:\Program Files\JetBrains\IntelliJ\jre64 or jbr\bin Option 1 keytool -keystore cacerts -importcert -alias -file Option 2 keytool.exe -imp..
Race Condition
·
⚙️ Ops/CS
💡 Race Condition 여러 개의 프로세스가 공유 자원에 동시 접근할 때 실행 순서에 따라 결과값이 달라질 수 있는 현상 임계구역은 아래의 세가지 요구조건을 만족해야 유효한 알고리즘이 된다 Mutual Exclusion(상호 배제) 하나의 자원에는 하나의 프로세스만 접근 가능할 수 있어야 함 Progress(진행) 임계구역이 비었으면 자원을 사용할 수 있어야 한다 (Deadlock Free) Bounded Waiting(한계 대기) 언젠가는 임계구역에 진입할 수 있어야 한다 > 경쟁상태는 메모리를 공유하기 때문에 발생하며 해결방법은 스레드의 순차적 실행(동기화)을 보장하면 됨 임계구역의 일반적인 형태 do { wants[i] = true; // 프로세스가 공유 자원을 사용하겠다고 선언 while ..
Proxy & Load Balancer & WAS & VPC
·
⚙️ Ops/CS
💡 Proxy Forward Proxy 클라이언트와 가까이 있는 서버로 클라이언트를 대신해 서버에 요청 전달 주로 캐시서버로 사용 클라이언트의 정보 숨김 Reverse Proxy 서버를 대신해서 응답을 클라이언트로 전달 트래픽 로드밸런싱 서버 정보 숨김 💡 Load Balancer Scale-Up 서버의 하드웨어 성능을 높이는 방법 Scale-Out 서버의 개수를 늘려 부하분산 로드밸런서의 종류 L2 - Mac 주소 기반 로드밸런싱 L3 - IP 주소 기반 로드밸런싱 L4 - IP & Port기반 로드밸런싱 L7 - 클라이언트 요청 기반 로드밸런싱 💡 AWS Auto Scaling 장점 동적 스케일링 사용자의 요구에 따라 리소스의 동적 스케일링 로드 밸런싱 오토스케일링된 서버에 동적인 부하 분산 타겟 트..
HTTP
·
⚙️ Ops/CS
💡 HTTP API 설계 HTTP API 컬렉션 = POST 기반 등록 - 서버가 리소스 URI 결정 HTTP API 스토어 = PUT 기반 등록 - 클라이언트가 리소스 URI 결정 HTML Form 사용 = 순수 HTML + HTML Form 사용, GET, POST만 지원, 컨트롤 URI 사용(동사) URI 설계 참고 사이트 Document - 단일 개념, ex) /users/20, /files/abc.jpg Collection - 서버 주체의 리소스 디렉터리, 리소스의 생성,관리 ex) /users Store - 클라이언트 주체의 리소스 저장소, ex) /files Controller, Controll URI - 위의 사항들로 해결이 힘든 추가 프로세스 실행 (동사 사용) Status Code 1x..