분류 전체보기 234

P2P와 P2MP의 차이

P2MP (Point-to-Multipoint) 무선 통신에서 Point-to-Multipoint 커뮤니케이션(P2MP, PTMP or PMP) 는 단일 위치에서 여러 위치로의 다중 경로를 제공하는 고유한 유형의 일대다 연결을 통해 수행되는 통신이다. P2MP의 경우 중앙 안테나 또는 안테나 배열이 여러 수신 안테나로 브로드캐스트하고 시스템은 양방향 트래픽 흐름을 허용하기 위해 주파수 분할 다중화 또는 시분할 다중화를 사용한다. 다음은 간단한 개략도이다. P2P (Point-to-Point) Point-to-Point (P2P)은 두 노드 또는 엔드포인트 간의 통신 연결을 의미한다. 두 장치는 양방향 트래픽 흐름을 허용하기 위해 주파수 분할 다중화 또는 시분할 다중화를 사용하여 통신한다. 고정 링크의 경..

Stateless와 Stateful의 개념, 차이점

애플리케이션을 비롯한 모든 항목의 상태(state)란 해당 시점의 상황과 품질, 즉 존재 상태를 말한다. 스테이트풀(Stateful)과 스테이트리스(Stateless)는 상호 작용 상태가 얼마나 오래 기록 되는지, 해당 정보가 어떤 식으로 저장되는지를 기준으로 구별할 수 있다. Stateless 스테이트리스 프로세스 또는 애플리케이션은 격리된 것으로 간주된다. 과거 트랜잭션에 대한 정보 또는 참조가 저장되지 않기 때문이다. 각 트랜잭션은 모두 처음부터 시작된다. 스테이트리스 애플리케이션은 하나의 서비스 또는 기능을 제공하며, 컨텐츠 전달 네트워크(CDN), 웹, 프린트 서버를 사용해 이러한 단기 요청을 처리한다. 이러한 스테이트리스 트랜잭션의 가장 일반적인 예시는 검색창에 질문을 입력하고 엔터키를 누르는..

Server 2022.07.16

Karaf에 대해

1. Karaf란 1.1 Karaf소개 Apache Karaf: The modulith* runtime (Modulith: 모듈식 모놀리식(모듈리틱) Java 어플리케이션의 개발을 지원하는 기술울 구축하기 위한 환경이다.) Karaf는 가볍고, 강력하며, 기업용으로 준비된 모듈식 런타임이다. 어플리케이션에 필요한 모든 에코시스템 및 부트스트래핑 옵션을 제공한다. 사내 또는 클라우드에서 실행된다. 이 모듈식 런타임은 REST-API, 웹, 스프링 부트 등과 같은 여러 프레임워크와 다양한 종류의 응용 프로그램을 지원한다. Apache에서 만든 다형성의 특징을 가진 OSGi(추후 설명) 기반 컨테이너이다. 다형성의 특징을 지녔기 때문에, OSGi, Spring, WAR등.. host가 모두 가능하다. 독립적으..

Server 2022.07.16

SDN(Software-Defined Networking) 에 대해

1. SDN이란? 소프트웨어 정의 네트워킹 (Software-Defined Networking)은 네트워크 리소스를 최적화하고 변화하는 비즈니스 요구, 애플리케이션 및 트래픽에 신속하게 네트워크를 채택하는 데 도움이 되는 네트워크 가상화 및 컨테이너화에 대한 접근 방식이다. SDN은 네트워크의 제어와 데이터 평면을 분리하여 소프트웨어 프로그래밍 가능 인프라를 만드는 방식으로 작동한다. 이는 전용 하드웨어 디바이스(라우터 및 스위치)를 사용하여 네트워크 트래픽을 제어하는 기존 네트워크와는 차이가 있다. SDN은 가상 네트워크를 생성 및 제어하거나 소프트웨어가 포함된 기존 하드웨어 네트워크를 제어한다. 기존 네트워크 가상화 방식 SDN 차이점 하나의 물리적인 네트워크 내에서 다양한 가상 네트워크를 세분화하거..

Network 2022.07.15

바닐라 자바스크립트(Vanilla JS)란?

1. 바닐라 자바스크립트(Vanilla JS)란? 바닐라 자바스크립트란 외부 라이브러리나 프레임워크를 쓰지 않는 순수 Javascript를 이르는 말이다. 2. 바닐라의 어원 위키백과에 따르면 바닐라의 뜻은 다음과 같다. 바닐라는 향신료 중 하나로, 난초의 일종인 바닐라속에 속해 있으며, 원산지는 멕시코이다. 바닐라라는 이름은 스페인어 “Vainilla”에서 나왔으며 작은 꼬투리, 콩을 뜻한다. 뜻을 유추할 수 있듯, 바닐라는 콩이라는 뜻으로 “핵심, 근본이 되는" 이라는 의미를 비유적으로 표현할 수 있다. 그러므로 바닐라 자바스크립트는 핵심이 되는 아무것도 포함되지 않은 순수 자바스크립트를 함축적으로 표현하는 것이다. 3. 바닐라 자바스크립트는 왜 필요한 것일까? 이 질문에 대한 답은 웹 개발 환경의 ..

[Flutter] 선언형(declarative) UI

1. 개요 Flutter에서 쓰이는 선언형(declarative) UI에 대해 공부하기 위해 알아보게 되었고, 해당 설명을 적은 공식 문서를 직접 번역하여 포스팅하였다. 해당 문서는 Flutter에서 쓰이는 선언형(declarative) 스타일과, 다른 많은 UI 프레임워크에서 쓰이는 명령형(imperative) 스타일의 개념적 차이에 대해 설명한다. 2. 왜 선언형(declarative) UI인가? Win32부터 웹, Android 및 iOS에 이르는 프레임워크는 일반적으로 명령형(imperative) 스타일의 UI 프로그래밍을 사용한다. 이것은 가장 친숙한 스타일일 수 있다. 즉, full-functioned UI엔터티를 수동으로 구성하고, UIView또는 이와 같은 것들은 나중에 UI가 변경될 때 ..

Flutter에 대해

1. 개요 Flutter는 Google이 출시한 오픈 소스 크로스 플랫폼 GUI 애플리케이션 프레임워크이다. 안드로이드, iOS, 윈도우즈, 리눅스 및 웹용 애플리케이션과 구글 퓨시아용 앱의 주된 소스코드로 사용된다. Flutter공개 후 GitHub 순위가 엄청나게 급상승 하면서 React-native의 인기를 맹렬히 추격하고 있다. 2. Flutter의 특징 개발 언어로 Dart를 사용한다. 뛰어난 성능 - React-native의 경우 자바스크립트로 네이티브와 브릿지를 통해 통신하는 반면 Flutter는 직접 컴파일 되어서 직접 Render하기 때문에 훨씬 빠르다. 풍부하고 유연한 디자인 - 작성 가능한 위젯 세트, 풍부한 애니메이션 라이브러리 및 확장 가능한 계층형 아키텍처를 제공한다 고품질 환경..

[Javascript] 클래스 export/import 하기

1. 개요 Javascript에서 클래스를 import/export를 하기 위해선 어떻게 하는지 찾아보던 도중, 영어로 된 좋은 포스팅을 찾게 되었고, 해당 포스팅을 한글로 번역하여 정리하였다. (해당 사이트: 새창) 2. Export named export를 사용하여 export class Employee {} 와 같이 Javascript에서 클래스를 내보내보자. 내보낸 클래스는 named import를 사용하여 import {Employee} from './another-file.js'와 같이 가져올 수 있다. 얼마든지 이와같이 파일에서 필요에 따라 이름을 지정하여 쓸수 있다. 다음은 'another-file.js' 라는 파일에서 클래스를 내보내는 예이다. [another-file.js] // 👇️ ..

[Javascript] 엄격(strict) 모드란?

1. 엄격(strict) 모드란? ECMAScript 5에서 처음으로 소개된 strict 모드는 자바스크립트 코드에 더욱 엄격한 오류 검사를 적용해 준다. strict 모드는 스크립트나 함수의 맨 처음에 "use strict" 지시어를 사용하여 선언할 수 있다. [예제] "use strict" // 전체 스크립트를 strict 모드로 설정함. try { num = 3.14; // 선언되지 않은 변수를 사용했기 때문에 오류를 발생시킴. } catch (ex) { document.getElementById("text").innerHTML = ex.name + " "; document.getElementById("text").innerHTML += ex.message; } 위와 같이 선언된 strict 모드는..

[디자인 패턴] MVC, MVP, MVVM이란?

1. 개요 디자인 패턴은 설계자로 하여금 재사용이 가능한 설계는 선택하고, 재사용을 방해하는 설계는 배제하도록 도와준다. 또한 패턴을 쓰면 이미 만든 시스템의 유지보수나 문서화도 개선할 수 있고, 클래스의 명세도 정확하게 할 수 있으며, 객체 간의 상호작용 또는 설계 의도까지 명확하게 정의할 수 있다. 간단히 말해, 디자인 패턴은 설계자들이 올바른 설계를 빨리 만들 수 있도록 도와준다. 2. MVC MVC패턴은 Model + View + Controller를 합친 용어이다. Model과 View는 MVC패턴과 동일하고, Controller 대신 Presenter가 존재한다. MVP 패턴의 구조, 동작, 특징, 장점, 단점을 살펴보자. 2.1 구조 Model: 어플리케이션에서 사용되는 데이터와 그 데이터를..

반응형