2024/08 25

[AWS] Docker(도커)

Docker앱 배포를 위한 소프트웨어 개발 플랫폼이다.도커를 사용하면 컨테이너에 앱을 패키징하게 된다.앱이 컨테이너에 패키징되면 어떤 기계든 상관없이 호환성 문제가 없고, 동작을 예측할 수 있다.작업량도 적으며 유지 보수와 배포가 쉽다.모든 프로그래밍 언어로 작업할 수 있고 운영체제나 기술에도 구해받지 않습니다.도커는 시각화 기술에 해당하지만 정확히는 아니고, 리소스를 호스트와 공유한다.(= 하나의 서버에 여러 컨테이너를 둘 수 있다.)  ECS(Elastic Container Service)도커 컨테이너를 실행할 때 사용한다.ECS에서는 반드시 우리가 프로비저닝해야 하고, 인프라를 자체적으로 유지해야 된다.(= EC2 인스턴스를 사전에 만들어야 한다.)밑의 이미지 설명 : 사전에 EC2 인스턴스를 만들..

[AWS] AWS Snow Family(스노우 제품군) & Storage Gateway

AWS Snow Family매우 안전한 휴대용 장치이다.AWS 내부 및 외부로 데이터를 마이그레이션하는데 사용된다.스노우 제품군을 사용하여 데이터 마이그레이션을 수행하는 이유는 데이터를 AWS에 빠르게 전달되기를 원하기 때문이다.  유형1. Snowcone매우 작은 휴대용 장치이며 견고하다.(2.1kg 정도로 매우 가볍다)안전하고 열약한 환경을 견딜 수 있다.데이터 양이 적은 환경에 적합하다.엣지 컴퓨팅, 스토리지 및 데이터 전송에 사용될 것이다.유형 : "8TB의 HDD 스토리지가 포함된" / "14TB SSD 스토리지"의 스노우콘스노우볼이 맞지 않는 곳에서는 스노우콘과 배터리, 케이블을 직접 준비해야 한다. 2. Snowball Edge테라바이트 또는 페타바이트의 데이터를 AWS안팎으로 이동시키는 데..

[AWS] Amazon S3 storage에 대하여

Amazon S3 storage제한 없이 스케일할 수 있는 스토리지로 알려져있다.(= 백업과 저장소로 활용)S3에 아카이브해 두었다가 나중에 꺼내 쓰기도 한다.Disaster Recovery(재해 복구)를 위한 스토리지이다.하이브리드 클라우드 스토리로도 이용한다.Media hosting(미디어 호스팅)을 위해서도 사용한다.Data lakes(데이터 레이크)와 big data analytics(데이터 분석)을 위해서도 사용한다.Static website(정적 웹사이트) 호스팅을 위해서도 사용한다.   - BucketsS3의 파일을 "버킷"에 저장한다.(= 최상위 디렉토리라고 생각하면 된다)사용자 계정 안에서 생성된다.모든 리전, 모든 계정들을 통틀어 고유한 이름이여야 한다.cf ) 버킷 이름의 규칙  - ..

[AWS] AWS의 Load Banlancer

ELB(Elastic Load Balancing)인터넷 트래픽을 다운스트림의 여러 서버로 전달하는 서버이다.(= 여러 다운스트림 인스턴스에 부하를 분산시킬 수 있다)다운스트림 인스턴스의 실패를 원활하게 처리할 수 있다. (= 실패가 있는 인스턴스에는 로드 밸런서가 트래픽을 보내지 않는다.)따라서, 로드 밸런서를 사용하여 EC2 인스턴스의 실패를 숨길 수 있고 웹사이트의 SSL 종료, 즉 HTTPS를 아주 쉽게 제공할 수 있다.관리형 로드 밸러서이므로 서버가 프로비저닝할 필요 없이 AWS가 처리한다.  종류1. ALB( Application Load Balancer)HTTP, HTTPS이기 때문에 "계층 7유형"의 로드 밸런서라고도 한다.HTTP 라우팅 기능이 필요할 때마다 정적 DNS에도 요청된다. 2...

[AWS] EC2의 Storage 옵션

1. EBS Volume(볼륨)EC2 인스턴스의 스토리지 옵션중에 가장 중요한 옵션이다.Elastic Block Store(일랙스틱 블록 스토어)의 줄임말이다.인스턴스가 종료된 후에도 데이터를 지속할 수가 있다.(= EBS를 사용하는 목적!!)  : 사용자가 인스턴스를 재생성하고 이전 EBS 볼륨을 마운트하면 데이터를 다시 받을 수 있다."네트워크 USB 스틱"이라고 생각하면 된다.  : USB스틱처럼 한 컴퓨터에서 꺼내, 다른 컴퓨터에 꽂는 그런 장치는 맞지만 물리적 연결은 없이 네트워크를 통해 연결되는 것이다.생성  : 특정 가용 영역에서만 가능하다.  : 고정되어 있기 때문에, 예를 들어 us-east-1a에 생성된 볼륨은 us-east-1b로 연결이 불가능하다.  : 단, "스냅샷"을 이용하면 다..

[AWS] 클라우드 컴퓨팅이란?(Cloud Computing)

클라우드 컴퓨팅이란?컴퓨팅 성능과 데이터베이스 스토리지, 애플리케이션과 다른 IT 리소스를 온디맨드(On-Demand)로 제공하는 것이다.개인과 기업이 물리적 리소스를 직접 관리할 필요가 없으며 사용한 만큼만 비용을 지불하면 된다. 1. 유형(1) Private Cloud단일 조직에서 사용하는 클라우드 서비스외부에 노출되지 않아서 자체 사설 클라우드와 자체 사설 데이터 센터를 가지며 다른 사람이 관리하지만 개인이 완전히 제어가 가능하다.특정 사업에서 요구되는 민감한 애플리케이션을 위해 강화된 보안이 제공된다.  (2) Public Cloud타사 클라우드 서비스 제공 업체가 클라우드 리소스를 소유, 운영하고 인터넷을 통해 제공한다.AWS에서 원하는 때에 필요한 것을 요청할 수 있다. (3) Hybrid C..

[Java/코딩테스트] 문자열 다루기 기본( + 아스키코드에 대하여)

안녕하세요!아스키코드에 확실하게 집어 넘어갈 수 있는 코딩테스트를 가지고 왔습니다.    일단, 문제를 겪은 코딩테스트입니다.  제가 생각하는 대로 코드를 작성해 보았습니다.시도1설명1. if문으로 문자열 길이가 4이거나 6일때만 for문을 시행해주도록 합니다.2. chaArr배열의 값을 꺼내 비교해서 0과 9사이에 값이 맞으면 'true'를 반환해주도록 했습니다.    (→ 추후 이 부분이 문제였습니다,,,!           why?? 그냥 0은 int형 0과 똑같고, char형 '1'은 int형 49입니다. 그래서 위에 코드는 잘못된 것입니다.)  시도1의 문제점1. 문자열 길이를 걸러주는 if문이 너무 장황함     →  해결 : != 논리연산자를 사용하여 if문을 간단하게 바꿔주었습니다.2. 아..

[Java/코딩테스트] 부족한 금액 계산하기

안녕하세요!오늘은 한번에 생각한 대로 풀려서 기분이 좋은 코딩테스트를 가지고 왔습니다! ㅎㅎ    문제가 길어서 복잡해 보이지만 전혀 복잡한 문제가 아니더라구요..! 1. long answer을 -1로 초기화시킨 이유가 제한사항에서 int 값을 넘더라구요, 그래서 초기화된 상태 그대로 두었습니다. 2. for문을 이용하여 놀이기구를 타고싶은 횟수만큼의 이용가격을 계산해줬습니다. 3. 이용가격과 원래가지고 있는 돈을 빼줬습니다.(answer가 long타입이기때문에 money를 형변환 시켜줬습니다.)   테스트를 추가해 확인하였더니 통과가 되더군요ㅎㅎ   그런데 제출했더니 테스트4에서만 실패가 뜨더군요..!(자신있게 제출하였지만,,,ㅋㅋㅋㅋ) 그래서 문제를 다시 읽어보니깐 "단, 금액이 부족하지 않으면 0을..

[Java/코딩테스트] 문자열 내림차순으로 배치하기

구글링을 해보니, 문자 배열을 정렬하는 방법은 "Arrays.sort()메서드" 밖에 없는 것 같다.(물론, Stream을 이용한 정렬도 있는 것 같은데, 아직 배우지 않아서 잘 모르겠다,,) 문자열을 문자 배열로 변환하는 방법에는 2가지 방법을 사용할 수 있다는 것을 알았다. 1. split() 메서드 활용1. 일단 문자열 's'를 문자 배열로 변환해준다.  → 이때 "split()"메서드를 활용하여 문자를 하나씩 배열에 담는다. 2. Arrays.sort() 메서드를 활용하여 오름차순으로 정렬해준다. 3. Collections.reverseOrder() 메서드를 활용하여 반전시켜준다. 4. 향상된 for문을 사용하여 문자배열을 문자열로 변환해준다.  2. toCharArray() 메서드 활용1. 일단..