반응형

인기글😎

오라클 11g 완벽하게 삭제하기

ctrl + alt + delete를 눌러서 작업관리자 실행 ​ 작업관리자 - 서비스 탭에서 저 Oracle 붙어져있는 서비스들 중에서 실행 중인 것들은 전부 우클릭 - 중지 눌러버리기 ​ ​ ​ ​ 윈도우키로 전체 설치프로그램 목록에서 Universal Installer 을 선택해서 ​ 제품 설치 해제 ​ ​ 설치된 오라클 홈 선택 후 제거 클릭 ​ ​ 그럼 어차피 저 폴더 경로로 들어가라한다.. ㅎㅎ ​ ​ ​ 경로로 들어와서 deinstall.bat 파일 클릭 ​ ​ 사진 내용 처럼 그대로 입력 ​ ​ 존버 막 뭐 뜨면서 갑자기 꺼진다 ​ ​ ​ app 폴더 삭제 ​ ​ 사용자 폴더에서 oracle 폴더 삭제 ​ ​ 앗 사진을 깜빡했는데 C:\Program Files 에도 Oracle 폴더 있으니 ..

Backend 2021.10.17 0

[SpringBoot] UnexpectedRollbackException: Transaction silently rolled back because it has been marked as rollback-only 해결후기

목차 상황 1. 이벤트에 당첨된 경우 휴대폰번호를 입력하고 [쿠폰받기] 버튼을 누르면 쿠폰이 즉시 발송된다. 2. 근데 가끔씩 [쿠폰받기] 버튼이 눌린채로 아무런 반응이 없는 경우가 있다. (브라우저 자체가 멈춘다던가... 아무런 액션 없이 그냥 대기만 한다던가...) 3. 기다려도 응답이 없으니 사람들은 [쿠폰 안받기] 버튼을 누른다. 4. [쿠폰 안받기] 버튼을 누르면 당첨내역을 초기화시킨다. (다른사람에게 할당되어야하므로) 서버에 찍힌 로그는 아래와 같다. 2022-12-05 10:45:24 쿠폰받기 시작 2022-12-05 10:45:25 쿠폰안받기 시작 2022-12-05 10:45:25 쿠폰받기-쿠폰발송 성공 2022-12-05 10:45:26 쿠폰안받기 종료 2022-12-05 10:45:2..

Backend 2022.12.06 6

[SpringBoot] Jpa Connection Minimum-Idle 설정하지 말자... 에러 후기

한동안 DB에 커넥션에러가 발생했어서 maximum-pool-size를 설정주었는데 minimum-idle 셋팅도 있어서 같이 셋팅해주었었다. spring: datasource: hikari: ... minimum-idle: 5 maximum-pool-size: 10 그런데..... 처음보는 에러가 발생했다 HikariPool-1 - Connection is not available, request timed out after 45005ms. 오잉???? 이상하네 이 서버는 처음띄우는 서버가 아니라 이전에도 계속 돌아가고있었던 서버고, 사실 커넥션 에러가 날거였으면 요청이 더 많았을 때 에러가 났어야했는데.. 지금은 요청이 상대적으로 적은편인데 에러가 나서 의아해했다 여러가지 이유가 있었겠지만 단편적으로..

Backend 2022.12.04 0

[Spring Boot] FeignClient와 ExceptionHandler | FeignClient의 응답값 그대로 반환하기

목차 프로젝트를 진행하다보니 FeignClient로 다른 서비스를 호출하는 일이 생겼는데, 자식서비스가 부모서비스에 FeignClient로 API호출 시 부모서비스에서 Exception이 터지면 그대로 자식서비스도 예외가 발생한다. 에러 응답포맷이 정해져있기 때문에 부모서비스의 에러메시지를 자식서비스에서도 그대로 반환해주면 어떨까?! 하고 생각했다 기존코드 application.yml feign 설정 부분만 가지고왔다 ... feign: parent-api: url: http://localhost:8081 httpclient: follow-redirects: true ... ExceptionController.java CustomException이 발생하면 해당 handler에서 처리하게된다 @RestC..

Backend 2022.07.29 1

모던 자바 인 액션 - Stream(스트림)이란?, 스트림특징, 내부반복/외부반복, 게으른중간연산

목차 Stream 이란? SELECT name FROM dishes WHERE calorie < 400 위 SQL문은 칼로리가 낮은 요리명을 선택하라는 질의이다. SQL에서는 요리의 속성(칼로리)를 이용하여 어떻게 필터링할 것인지 개발자가 직접 구현하지 않아도 된다. 하지만 자바에서 필터링하려면 반복문을 돌려서 처리해야한다. 요소가 많은 컬렉션이라면 어떻게할까?? 똑같이 반복문으로 돌려서 처리하면 굉장히 많은 시간이 필요할 것이고, 작업을 병렬로 처리해야 성능을 높일 수 있을 것이다. 저칼로리로 요리를 필터링하고, 칼로리 순서대로 요리를 정렬하는 코드를 작성해보자. //1. 저칼로리 요리 필터링 //2. 칼로리로 요리 정렬 ---------------------------------------------..

Backend 2022.07.11 0

최신글😊

more

인덱스(4) : 생성, 삭제, 사용, 테스트하기 + 실행계획 보는법

목차  이전 게시물https://lotuus.tistory.com/168 인덱스(3) : 인덱스 종류목차 이전 게시물https://lotuus.tistory.com/167 인덱스(2) : 인덱스가 데이터를 검색하는 방법목차 이전 게시물 https://lotuus.tistory.com/166 인덱스(1) : 사용하는 이유, 정의, 데이터목차  인덱스 왜 사lotuus.tistory.com    MySQL 기준으로 알아보겠습니다.일반적으로 인덱스는 생성과 삭제만 가능합니다. (수정 불가) 생성하기-- B+Tree 인덱스 (기본 인덱스)CREATE INDEX idx_btree ON table_name (column_name);-- 해시 인덱스 (Memory 엔진에서만 사용)CREATE INDEX idx_has..

Backend 2024.07.17 0

인덱스(3) : 인덱스 종류

목차 이전 게시물https://lotuus.tistory.com/167 인덱스(2) : 인덱스가 데이터를 검색하는 방법목차 이전 게시물 https://lotuus.tistory.com/166 인덱스(1) : 사용하는 이유, 정의, 데이터목차  인덱스 왜 사용해야하나요?문제상황데이터 10억개가 저장되어 있습니다.아래 SQL문을 실행하면 데이터lotuus.tistory.com    다양한 관점으로 인덱스를 분류할 수 있습니다.   물리적으로 정렬하나요?Clustered Index테이블의 레코드를 지정된 컬럼으로 물리적으로 재배열하는 인덱스입니다.테이블당 하나의 클러스터드 인덱스만 가질 수 있습니다.일반적으로 primary key가 설정된 컬럼은 자동으로 Clustered Index로 설정됩니다.⇒ Prima..

Backend 2024.07.17 0

인덱스(2) : 인덱스가 데이터를 검색하는 방법

목차 이전 게시물 https://lotuus.tistory.com/166 인덱스(1) : 사용하는 이유, 정의, 데이터목차  인덱스 왜 사용해야하나요?문제상황데이터 10억개가 저장되어 있습니다.아래 SQL문을 실행하면 데이터베이스는 어떻게 데이터를 검색할까요?SELECT * FROM Employees WHERE Name = 'Alice';데이터베lotuus.tistory.com   앞에서 인덱스가 없는 경우, Full Table Scan 방식을 이용하여 검색하는 것을 알아봤습니다.그렇다면 인덱스가 있는 경우엔, 어떤 방식을 사용하길래 데이터를 빠르고 효과적으로 검색할 수 있는 것일까요?인덱스를 구현하는 방식은 대표적으로 3가지가 있으며,인덱스를 생성할 때 구현 방식을 설정할 수 있습니다.HashTable..

Backend 2024.07.17 1

인덱스(1) : 인덱스를 사용하는 이유, 인덱스의 정의, 인덱스에 저장되는 데이터

목차  인덱스 왜 사용해야하나요?문제상황데이터 10억개가 저장되어 있습니다.아래 SQL문을 실행하면 데이터베이스는 어떻게 데이터를 검색할까요?SELECT * FROM Employees WHERE Name = 'Alice';데이터베이스는 Full Table Scan 방식을 이용하여 데이터를 검색합니다. Full Table Scan테이블의 첫번째 행부터 마지막 행까지 모든 행을 순차적으로 검사하는 방법입니다.단점 : 시간이 오래 걸립니다. 해결방법인덱스를 적용합니다.   인덱스란 무엇인가요?책 뒷면의 색인과 매우 유사합니다.💡 인덱스는 데이터를 빠르게 찾기 위해 사용하는 자료구조입니다.  아래와 같은 순서대로 인덱스에 대해 살펴보겠습니다.인덱스가 어떤 데이터를 가지고 있는지인덱스는 어떤 방식으로 데이터를 ..

Backend 2024.07.17 0

S3, CloudFront, Lambda@Edge를 이용한 이미지 리사이즈(6) - 리사이징 로직 작성 및 테스트

목차 이 게시글은 시리즈물입니다! 아래 목차를 먼저 확인해주세요 1. Lambda@Edge란? 2. S3, CloudFront 셋팅 3. CloudFront 쿼리스트링 캐시 셋팅 4. IAM 역할 생성 5. Lambda@Edge 배포 셋팅 및 로그 확인 6. 리사이징 로직 작성 및 테스트 람다 로컬에서 실행하기 serverless framework를 이용하면 람다를 로컬에서 실행할 수 있는데, 함수에 전달되는 event 객체가 비어있는 상태에서 실행되어 에러가 발생합니다. 서버리스의 --path 옵션을 이용하여 로컬의 json파일을 읽어 event 객체에 데이터를 넣어줍시다. 1. 이전 게시글에서 확인한 로그데이터에서 event객체를 그대로 복사하여 OriginResponseEvent.json 파일로 만..

Infra 2023.05.29 2
반응형