DEV
웹개발에 관한 글들.
2023
- Spring Boot - 데이터 영속성(2): 엔티티 클래스 설계
- Spring Boot - 데이터 영속성(1): JPA, Spring Data JPA
- Spring Boot - 스프링 부트 테스트
- Spring Boot - AOP
- Docker 관련 명령어들
- Spring Boot - 웹 애플리케이션 구축 (5): 국제화 메시지 처리, 로그 설정, 애플리케이션 패키징과 실행
- Spring Boot - 웹 애플리케이션 구축 (4): application.properties, Profile 설정
- Spring Boot - 웹 애플리케이션 구축 (3): Interceptor, ServletFilter
- Spring Boot - 웹 애플리케이션 구축 (2): HttpMessageConverter, ObjectMapper
- Spring Boot - 웹 애플리케이션 구축 (1): WebMvcConfigurer 를 이용한 설정, DispatcherServlet 설정
- Java - Java 8 ~ Java 17
- Java8 - 날짜와 시간
- Java8 - CompletableFuture (2): 비동기 연산의 파이프라인화
- Java8 - CompletableFuture (1): Future, 병렬화 방법
- Java8 - Optional 클래스
- Java8 - 디폴트 메서드
- Java8 - 람다 테스팅, 디버깅
- Java8 - 리팩토링, 디자인 패턴
- Java8 - Stream 으로 병렬 데이터 처리 (2): Spliterator 인터페이스
- Java8 - Stream 으로 병렬 데이터 처리 (1): 병렬 스트림, 포크/조인 프레임워크
- Java8 - Stream 으로 데이터 수집 (2): Quiz
- Java8 - Stream 으로 데이터 수집 (2): Partitioning, Collector 인터페이스, Custom Collector
- Java8 - Stream 으로 데이터 수집 (1): Collectors 클래스, Reducing 과 Summary, Grouping
- Java8 - Stream 활용 (2): Quiz (2)
- Java8 - Stream 활용 (2): Quiz (1)
- Java8 - Stream 활용 (2): 리듀싱, 숫자형 스트림, 스트림 생성
- Java8 - Stream 활용 (1): 필터링, 슬라이싱, 매핑, 검색, 매칭
- Java8 - Stream
- Java8 - 람다 표현식 (2): 메서드 레퍼런스, 람다 표현식과 메서드의 조합
- Java8 - 람다 표현식 (1): 함수형 인터페이스, 형식 검사
- Java8 - 동작 파라메터화
- Java8 - Java8 이란?
- Spring Boot - REST-API with Spring MVC (2): POST/PUT 메서드 매핑, Pageable/Sort, 검증, 예외처리, 미디어 콘텐츠 다운로드
- Spring Boot - REST-API with Spring MVC (1): GET/DELETE 메서드 매핑, 응답 메시지 처리(마셜링)
- Spring Boot - HTTP, Spring Web MVC 프레임워크, REST-API
- REST-API
- Spring Boot - Spring bean, Spring bean Container, 의존성
- Spring Boot - MSA 와 Spring Boot
- NestJS - 테스트 자동화
- NestJS - 클린 아키텍처
- NestJS - Metadata(Reflection Class)
- NestJS - Custom Parameter Decorator
- NestJS - CQRS
- NestJS - Health Check
- NestJS - Task Scheduling
- NestJS - Middleware, Guard, Interceptor, Pipe, ExceptionFilter 그리고 Life Cycle
- NestJS - Interceptor
- NestJS - Exception Filter
- NestJS - Logging
- NestJS - Custom Provider
- NestJS - Guard, JWT
- 인증, JWT, Sliding Session, Refresh Token
- NestJS - Middleware
- Typescript - TypeORM vs Sequelize
- NestJS - Database, TypeORM
- NestJS - Pipe, Validation
- IoC(제어 반전), DI(의존성 주입)
- NestJS - 동적 모듈로 환경변수 구성
- NestJS - Module 설계
- NestJS - Provider, Scope
- NestJS - Interface
- 관점 지향 프로그래밍 (AOP, Aspect-Oriented Programming)
- Decorator
- Event Loop
- Nestjs - Failed to execute command: npm install --silent
- Nestjs - 기본
- AWS - Security (2): VPC Traffic Mirroring, WAF
- AWS - Security (1): Security Group, ACL, VPC Flow Log
- IP check 의 여러 가지 방법
- AWS - Network 연결 옵션 (5): AWS Direct Connect
- AWS - Network 연결 옵션 (4): Route 53 DNS Resolver (DNS 해석기)
2022
- AWS - Network 연결 옵션 (3): Transit Gateway (전송 게이트웨이)
- ping 옵션
- AWS - Network 연결 옵션 (2): VPN
- AWS - Network 연결 옵션 (1): VPC Peering
- AWS - Load Balancing (4): Global Accelerator
- AWS - Load Balancing (3): CloudFront
- AWS - Load Balancing (2): Route 53
- AWS - Load Balancing (1): ELB
- AWS - Internet
- AWS - VPC (2): Endpoint
- AWS - VPC (1): 기초
- AWS - Infra
- Redis - Redis 튜닝
- Redis - Redis Cluster & Monitoring (3)
- Redis - Redis Cluster & Monitoring (2)
- Redis - Redis Cluster & Monitoring (1)
- Redis - 아키텍쳐
- Redis - 데이터 모델링
- Redis - Transaction, Index, User Authentication
- Redis - RedisJSON
- Redis - HyperLogLog
- Redis - Geo
- Redis - Bit
- Redis - Sorted Set
- Redis - Set
- Redis - List
- Redis - Hash
- Redis 기본, 데이터 처리 명령어, String
- NoSQL 개념
- Rancher Desktop (Docker Desktop 유료화 대응)
- Node.js - Express 로 SNS 서비스 구현 (Passport, multer)
2021
- Node.js - mongoDB, mongoose
- Node.js - MySQL, 시퀄라이즈
- Node.js - Express (2): 라우터, 템플릿 엔진
- Node.js - Express (1): 미들웨어
- Node.js - 패키지 매니저 (package.json)
- Node.js - 기본 개념 (4): 이벤트, 예외처리
- Node.js - http 모듈로 서버 생성
- Node.js - 기본 개념 (3): 파일시스템
- Node.js - 기본 개념 (2): 멀티스레드
- eslint/prettier 셋팅 + Node.js - 기본 개념 (1): 내장 객체, 내장 모듈, util
- Typescript - 빅데이터 배치 프로그램
- Typescript - Generic 프로그래밍
- Typescript - ramda 라이브러리 (2)
- Typescript - ramda 라이브러리 (1)
- Typescript - 함수 조합
- Typescript - Promise, async/await
- Typescript - 반복기, 생성기
- Typescript - 배열, 튜플
- Typescript - 함수, 메서드
- Typescript - 객체, 타입
- Typescript - 기본
- ES2015+ (ES6+) 기본
- Node.js - 기본 개념
- Docker 개요
- 시스템과 인프라 기초 지식
- Spring Cloud - Sleuth, Open Zipkin 을 이용한 분산 추적 (4/4) - 로그 시각화를 위한 Open Zipkin 사용
- 이 블로그의 MSA 에 사용된 인스턴스 포트 정보 및 서비스 시작법
- Spring Cloud - Sleuth, Open Zipkin 을 이용한 분산 추적 (3/4) - 로그 추적을 위한 Sleuth 사용
- Spring Cloud - Sleuth, Open Zipkin 을 이용한 분산 추적 (2/4) - ELK 스택
- 소프트웨어 구분
2020
- 클라우드 컴퓨팅, IaaS, PaaS, Serverless, SaaS
- Spring Cloud - Sleuth, Open Zipkin 을 이용한 분산 추적 (1/4) - 이론
- 클라우드에서의 운영 - 12요소 애플리케이션
- Spring Cloud - Netflix Zuul(Ribbon) Retry
- Spring Cloud - Spring Cloud Eureka (상세 설정편)
- Spring Cloud - Hystrix (회복성 패턴)
- .gitlab-ci.yml 에 대하여
- GitLab CI/CD Pipeline 구성
- GitLab-Runner 설치 & 등록(Windows)
- Spring Cloud - Stream, 분산 캐싱 (2/2)
- Spring Cloud - Stream, 분산 캐싱 (1/2)
- Spring Cloud - OAuth2, Security(2/2)
- Spring Cloud - OAuth2, Security(1/2)
- Spring 어노테이션 정리
- Spring Cloud - Netflix Zuul(2/2)
- Spring Cloud - Netflix Zuul(1/2)
- Spring Cloud - Spring Cloud Eureka
- Spring Cloud - Spring Cloud Config Server
- Spring Cloud - Spring Cloud Feign
- Spring Cloud - Springboot Actuator
- Java Code Convention