일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- mybatis
- DI
- assertThat
- assertThrows
- db
- resultMap
- jdbc
- java
- thymeleaf
- 생성자 주입
- sqld
- 스프링 부트
- Javascript
- 스프링부트
- 스프링 부트 입문
- SQL
- 필드 주입
- kafka
- spring
- Effective Java
- @Configuration
- 스프링 빈
- 스프링 컨테이너
- 스프링
- springboot
- 싱글톤
- 스프링 부트 기본
- DIP
- JPA
- 스프링 프레임워크
- Today
- Total
목록분류 전체보기 (292)
선 조치 후 분석

SCS (Spring Cloud Stream) Spring Framework를 기반으로 한 메시징 마이크로서비스 개발을 위한 프레임워크 MQ와 같은 메시징 시스템과 쉽게 통합할 수 있도록 설계되어 있으며, Kafka, RabbitMQ 등 다양한 메시징 미들웨어를 지원 주요 개념1. 메시지 중심의 마이크로서비스SCS는 비동기 메시징을 기반으로 마이크로서비스 간 통신을 가능하게 한다.이벤트 기반의 데이터 흐름을 처리하거나 메시지를 전달하는데 최적화되어 있다. 2. 바인딩개념(Binding)애플리케이션 코드를 메시징 미들웨어와 추상화된 인터페이스로 연결input(입력채널) : 외부 메시지를 소비 output(출력채널) : 외부로 메시지를 발행 3. Binder 추상화 MQ나 Kafka 같은 다양한 메시징 시스..

모놀리식(Monolithic Architecture), MA하나의 통합된 코드 베이스로 여러 비즈니스 기능을 수행하는 전통적인 소프트웨어 개발 모델단일 애플리케이션 내에 서비스의 모든 로직이 통으로 들어가 있는 구조(ex : 상품, 정산, 알림, 쿠폰, 배송 등)이렇게 서비스를 애플리케이션 하나로만 처리할 때의 가장 큰 장점은 간결하다는 점중앙 집중된 구조이기 때문에 분산된 애플리케이션에 비해 엔드 투 엔드 테스트(End-to-End)를 더 빠르게 수행할 수 있다. 단일 애플리케이션에 비즈니스 로직부터 UI, 콘텐츠 등 모든 구성요소를 이루는코드가 들어있기 때문에 디버깅하기도 간편하다. 소규모 애플리케이션이라면 단순하면서도 견고한 구조를 만들기 좋다.하지만, 서비스 규모가 커짐에 따라 모놀리식 아키텍처의..

프로젝트 진행에 있어서 Kafka를 이용하기로 했다. 그래서 처음 접하게 되어서 관련 필요 내용들을 정리해 보았다.MQ(Message Queue)메시지 지향 미들웨어(Message Oriented Middleware) 즉, MOM은 독립된 서비스 간에 데이터를 주고받을 수 있는 형태의 미들웨어를 의미한다. 메시지를 통해 여러 분산되어 있는 시스템 간의 Connector 역할을 통해 결합성을 낮추고, 실시간으로 비동기식 데이터를 교환할 수 있도록 하는 소프트웨어그렇다면, MQ란?MOM을 구현한 솔루션으로 비동기 메시지를 사용하는 서비스들 간에 데이터를 교환해 주는 역할을 한다Producer, Consumer가 존재하고 Producer는 메시지를 큐(Queue)에 전송하고 Consumer가 큐(Queue)의..

이직한 회사에서 드디어 서버 쪽으로 접할 수 있는 기회가 생겨서 Linux 기본 개념에 대해서 정리해보았다.리눅스를 사용하는 이유? 무료 오픈소스 안정성보안성 (권한관리 강력)다중접속유연성과 확장성1) 무료 오픈소스 - 리눅스는 무료 오픈소스 운영체제로, 완전 무료 정책이다. 윈도 서버에 비해 상당한 비용 절감 효과2) 안정성 - 리눅스는 서버 운영체제로 널리 사용되며, 높은 안정성을 자랑한다. 특히 장기간 실행되는 서비스에서도 다운타임이 적다- 장애가 발생해도 빠르게 복구하거나 문제를 진다하기 위한 도구와 로그 시스템이 잘 갖추어져 있다 3) 보안성 - 리눅스는 강력한 사용자 및 그룹 기반 권한 관리 시스템을 제공하여 보안성이 뛰어나다- 필요한 보안 설정(방화병, 암호화 등)을 세밀히 조정할 수 있다4..
일반적으로 스프링 시큐리티 인증을 받은 로그인한 사용자의 정보를 타임리프에서 사용하고 싶을 때 사용Spring Security와 Thymeleaf는 자연스럽게 통합되어 인증 및 권한 정보를 템플릿에서 쉽게 접근할 수 있도록 지원Spring Security의 인증정보를 Thymeleaf 템플릿 내에서 접근할 때는 #authentication 또는 #authorization이라는 헬퍼 객체를 사용#authentication 헬퍼 객체#authentication은 현재 인증된 사용자의 정보를 가져오는 데 사용Spring Security의 Authentication 객체에 있는 다양한 정보를 조회 주요 속성#authentication.name : 현재 로그인한 사용자의 이름 #authentication.prin..
갑자기 궁금해져서 정리해 보았다.Integer.valueOf() vs Integer.parseInt()-> 모두 문자열을 정수로 변환하는 역할을 하지만, 둘 사이에는 몇 가지 중요한 차이점이 있다.Integer.valueOf(String s)-> 반환타입 : Integer -> 값을 반환할 때는 새 객체를 생성하지 않고 이미 캐싱된 객체를 반환 String str = "123";Integer num = Integer.valueOf(str);-> Integer 객체가 필요할 때 사용Integer.parseInt(String s)-> 반환타입 : int -> int 기본형을 반환하기 때문에 캐싱이나 객체 생성과 관련이 없다 String str = "123";int num = Integer.parseInt(..