목록전체 글 (29)
Day 개발 기록
gradle 빌드 시 다음과 같은 오류가 발생했다면 Deprecated Gradle features were used in this build, making it incompatible with Gradle 이는 단순히 x.x버전 이후에 사용하지 못하는 gradle 버전이 있어 빌드에 앞서 알려주는 것이다. 빌드시 옵션을 주거나 gradle 버전을 올린다. --warning-mode=all --stacktrace Setting 들어가서 해당 command 추가하면 된다.
카프카 브로커 실행된 카프카 애플리케이션 중 서버 1대를 의미한다. 주키퍼 주키퍼 : 메타데이터( 브로커 id , 컨트롤러 id ) 저장 n개 브로커중 1대는 컨트롤러 수행 컨트롤러 : 브로커가 정상적으로 수행하는지 확인 Record 보내는 데이터 의미 ++ topic : 테이블 같은것 (topic , key , message ) 형식으로 보낸다. 프로듀서는 레코드를 생성하여 브로커에게 전송 전송된 레코드들은 파티션에 신규 오프셋과 함께 기록된다. 컨슈머는 브로커로 부터 레코드를 요청하여 가져간다. ( polling ) 형식 -> 브로커가 컨슈머에게 데이터를 보내는 것이 아니다!! 파일시스템 단위로 저장된다. 메시지가 저장될때는 세그먼트파일이 열린다. 세그먼트가 닫히고 일정시간(or 용량) 에 따라 삭제..
브로커 카프카가 설치된 서버단위 보통 3개단위로 구성 replication 파티션의 복제 리더 - 팔로워 ISR : In Sync Replica 파티션의 고가용성을 위해 사용 -> 파티션 복제기능으로 데이터 유실 방지 replication이 많다고 좋은것은 아님. 브로커의 리소스 사용량이 늘어나게 된다. 저장시간을 잘 생각해서 레플리케이션 설정 리더 파티션 : kafka 클라이언트와 데이터 주고받는 역할 팔로워 파티션 : 리더파티션으로 부터 레코드 지속적으로 복제 특정 파티션의 리더,팔로워가 레코드가 모두 복제되어 Sync가 맞는 상태 👉 ISR unclean.leader.election.enable = default는 false ->만약 true ? 유실이 된다. 데이터 처리가 중요하다는 의미 카프카 ..
이제 시큐리티 설정 및 JWT 토큰 발행과 구현은 모두 끝났다. 이번 포스트에서는 테스트를 위한 controller와 service를 만들고 postman을 통해 테스트해보도록 하겠다. service 패키지를 만들고, MemberService.java클래스를 만든다. 그리고 web패키지 아래에 dto 패키지를 만들고 MemberSaveRequestDto와 MemberRequestDto를 만든다. MemberSaveRequsetDto.java @Getter @NoArgsConstructor public class MemberSaveRequestDto { private String email; @Setter private String password; public Member toEntity() { retu..
이번 포스트 에서는 jwt 토큰을 발행해보고 인증하는 로직을 구현해겠다. 먼저 Application.java 에 비밀번호 암호화해줄 빈을 등록한다. Application.java @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } @Bean public BCryptPasswordEncoder passwordEncoder(){ return new BCryptPasswordEncoder(); } } config 패키지 밑에 jwt 패키지를 생성한다. 그리고 하위에 JwtProperties , JwtTokenPr..