본문 바로가기

▶ Back-End114

스레드 풀(Thread Pool) 이란? *자세한 설명 생략 ▷ 스레드(Thread) 란? 프로세스 내에서 실제로 작업을 수행하는 주체 ▷ 스레드 풀(Thread Pool) 이란? 병렬 처리가 잦은 프로그램에서 사용하기 적합 스레드를 미리 생성하고, 작업 요청이 발생할 때마다 미리 생성된 스레드로 해당 작업을 처리하는 방식 *이때, 작업이 끝난 스레드는 종료되지 않으며 다음 작업 요청이 들어올 때까지 대기 ▷ 스레드 풀(Thread Pool) 주요 용어 용어 설명 초기 스레드 생성될 스레드 코어 스레드 남아있을 최소 스레드 최대 스레드 스레드의 최대 개수 ▷ 스레드 풀(Thread Pool) 생성 종류 설명 CachedThreadPool - 초기 스레드 수, 코어 스레드 수가 0개, 최대 스레드 수(Integer.MAX_VALUE) - 작업이 .. 2022. 11. 22.
MQTT Broker(mosqitto) 설치 및 설정 Docker를 이용해 MQTT Broker를 간단하게 설치할 수 있다. *자세한 설명 생략 ① docker-compose.yml 생성 *docker-compose.yml 설명 아래 관련 글 참고 version: "3.7" services: mqtt: container_name: mqtt-broker image: eclipse-mosquitto volumes: - mosquitto_conf:/mosquitto/config - mosquitto_data:/mosquitto/data - mosquitto_log:/mosquitto/log networks: - mqttnet ports: - 1883:1883 volumes: mosquitto_conf: mosquitto_data: mosquitto_log: ne.. 2022. 11. 16.
R2DBC 란? * 자세한 설명 생략 ▷ R2DBC 란? Spring Webflux(Reactive Programming)로 서비스를 구축할때 DB 사용이 필요한 경우 R2DBC를 사용하여 RDB에 Non-Blocking 접근 가능 *기존 RDB 접근은 Blocking이기때문에, 완전한 Non-Blocking 서비스 구축 불가 ▷ 지원 되는 RDB *2022.11.11 기준 - H2 - MariaDB - Microsoft SQL Server - MySQL - jasync-sql MySQL - Postgres - Oracle ▷ 참고 Spring Data R2DBC Spring Data R2DBC, part of the larger Spring Data family, makes it easy to implement R2D.. 2022. 11. 11.
Visual Studio Code 설치 방법 ▷ Visual Studio Code 설치 방법 2022. 11. 10.
Gradle vs Maven Gradle과 Apache Maven의 차이점 * 자세한 설명 생략 ▷ Apache Maven - Ant의 단점 보안하여 만든 자바 프로젝트 빌드 도구 - 사용하는 라이브러리와 연관된 라이브러리 까지 관리 - 표준화된 포멧 제공 - setting.xml, pom.xml(Project Object Model)을 사용 ▷ Gradle - Maven과 Ant의 장점을 조합하여 만든 빌드 도구 - 빌드 속도가 Maven보다 빠르고, 멀티 프로젝트에 적합 - groovy 언어를 사용(xml에서 사용하던 "" 태그가 없음) - setting.gradle, build.gradle을 사용 * Ant : 정형화되지 않은 스크립트로 내부 라이브러리만 xml로 관리 2022. 11. 9.
IntelliJ(Community) SpringBoot Project 생성 Ultimate 버전에는 있고, Community 버전에는 없고* 간단하게 프로젝트 생성 후 실행 결과 확인  ▷ Spring Iniaialzr Project 생성               ▷ 관련 글 IntelliJ(Community) 설치 방법 + Eclipse 단축키 설정▷ IntelliJ(Community) 설치 방법 ▷ Eclipse 단축키 설정 ▷ 관련 글 [Spring || Boot] IntelliJ(무료 버전) Spring Boot Project 생성 Ultimate 버전에는 있고, Community 버전에는 없고 * 간단하게 프로젝트 생성 후 실행coding-today.tistory.com 2022. 11. 8.
IntelliJ(Community) 설치 방법 + Eclipse 단축키 설정 ▷ IntelliJ(Community) 설치 방법         ▷ Eclipse 단축키 설정   ▷ 관련 글 IntelliJ(Community) SpringBoot Project 생성Ultimate 버전에는 있고, Community 버전에는 없고 * 간단하게 프로젝트 생성 후 실행 결과 확인 ▷ Spring Iniaialzr Project 생성 ▷ 관련 글 IntelliJ(Community) 설치 방법 + Eclipse 단축키 설정 ▷ IntelliJ(Community)coding-today.tistory.com 2022. 11. 8.
Spring WebFlux 란? * 자세한 설명 생략 ▷ WebFlux란? - Spring WebFlux는 Spring 5에서 새롭게 추가된 모듈 - Reactive-stack Web Framework이며 non-blocking의 reactive stream을 지원 - Flux와 Mono라는 두 종류의 Publisher와 Cold, Hot 방식 존재 - WebFlux는 WebClient를 포함하고 있고 Spring MVC 기반으로 Rest Template을 WebClient로 사용 가능 ▷ Spring MVC vs Spring WebFlux Spring MVC Spring WebFlux Servlet Stack Reactive Stack Blocking : 처리결과를 기다림 Non-Blocking : 처리결과를 기다리지 않음 동기(Sy.. 2022. 11. 8.
MQTT 란? MQTT ( Message Queueing Telemetry Transport ) * 자세한 설명 생략 ▷ MQTT 란? - IoT와 같이 제한되거나 대규모 트래픽 전송을 위해 만들어진 발행/구독 기반의 메시징 프로토콜 - 브로커와 클라이언트는 TCP/IP 소켓 연결을 한 후 상태 유지(연결 지향적) *TCP/IP : 데이터가 의도된 목적지로 전송 될 수 있도록 보장해 주는 하나의 약속 ▷ MQTT 주요 구성 명칭 설명 Message MQTT를 통해 교환되는 모든 정보 Publisher ( 발행자 ) Message 송신 Subscriber ( 구독자 ) Message 구독 및 수신 Topic ( 주제 ) Message 이름 ( 채널 ) Broker ( 중개인 ) 발행자로 부터 모든 Message를 받고,.. 2022. 11. 7.
728x90
728x90