본문 바로가기

반응형

전체 글

(20)
[AWS] Amazon Virtual Private Cloud 비용 발생 (프리티어) 어제 AWS가입 후 프리티어로 EC2, RDS를 하나씩 올리고 로컬환경에서 접속까지 가능한걸 확인 하고 자고 일어났더니이상한 메일 하나를 받았다.예산을 초과했다?분명 어제 프리티어로 사용한 터라 요금이 나올일이 없는데..?다행히도 어제 0.01$ 이상 요금발생시 알람이 오게 설정해서 오늘 아침에서 발견할 수 있었다. 그렇다면 어디서 요금이 발생하고 있는거지?과금 정보 및 비용 관리 > 청구서 탭에서 내용을 확인 해보니 Amazon Virtual Private Cloud 에서 비용이 발생 하고 있었다.$0.005 per In-use public IPv4 address per hour .....VPC에서 왜..(?)원인결론적으로 원인은 RDS의 public IP 설정에 있었다.개발용 디비를 올려놓기 위함이였..
[AWS] 초기 구축 및 셋팅 가이드 문서 (작성중) AWS 가입IAM 사용자 생성 -> MFA 적용 -> https://sylphccg.tistory.com/entry/AWS-MFA-%EC%84%A4%EC%A0%95과금 방지 알림 -> https://sylphccg.tistory.com/entry/AWS-%EC%98%88%EC%82%B0%EC%83%9D%EC%84%B1EC2 생성RDS 생성도메인 구매 (hosting.kr에서 구매)  Route53 영역 생성도메인 설정로드밸런서 셋팅Ssl 적용
[AWS] 예산생성 1. 예산 생성 예산 및 계획 -> 예산 클릭 -> 우상단 예산 생성 클릭 2. 예산 설정템플릿 사용 / 제로 지출 예산 선택 (for 프리티어)
[AWS] MFA 설정 1. 보안 자격 증명 탭 이동 2. 멀티 팩터 인증(MFA) 디바이스 할당 버튼 클릭3. 디바이스명 작성 후 인증 관리자 앱 클릭디바이스 명은 규칙에 맞게끔 생성 (영숫자 및 '+ = , . @ - _' 문자를 사용 ) 3. Google Authenticator 설치 후 인증
[GIT] ! [rejected] main -> main (non-fast-forward) 에러 해결 에러 내용! [rejected]        main -> main (non-fast-forward)error: failed to push some refs to 'https://github.com/******/*****.git'상황 > github에 Repository 생성 후 최초 커밋을 위해 push를 하던 중 발생git initgit branch -m maingit remote add origin "github주소"git add .git commit -m "first commit"git push -u origin main해결> 강제 푸시로 해결 (최초 커밋이기에 문제 없음)git push -u origin main -- force
[DB] 트랜잭션 격리수준 (Transaction Isolation level) 트랜잭션 격리수준(Transaction Isolation)은 DB 처리의 기초중 하나이다.Isolation은 ACID 약어의 I로서 여러 트랜잭션이 동시에 데이터를 변경하고 쿼리를 수행할 때 성능과 안정성, 일관성, 결과 재현성 사이의 균형을 조정하는 설정이다.※ ACID : Atomicity(원자성), Consistency(일관성), Isolation(고립성), Durability(영구성)READ UNCOMITTED커밋하지 않은 데이터에도 접근이 가능한 격리 수준.트랜잭션의 작업중인 내용이 커밋 또는 롤백처리 되지않아도 즉시 노출이 된다. 다만 이렇게 될 경우 Dirty Read가 되어 롤백 또는 커밋 전의 데이터로 인해 정합성이 유지되지 않을 수 있습니다.RDBMS에서는 권장하지 않는 격리 수준이므로..
[EffectiveJava] ITEM 33. 타입 안전 이종 컨테이너를 고려하라 이종 컨테이너 패턴 (type safe heterogeneous container pattern) 제네릭은 Set, Map 등의 컬렉션과 ThreadLocal, AtomicReference 등의 단일원소 컨테이너도 흔히 쓰인다. 이런 모든 쓰임에서 매개변수화되는 대상은 원소가 아닌 컨테이너 자신이다. 따라서 하나의 컨테이너에서 매개변수화할 수 있는 타입의 수가 제한된다. 예를들어, Set 에는 원소의 타입을 뜻하는 단 하나의 타입 매개변수만 있으면 되며, Map 에는 key, value의 타입을 뜻하는 2개만 필요한 식이다. 더 유연한 방식이 필요할때가 있다. 데이터베이스희 행(row)은 임의 개수의 열(column)을 가질 수 있는데, 모두 열을 타입 안전하게 이용할 수 있다면 더 편할 것이다. 여기에..
[EffectiveJava]ITEM 32. 제네릭과 가변인수를 함께 쓸 때는 신중하라 가변인수 메서드 가변인수(varargs) 메서드와 제네릭은 함께 사용이 어렵다. 가변인수는 메서드에 넘기는 인수의 개수를 클라이언트가 조절할 수 있게 해준다. 가변인수 메서드를 호출하면 가변인수를 담기 위한 배열이 자동으로 하나 만들어진다. 그런데 내부로 감춰야 했을 이 배열을 클라이언트에 노출시키는 문제가 생겼다. 그 결과 varargs 매개변수에 제네릭이나 매개변수화 타입이 포함되면 알기 어려운 컴파일 경고가 발생한다. static void dangerous(List... stringLists) { List intList = List.of(2); Object[] objects = stringLists; objects[0] = intList; // 힙 오염 /* stringList 는 Integer 타..

반응형