본문 바로가기
728x90

분류 전체보기190

LG U Plus 현행화 프로젝트 후기 Intro 입사 5개월 차에 Kafka 시스템을 대체적으로 활용하고 CTI 솔루션을 교체하는 사용자 웹 페이지 프로젝트를 맡게 되었습니다✌ 보안이 철저한 만큼 자세한 내용은 작성하지 못하지만 프로젝트를 하면서 배운 점과 후기를 작성해 보겠습니다😝  개요 이번 프로젝트는 LG U Plus 고객센터에서 아웃바운드, 인바운드 업무를 보시는 분들이 기간 별 통계 자료를 관리하고 임직원 분들의 상담을 평가할 때 사용하는 웹 사이트를 구축하는 개발자로 투입되었어요.  제가 담당한 부분은 자동화 시키는 Batch 파일을 생성하고 CTI 구/신 버전에 맞춰서 데이터를 변환하여 등록하고 사용자 사이트에서 확인할 수 있게 했습니다. 사실 Batch 쪽은 처음 해보는 작업이었고, 페이지마다 하루에 보통 30만 건을 들어오.. 2024. 6. 21.
[ Java ] Optional 개념 및 올바른 사용법 알아가기 Intro 개발을 하다 보면 가장 많이 발생하는 에러 중 하나인 NullPointException을 자주 만나게 되는데,해당 에러를 피하기 위해 null을 체크하는 로직을 추가합니다. //mkey = Id 값 입니다. 해당하는 데이터가 없으면 null 입니다.MemberVO findUser = memberRepository.findById(mKey);//만약 findUser 결과 값이 null이면 NullPointException이 발생합니다.findUser.getUserNm();//--------------------------------------------------------------------------------if(findUser != null){//NullPointException을 방지.. 2024. 6. 10.
[ Java ] OutOfMemoryError(With 힙덤프) 에러 분석해보기 안녕하세요🤚 오늘은 실무에서 프로젝트 진행 중 Heapdumponoutofmemoryerror 가 발생해서해당 에러의 개념과 실전 예제 코드를 통해서 알아보겠습니다 😄    Heapdumponoutofmemoryerror 옵션은 Java 애플리케이션이 메모리 부족(OutOfMemoryError)오류가 발생했을 때 발생합니다. Java는 개체를 Heap(힙) 공간에 생성하고이 생성 위치에 대한 주소를 가지고 Object Reference(개체 참조)하는  방식으로 사용합니다. 개체를 생성하는 과정에서 Heap 공간에 개체를 할당하기 위한 공간이 부족한 경우 발생하는데,이 경우 가비지 컬렉터는 새로운 개체를 생성할 수 있는 공간을 확보할 수 없습니다. 드물게 가비지 컬렉션을 수행하는데 과도한 시간이소비되.. 2024. 5. 29.
[ Java ] java.util.stream.IntStream 주요 메서드 정리 오늘은 토이 프로젝트 생성하면서 테이블 생성 테스트 코드 작성할 때활용했던 java.util.stream.IntStream에 대해 포스팅해 보겠습니다😄  주요 메서드 정리 및 개념에 대해 다루고 실전 예제 코드를 통해서 각 메서드에 장단점을 알아보는 시간을 가지겠습니다 ❗ IntStream - 소개 IntStream은 Java 8에서 도입된 Stream API의 일부분으로,'int' 기본형에 특화된 스트림입니다. Stream API는 Java에서 함수형 프로그래밍 스타일을 사용하여 데이터 처리를 할 수 있도록 도와주고IntStream은 'Stream' 와는 다르게 오토박싱/언박싱의 오버헤드가 없기 때문에 성능적으로 유리합니다. IntStream은 여러 가지 방법으로 다음과 같이 생성해서 사용할 수 있습.. 2024. 5. 23.
[ Concept ] 분산 코디네이터 Zookeeper(주키퍼) 알아가기 Intro 이전 포스팅에서 Kafka(카프카)의 개념에 대해 알아봤습니다.이어서 오늘은 Kafka(카프카)와 떨어질 수 없는 사이인 Zookeeper(주키퍼)에 대해 포스팅을 진행해보려고 하는데요.카프카를 사용하려면 주키퍼까지 알아야 한다니.. 정말 공부할 게 너무 많아서 걱정이네요..😭 그럼 바로 주키퍼에 대해 파헤쳐 보겠습니다❗ Zookeeper(주키퍼) - 소개   분산 시스템을 설계하다 보면, 가장 큰 문제점 중의 하나가 분산된 시스템 간의 정보를 어떻게 공유할 것이고,클러스터에 있는 서버들의 상태를 체크할 필요가 있으며 또한, 분산된 서버들간에 동기화를 위한 Lock(락)을 처리하는 것들이 문제로 부딪히는 상황이 발생하는데요. 이러한 문제를 해결하는 시스템을 코디네이션 서비스 시스템(coord.. 2024. 5. 20.
[ Concept ] 대용량 / 실시간 데이터 처리를 위한 오픈 소스 (Apache Kafka) Apache Kafka (아파치 카프카) 란? 실무 프로젝트에서 개발을 끝내고 테스트를 진행하던 중 대용량 데이터를 처리하는 과정에서 접하게 된 오픈 소스에 대해 포스팅을 진행해 보겠습니다.  아파치 카프카? 실무에서 가끔씩 선배님들과 대화하면서 들어본 적은 있지만 실질적인 제어 코드나 실시간으로 제어하는 서비스를 이번에 진행하는 프로젝트에서 처음 접해봤습니다. 카프카는 웹 사이트, 애플리케이션, 센서 등에 취합한 데이터를 스트림 파이프라인을 통해 실시간으로 관리하고보내기 위한 분산 스트리밍 플랫폼이며, 데이터를 생성하는 애플리케이션과 데이터를 소비하는 어플리케이션 간의 중재자 역할을 함으로써 데이터의 전송 제어, 처리, 관리 역할을 합니다. 카프카 시스템은 여러 요소(노드)와 함께 구성될 수 있어 카프.. 2024. 5. 17.
728x90