반응형

2024/11/26 5

객체 지향 프로그래밍의 4가지 특징

개요상속: 기존 클래스의 속성과 메서드를 물려받아 재사용하고 확장할 수 있는 개념.다형성: 동일한 인터페이스(메서드)가 여러 형태로 동작할 수 있게 하는 개념.캡슐화: 객체의 상태와 행위를 하나의 단위로 묶고, 내부 구현을 숨기고 외부와의 인터페이스만 제공하는 개념.추상화: 시스템의 복잡한 세부사항을 숨기고 중요한 기능만을 드러내는 개념. 상속기존 클래스에서 정의된 속성과 메서드를 새로운 클래스로 물려받아 재사용할 수 있게 해주는 OOP의 기본 개념자식 클래스는 부모 클래스의 멤버를 상속받고, 이를 확장하거나 변경할 수 있다.이를 통해 코드 재사용성을 높이고, 유지보수를 용이하게 만든다. 상속을 사용하면 코드 중복을 피할 수 있으며, 일반적으로 "is-a" 관계를 나타낸다.예를 들어, "자동차"는 "탈 ..

[S4] 백준 9372번 상근이의 여행 C++ BFS

리뷰 https://www.acmicpc.net/problem/9372문제 분류로 풀어보기에서 MST에 있길래 시도했으나 일반적인 BFS나 DFS로도 해결이 가능한 문제  전역 변수t : 테스트 케이스의 개수n : 국가의 개수m : 주어지는 인접 리스트의 개수v : 방문 처리용 정수형 배열 함수1. bfsint bfs(int sn, const vector>& lst) 너비 우선 탐색을 통해 방문한 간선의 최소 개수를 구하기 위한 문제매개변수로 시작 국가의 번호 sn과 인접 리스트 lst를 전달 받는다.정수형 타입 큐 q를 초기화 하고 sn을 큐에 삽입해 준다.sn을 방문처리 해주고, 방문한 국가 cnt를 1로, 탑승한 비행기의 수 result를 0으로 초기화 한다.q가 빌때 까지 반복문을 수행하고, 매 ..

네트워크 병렬 서버 로드 밸런싱 - DNS, Anycast

개요네트워크 병렬 서버 로드 밸런싱 - 프록시 서버 네트워크 병렬 서버 로드 밸런싱 - 프록시 서버개요다수의 클라이언트가 서버로 요청을 보내는 경우, 한개의 서버로 모든 클라이언트의 로직을 처리한다면 해당 서버에는 과부하가 걸릴 것이고 클라이언트는 응답을 늦게 받거나 서버가 뻗zzzz955.tistory.com 프록시 서버를 사용하지 않고도 병렬 서버에서 부하 분산(로드 밸런싱)을 구현하는 방법이 있다.이러한 방법은 클라이언트가 직접 여러 서버와 통신하도록 설계하여 프록시 서버의 부하를 줄이고, 중간 단계를 없애는 데 초점을 둔다.   DNS 기반 부하 분산DNS 로드 밸런싱은 하나의 도메인 이름에 여러 개의 IP 주소를 매핑하여 클라이언트가 요청할 때마다 서로 다른 서버로 트래픽을 분배하는 기법이다.D..

네트워크 통신 2024.11.26

네트워크 병렬 서버 로드 밸런싱 - 프록시 서버

개요다수의 클라이언트가 서버로 요청을 보내는 경우, 한개의 서버로 모든 클라이언트의 로직을 처리한다면 해당 서버에는 과부하가 걸릴 것이고 클라이언트는 응답을 늦게 받거나 서버가 뻗어버릴 것이다.그렇다면 서버를 병렬로 두어 여러가지 서버를 둔다고 가정을 해보자클라이언트 입장에서는 각 서버의 IP주소와 포트번호를 알아야 연결 요청을 진행할 수 있다.그럼 클라이언트 입장에서 어떤 IP주소와 포트번호로 연결 요청을 해야할까?또한 연결 요청한 서버가 과부하 상태라면 어떻게 할까?이를 관리 해주기 위한 로드밸런싱이 필요하다.  프록시 서버네트워크 프록시 네트워크 프록시개요프록시(Proxy)는 네트워크 통신에서 중개 서버 역할을 하는 시스템이다.클라이언트와 서버 사이에서 데이터를 중계하거나 대리로 처리하는 기능을 수..

네트워크 통신 2024.11.26

네트워크 IOCP

개요IOCP(Input/Output Completion Port)는 윈도우 OS에서 고성능 비동기 입출력을 지원하기 위해 설계된 메커니즘이다.IOCP는 주로 대규모 네트워크 서버와 같이 높은 동시성을 요구하는 애플리케이션에서 사용된다. 비동기 I/O를 기반으로 동작하며, 연산이 완료될 때까지 블로킹되지 않아 CPU 리소스를 효율적으로 사용할 수 있다.입출력 작업이 완료되면 해당 작업의 완료 상태를 IOCP에 전달해 큐에 저장하고, 워커 스레드가 작업을 가져가 처리한다.이때 IOCP는 스레드 풀을 사용하여 워커 스레드를 관리해 필요한 만큼의 스레드를 유지하며, CPU 코어 수를 고려하여 최적의 성능을 제공한다.IOCP는 수천 개의 연결을 동시에 처리할 수 있어, 고성능 서버 구현에 적합하다.  작동 흐름C..

네트워크 통신 2024.11.26
728x90
반응형