본문 바로가기
728x90

분류 전체보기475

나는야 다국어 전문가(호소인)! - feat. Locale 🙌 개요최근에 회사에서 다국어 번역 관련 업무를 처리하게 되면서 Locale에 대해 다루는 일이 많아졌습니다.저는 사이드 플젝할 때 대략적으로만 사용만 해봤지 정확히 어떻게 사용해야 좋은 코드인지 고민하며 작성해보는 것이 이번이 처음이라, 이왕이면 이에 대해 공부하며 기록하고 좋은 코드를 작성해보고자 합니다 :-) 🧐 Locale에 대해 알아보쟈!Locale 이란?나라, 언어 등 지역들에 대한 정보를 담고 있는 자바 객체이다이는 Accept-Language 헤더, request params, Cookie/Session 등의 방법을 통해 Locale을 사용할 수 있다 Locale 형식language[_territory][.codeset][@modifier]위와 같이 언어, 지역, 코드셋의 3개의 값을 .. 2024. 10. 28.
[Youtube] kafka 조금 아는 척하기 3편 - 컨슈머 컨슈머토픽 파티션에서 레코드를 조회한다서버, group id 지정역직렬화를 위한 deserializer 지정Consumer 객체 생성subscribe() 메소드 호출 ➡ 구독할 토픽 목록 전달poll() ➡️ 일정 시간동안 대기하다가 토픽을 읽어온다 토픽 파티션은 그룹 단위 할당컨슈머 그룹 단위로 파티션이 할당된다위에서 설정한 groupId 기준으로 할당파티션 개수와 컨슈머 개수는 밀접한 관련이 있다파티션 개수보다 컨슈머 그룹이 많으면 컨슈머는 논다!예시파티션 2개, 컨슈머 1개 ➡️ 컨슈머 1개가 2개의 파티션으로부터 토픽을 읽어온다파티션 2개, 컨슈머 2개 ➡️ 컨슈머 : 파티션 = 1 : 1 연결파티션 2개, 컨슈머 3개 ➡️ 나머지 컨슈머는 연결이 되지 않아 놀게 된다컨슈머 개수가 파티션 개부소다.. 2024. 9. 16.
인프런 판교 퇴근길 밋업 #7 오픈소스 참가 후기 🍀 내가.. 당첨..?이전 퇴근길 밋업에도 몇번 신청해봤다가 안됐어서 큰 기대는 없었는데ㅠㅠ이번 주제인 오픈소스는 솔직히 너어무 탐나서 꼭 가면 좋겠다.. 하고 기다렸는데딱! 당첨 문자받고 너무 행복한 개발자가 되..! 여기 오고싶어서 퇴근도 도망치듯이 해서 도착한 판교!확실히 판교는 엄청 개발자스러운 동네입니다ㅎㅎ 도착지인 스타트업 캠퍼스는 판교역에서 좀 떨어져있어서저는 버스를 타고 갔답니다!판교역 앞에서 타는 버스 아무거나 타도 그 쪽으로 가더라구용확실히 IT의 본고장(?)답다 우와! 스타트업 캠퍼스!대학시절 스타트업 인턴했던 PTSD가 올 뻔.. 했지만금방 극복하고 벅뚜벅뚜. 걸어갑니도도~ 3동으로 오면 된대서 당당하게 입장했습니다 아촤촤 여기가 아니구만 그래친절한 문구를 따라서 정문으로 도착!  엘리.. 2024. 9. 13.
[💚] Spring Cloud ☁️ 팀 내에서 한 달에 한 번 팀원들이 돌아가면서 발표를 하는 테크톡을 진행한다테크톡의 컨셉은 우아한형제들의 테코톡!간단한 주제로 20분 내로 발표하고 큰 주제라면 마중물을 떠주는 느낌, 작은 주제라면 세부적인 스펙을 설명하는 느낌이다 올해는 나도 테크톡에 참여하여 발표를 하게 되었다!이번 테크톡의 개략적인 주제는 JDK 버전별 특징, 스프링 생태계 요런 느낌!그래서 나는 Spring Cloud로 주제를 잡았고 꽤나 큰 주제라 마중물을 뜨는 느낌으로 주요 아키텍처의 특징만 살펴보려고 한다 🧐 들어가기 전에..클라우드 네이티브 애플리케이션클라우드 컴퓨팅 환경에 최적화되어 설계, 개발, 배포되는 소프트웨어 애플리케이션주요 특징마이크로서비스 아키텍처 : 애플리케이션을 작은 단위의 마이크로서비스로 분리하여 개발하.. 2024. 9. 6.
[Youtube] kafka 조금 아는 척하기 2편 - 프로듀서 토픽에 메시지 전송 - 토픽, 키, 값prperties - 프로듀서가 사용할 속성을 설정한다 (설정 정보)브로커 목록, 키와 값 직렬화를 위한 serializer, ack, 배치 사이즈 등을 설정카프카 프로듀서 객체는 send 메시지를 지원한다프로듀서 레코드는 토픽 이름, 키, 값으로 생성한다 → 카프카에 저장될 메시지 = 레코드 프로듀서의 기본 흐름 프로듀서 기본 흐름 순서send() 메소드를 통해서 레코드를 전송한다Serializer를 통해 byte 배열로 변환하고, Partitioner를 통해 변환된 메시지를 보낼 파티션을 결정한다이후 변환된 메시지를 배치로 묶어서 버퍼에 저장한다Sender가 묶인 배치를 카프카 브로커로 전송한다 Sender의 기본 동작sender는 별도 스레드로 동작한다sende.. 2024. 9. 4.
[Youtube] kafka 조금 아는 척 하기 1편 - 개발자용 kafka란?Apache Kafka고성능 분산 이벤트 스트리밍 플랫폼  kafka 기본 구조카프카 클러스터메시지(이벤트)가 저장되는 곳데이터가 이동하는데 필요한 핵심 역할을 수행한다여러 개의 브로커로 구성된다브로커는 일종의 서버로 생각하면 된다브로커가 메시지를 나눠서 저장하고, 이중화 처리, 장애 시 대체 등 다양한 역할을 한다주키퍼 클러스터카프카 클러스터 관련 정보가 기록된다이를 통해 카프카 클러스터가 관리된다  Topic & Partition토픽메시지를 구분하는 단위파일시스템의 폴더와 유사하다한 개의 토픽은 한 개 이상의 파티션으로 구성된다파티션메시지를 저장하는 물리적인 파일프로듀서는 메시지를 카프카에 저장할 때 어떤 토픽에 저장해야하는지 요청하고, 컨슈머는 어떤 토픽에서 메시지를 읽어올 지 결정한다.. 2024. 8. 21.
728x90