전체 글 342

[Cloud] Load Balancer

서비스에 너무 많은 사용자(클라이언트)가 접속하면 서버에는 과부하가 오게 된다. 이때, 과부하를 해결하기 위한 방법으로는 크게 서버의 하드웨어를 업그레이드하는 방법과 서버의 개수를 늘리는 방법이 있다. 물리적으로 서버의 사양을 높이는 방법인 Scale-Up은 서버의 수를 늘리지 않고 프로그램 구현에 있어 변화가 필요 없다는 장점이 있다. 하지만 높은 비용이 들고 업그레이드에는 한계가 있기 때문에, 클라이언트의 요청이 더욱 많아진다면 다시 부하는 발생하게 될 것이다. 두 번째로 서버의 갯수를 늘리는 Scale-Out은 여러 대의 서버가 나눠서 처리하기 때문에 사양을 높이지 않고도 비교적 저렴한 비용으로 부하를 처리할 수 있다. 이때, 클라이언트로부터 온 요청을 여러 서버에 나눠 처리할 수 있도록 교통정리를..

개발 일지/CS 2023.04.06

[Cloud] Proxy Server

프록시 서버(Proxy Server)는 클라이언트가 서버와 소통할 때, 네트워크 연결을 중개하는 서버이다. 즉, 서버에 바로 접근하지 않고 자신을 통해 서버에 접근할 수 있도록 해주는 일종의 대리 서버이다. 프록시 서버를 사용하는 이유는 여러 가지가 있다. 가장 일반적인 이유는 보안 문제 때문이다. 프록시 서버는 인터넷에서 데이터를 주고받을 때, 클라이언트와 서버 간의 연결을 암호화해서 보안을 강화할 수 있다. 프록시 서버를 통해 인터넷에 접속하면 클라이언트의 IP 주소가 노출되지 않기 때문에 개인 정보 보호에도 도움이 된다. 또한, 프록시 서버는 캐시를 사용하여 네트워크 속도를 향상할 수 있다. 프록시 서버는 이전에 요청한 데이터를 저장하고 있다가 동일한 요청이 들어오면 저장된 데이터를 반환하므로, 네..

개발 일지/CS 2023.04.05

[백준] 12891번

public class Main { static int[] checkArr; // 비밀번호를 체크할 배열 static int[] myArr; // 현재 상태 배열 static int checkSecret; // 몇 개의 문자가 충족하는지 확인할 변수 public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int S = Integer.parseInt(st.nextToken()); // 문자열 크기 int P = Integer..

[Cloud] Docker

Docker는 컨테이너화된 애플리케이션을 배포하고 실행하기 위한 오픈소스 플랫폼이다. 기존의 가상화 기술과는 달리, 호스트 운영체제와 컨테이너 운영체제 사이에 가벼운 추상화 계층을 제공한다. 이를 통해 동일한 운영체제에서 여러 개의 컨테이너가 실행되며, 매우 가볍고 빠르게 실행될 수 있다. 이러한 컨테이너 방식은 실행 환경에 구애받지 않고 애플리케이션을 실행할 수 있다는 장점이 있다. 컨테이너 기술은 애플리케이션을 컨테이너 내에 구성하기 때문에 의존성 충돌 문제를 해결해 준다. 또한 개발과 배포 환경을 일치시키고 수평 확장을 쉽게 할 수 있으며 각 서버에 새로운 내용을 배포하기 쉽게 만들어준다. Docker는 개발, 테스트, 배포 등 여러 단계에서 유용하게 사용될 수 있다. 애플리케이션 개발 과정에서는 ..

개발 일지/CS 2023.04.03

[Cloud] Cloud Storage(S3)

클라우드 스토리지(Cloud Storage)는 컴퓨팅 환경에서 데이터를 저장하고 관리하는 저장소이다. 컴퓨터 부품으로 비유하면 하드디스크의 역할을 하는 서비스이다. Google Drive, MYBOX, Onedrive 등이 이에 해당한다. 클라우드 스토리지는 데이터의 안정성, 가용성, 확장성 등을 제공하여 기업의 데이터 관리를 용이하게 한다. 예를 들어, 컴퓨터의 하드디스크에 저장된 파일에 접근하기 위해서는 해당 컴퓨터를 이용해야 되지만, 클라우드 스토리지를 이용하면 웹 환경에서 언제 어디서나 저장된 파일에 접근할 수 있다. S3 S3(Simple Storage Service)는 AWS에서 제공하는 객체 스토리지 서비스로, 데이터를 파일 형태로 저장하고 관리한다. 기존 클라우드 스토리지 서비스처럼 뛰어난..

개발 일지/CS 2023.04.02