분류 전체보기
[네트워크 기초] 네트워크 토폴로지 : 버스, 스타, 트리, 링, 메시
💡 네트워크 토폴로지 : 노드와 링크가 어떻게 구성되어있는지를 말한다. 버스, 스타, 트리, 링, 메시 등의토폴로지가 있다. 버스 토폴로지 특징 하나의 회선에 여러 개의 노드 노드 추가, 삭제 쉬움 설치비용 적음 장점 소규모 네트워크를 구축하기 매우 쉬움. 한 노드에 장애가 발생해도 다른 노드에 영향 X 단점 메인 링크에 많은 트래픽이 생기면 정체현상 발생가능성 높음.(패킷 손실률 높음) 메인 링크 망가지면 큰 문제 스타 토폴로지 특징 중앙에 있는 노드를 기반으로 연결된 형태 노드 추가, 삭제 쉬움 장점 중앙노드가 아닌 한 노드에 장애가 발생해도 다른 노드에 영향 X 안정성이 높음. 중앙노드가 아닌 한 노드에 침해가 발생했을 때 다른 노드로 확장하기가 어렵기 때문. 다른 노드로 가려면 중앙노드를 무조건 ..
[네트워크 기초] 네트워크, 처리량, 트래픽, 대역폭, RTT
💡네트워크 : 리소스를 공유하는 집합 💡트래픽 : 흐르는 데이터의 양, 데이터의 누적량 💡처리량 : 얼마만큼의 트래픽을 처리했는지 💡대역폭 : 최대로 처리할 수 있는 트래픽 💡RTT(Round Trip Time, 왕복 지연시간): 신호를 전송하고 수신확인에 걸린시간을 더한 값 네트워크노드와 링크가 서로 연결되어 있으며 리소스를 공유하는 집합을 의미한다.노드 : 서버, 라우터, 스위치등 네트워크 장치링크 (엣지) : 유선 또는 무선과 같은 연결 매체 (와이파이나 LAN) 트래픽 특정 시점에 링크 내의 "흐르는” 데이터의 양을 말한다. 서버에 저장된 파일을 클라이언트(사용자)가 다운로드 시 발생되는 데이터의 누적량을 뜻한다. 트래픽이 많아졌다. = 흐르는 데이터가 많아졌다. 처리량이 많아졌다. = 처리되는 ..
이터레이터 패턴
💡 이터레이터를 사용하여 컬렉션의 요소들에 접근하는 디자인 패턴 장점 : 각기 다른 컬렉션들을 똑같은 인터페이스로 순회가 쉽다. 예 : 자바스크립트의 인터페이스 (for of) 순회할 수 있는 각기 다른 자료형의 구조와는 상관없이 이터레이터라는 하나의 인터페이스로 순회가 가능해서 코드의 효율화, 숫자형 index가 아닌 string 등 다양한 인덱스를 기반으로 순회를 쉽게 할 수 있다. *컬렉션 : 컨테이너라고도 하고, 동일한 요소들의 집합을 말함. 배열, 트리 등을 지칭 *이터레이터 프로토콜 : 이터러블한 객체들을 순회할 때 쓰이는 규칙 *이터러블한 객체 : 반복 가능한 객체로 배열을 일반화한 객체 const mp = new Map() mp.set('a', 1) mp.set('b', 2) mp.set(..
팩토리 패턴
💡 객체를 사용하는 코드에서 객체 생성 부분을 떼어내 추상화한 패턴 상위 클래스가 중요한 뼈대를 결정하고, 하위 클래스에서 객체 생성에 관한 구체적인 내용을 결정하는 패턴 상위 클래스 : 중요한 뼈대만 작성 하위 클래스 : 구체적인 내용 - 상위 클래스와 하위 클래스가 분리되기 때문에 느슨한 결합을 가짐 - 코드 리팩토링을 하더라도 한 곳만 고치면 된다. - 유지 보수성 증가 ↑