[백엔드 개발자 면접 단골 질문 뿌시기 - 1] 3계층 아키텍처(3 Tier- Architectur)가 뭘까?
·
Develop/CS
MSA 환경에 개발을 하는 회사에서는 아마 면접에서 자주 물어보는 질문일 것이라고 생각이 들어 남겨 놓는다 🤣 3계층 아키텍처란? IBM에서는 이렇게 정의하고 있다. 3계층 아키텍처(3 Tier-Architectur)는 애플리케이션을 프레젠테이션 계층 또는 사용자 인터페이스, 데이터가 처리되는 애플리케이션 계층 그리고 애플리케이션과 관련된 데이터가 저장 및 관리되는 데이터 계층이라는 3개의 논리적이고 물리적인 컴퓨팅 계층으로 구성하는 확립된 소프트웨어 애플리케이션 아키텍처입니다. 정의는 알았으니 각 계층에 대해서 상세히 알아보자면 🤔 프리젠테이션 계층 - 사용자가 애플리케이션과 상호작용하는 애플리케이션의 사용자 인터페이스 및 커뮤니케이션 계층 - 웹 브라우저, 데스크탑 애플리케이션 또는 그래픽 사용자 인..
아파치 카프카(APACHE Kafka) 그게 도대체 뭔데 😤 카프카 기본 개념에 대해 알아보자
·
Develop/DevOps
최근 몇년 전부터 개발자 채용 공고에 빠짐 없이 등장하는 기술 키워드가 있다. 바로 *아파치 카프카(Apache Kafka)이다. *정의 아파치 카프카(Apache Kafka)는 아파치 소프트웨어 재단이 스칼라로 개발한 오픈 소스 메시지 브로커 프로젝트이다. 이 프로젝트는 실시간 데이터 피드를 관리하기 위해 통일된, 높은 처리량, 낮은 지연시간을 지닌 플랫폼을 제공하는 것이 목표이다. 요컨대 분산 트랜잭션 로그로 구성된, 상당히 확장 가능한 pub/sub 메시지 큐로 정의할 수 있으며, 스트리밍 데이터를 처리하기 위한 기업 인프라를 위한 고부가 가치 기능이다. 디자인은 트랜잭션 로그에 많은 영향을 받았다. 역사 아파치 카프카는 원래 링크드인이 개발한 것으로, 2011년 초에 최종적으로 오픈 소스화되었다...
[Java] 스트림(Stream) API 사용 방법 / 외부반복 내부반복 차이점
·
Develop/Back-End
Java 개발자라면 한번쯤 Stream API 에 대해서 들어보게 될 텐데 회사 *코드 컨벤션에 따라 익숙한 개발자들도 있을 것이고 사용을 아예 안하는 개발자도 많을 것 같은데🤪 나도 자바에선 자주 사용하지 않아 손에 익진 않았는데 사용하면서 퍼포먼스 측면에서도 나아지고 코드도 훨씬 간결해진듯... 😛 * 코드 컨벤션 (Code Convention) : 읽고 관리하기 쉬운 코드를 작성하기 위한 일종의 코딩 스타일 규약(하나의 작성 표준) 스트림이 무엇인지 간단하게 특징과 사용 방법을 블로그에 정리해보려고 해 😏 스트림 API는 자바 8부터 추가된 기능이야. 이걸 쓰면 컬렉션 처리가 훨씬 쉬워지고 성능도 높아져. 반복문을 직접 안 써도 되니까 코드도 간결해지고 가독성도 좋아져. 스트림은 데이터 처리를 파이..