-
SharedMap과 로컬 캐시 구현 실전 가이드 TOP NEW
여는 글 안녕하세요. 오늘은 Java의 Map 구현체들 중에서도 멀티스레드 환경에서 안전하게 사용할 수 있는 SharedMap에 대해 이야기해보겠습니다. 특히 Redis나 외부 캐시 솔루션을 사용할 수 없는 제약 환경에서 로컬 캐시를 구현할 때 마주치는 문제들과 해결 방안에 대해 실무 경험을 바탕으로 공유하겠습니다. SharedMap<K,V>이란? SharedMap<K,V>는 Java에서 프로세스 간 메모리 공유를 위해 설계된 특별한 Map 구현체입니다. Chronicle Map이나 Java의 Memory-Mapped Files를 기반으로 한 구현체들이 대표적입니다. SharedMap의... Read More
-
자바 BigDecimal 완벽 가이드 - 실무에서 제대로 사용하기 TOP NEW
여는 글 안녕하세요. 오늘은 Java의 BigDecimal 클래스에 대해 이야기해보려 합니다. 특히 금융 관련 프로젝트나 정확한 소수점 계산이 필요한 상황에서 겪을 수 있는 문제와 그 해결책에 초점을 맞추겠습니다. double이나 float을 사용할 때 발생할 수 있는 부동소수점 오류와 이를 예방하는 BigDecimal 클래스의 올바른 사용법에 대해 알아보겠습니다. 부동소수점의 함정 실무에서 금융 계산을 할 때 가장 큰 실수 중 하나는 double이나 float 타입을 사용하는 것입니다. 부동소수점 방식은 이진법으로 실수를 표현하기 때문에 정확한 십진수 표현이 불가능한 경우가 많습니다. double resu... Read More
-
2024 사이버 보안 최신 동향 세미나 참석 후기 TOP NEW
2024 사이버보안 최신 동향 세미나 오늘은 ‘2024 사이버보안 최신 동향 세미나’에 다녀왔습니다. 이 세미나는 과학기술정보통신부와 한국정보보호산업협회(KISIA)에서 주최했으며, ‘2024 정보보호 인재양성 교육사업 성과교류회’ 행사의 1부로 진행되었습니다. 저는 평소 개발자임에도 보안에 대해 깊게 생각해 본 적이 없고, 사이버 보안 아키텍처나 해킹 시도에 대한 방어 대책에 대해 잘 알지 못했기 때문에, 이번 기회를 통해 식견을 넓히고 자사 시스템에 적용해 보고자 참석 신청을 하게 되었습니다. * 발표자의 PPT를 담은 책자 삼정호텔 2층에서 진행된 이번 세미나는 깔끔한 홀과 체계적인 안내, 그리고 아... Read More
-
2024 카카오 테크밋 (Kakao Tech Meet) 후기 TOP NEW
2024 카카오 테크 밋 (Kakao Tech Meet) 2024 카카오 테크 밋 (Kakao Tech Meet) 지난 12월 18일, ‘2024 카카오 테크밋’에 다녀왔습니다. 퇴근 후 저녁 시간(19:00~)에 진행되어 참여가 가능했을 뿐 아니라, 흥미로운 기술 세션이 포함되어 있어 더욱 기대가 되었습니다. 카카오 테크밋은 작년에 이어 개최된 카카오의 기술 세미나로, 올해는 AI와 프론트엔드(Frontend)를 주제로 다뤘습니다. *카카오 1층에서 바라본 사옥 사실 처음 가보는 카카오 사옥에 진짜 ‘와….’소리가 절로 나오더라구요. 이게 판교구나 싶은 카카오 사옥이었습니다. 행사는 ‘카카오 판교아지트 ... Read More
-
CAS 알고리즘과 Atomic 클래스 - 멀티스레드 환경에서의 락 없는 동기화 TOP NEW
여는 글 현대 소프트웨어 개발에서 동시성 프로그래밍은 필수적인 요소로 자리 잡고 있습니다. 특히, Java는 멀티스레드 환경을 효율적으로 지원하기 위한 다양한 동시성 도구를 제공하고 있습니다. 최근 함수형 프로그래밍의 부상과 함께 등장한 Lambda 표현식은 간결하고 직관적인 코드를 가능하게 하여 개발 생산성을 크게 향상시켰습니다. 그러나 Lambda 표현식이 멀티스레드 환경에서 활용될 경우, 자원의 비동기적 접근으로 인해 Race Condition과 같은 동시성 문제가 발생할 가능성이 존재합니다. Java의 기존 동시성 관리 방식은 ‘synchronized’ 키워드나 ReentrantLock과 같은 락 기반 ... Read More