개발 공부(36)
-
38일차 TIL: MOM(메시지 지향 미들웨어)
#1. 오늘의 학습 키워드MOM에 대해비동기 기반의 i/o 방식을 제공하는 Spring WebFlux 에 대해서 알아봤었다.https://second-brain.tistory.com/34또 다른 비동기 방식을 사용하는 통신 유형으로는 메시지 브로커가 떠오른다.메시지 브로커로 RabbitMQ, Kafka 등 익히 들어본 기술이 떠오른다.메시지 브로커에 대해서 알아보기 전에, 우선 메시지 지향 미들웨어 (MoM) 에 대해서 알아보자#2. 공부한 내용1. MOM- 메시지를 통해 앱들을 연결해 서로 간 데이터 교환을 가능케 하는 미들웨어Message Oriented Middleware메시지 지향 미들웨어메시지 기반의 비동기형 메시지를 전달하는 방식의 미들웨어미들웨어이기에 중간에서 관리해주는 시스템이다.메시지 전..
2024.05.11 -
37일차 TIL: 디자인 패턴
#1. 오늘의 학습 키워드디자인 패턴에 대해전에 아키텍처 패턴에 대해서 공부를 했었다.이번에는 좀 더 개발과 가까이 있는 패턴인 디자인 패턴에 대해서 알아보자.디자인 패턴은 아키텍처 패턴보다 하위 수준의 설계로 봐도 된다.아키텍처 패턴전체 시스템의 구조를 설계하기 위함디자인 패턴서브 시스템에 속하는 컴포넌트들과, 그 사이의 관계를 설계하기 위함#2. 공부한 내용1. 디자인 패턴- 개발하면서 발생하는 반복적인 문제에 대한 해결 방안디자인 패턴은 객체 지향의 4대 특성과 설계 원칙 (SOLID) 를 기반으로 구현 되어있다.객체 지향 4대 특성캡슐화 (encapsulation)속성과 메서드를 하나로 묶어서 인터페이스로 해당 데이터들로 접근할 수 있게끔 처리정보 은닉이 가능하고, 재사용 용이, 인터페이스 단순해..
2024.05.10 -
99클럽 36일차 TIL: jenkins
#1. 오늘의 학습 키워드jenkins에 대해저번 포스트 때 DevOps 와 CI, CD 등에 대한 개념에 대해 알아보았다.https://second-brain.tistory.com/53CI여러 개발자들의 코드들의 지속적인 통합.CD코드를 항상 배포 가능한 상태로 유지하고, 이를 자동화한다.CI/CD 는 개발자들의 새로 구현한 코드들이 사용자가 사용 가능한 서비스까지 전달하는 과정을 지속 가능한 상태와 자동화 된 과정으로 유지시키는 것이다.그럼 이번엔 파이프라인을 구축하여 배포, 롤백 등을 자연스럽게 해주는 것에 대해 알아보자jenkins#2. 공부한 내용1. Jenkins- 배포, 테스트, 도커 빌드 등 CI/CD 환경을 구축하기 위한 간단한 방법을 제공한다.자바 Runtime에서 동작한다.빌드, 배포..
2024.05.09 -
99클럽 35일차 TIL: DevOps
#1. 오늘의 학습 키워드DevOps에 대해개인 프로젝트 때 AWS Ec2 서비스를 사용하여 서버를 배포한 적이 있다.또한 현재 회사에서는 쿠버네티스를 사용하고 있다.코드는 github action 을 통해 배포를 하고 있다develop 브랜치에 머지 될 때마다 자동으로 dev 서버에 배포되는 방식개발과 서비스 제공 프로세스를 관리해주는 모델DevOps 에 대해 알아보자#2. 공부한 내용1. DevOps- DevOps는 서비스를 빠른 속도로 제공할 수 있도록 도와주는 방식, 도구의 조합Development + Operation 의 약자.즉 개발과 운영을 결합하여 탄생한 개발 방법론개발자와 운영 담당자 사이의 협업, 통합 및 자동화를 강조하는 소프트웨어 개발 방법론개발팀과 운영팀이 DevOps 모델 하에서..
2024.05.08 -
99클럽 34일차 TIL: 개발 방법론 - Agile
#1. 오늘의 학습 키워드Agile에 대해개발 스타트업에서 일하다보면 자주 등장하는 용어들이 있다.스크럼, 스프린트, 목업, 프로토타입, 등등..그렇게 어려운 개념들은 아니기에 사용하면서 체화 되긴 하지만, 정보처리기사 시험을 준비하면서 다시 처음부터 배우게 되었다.그중에서 현재 사용중인 개발 방법론인 Agile 애자일에 대해서는 한 번 정리를 하고 넘어가는 것이 좋겠다.#2. 공부한 내용1. Agile- 일정한 주기로 빠르게 프로덕트를 출시하여 고객의 요구사항 및 환경에 맞게 보완 및 수정을 해나가는 소프트웨어 개발 방법론애자일 자체의 의미는 “민첩함, 기민함”의미에 따라 해당 방법론은 변화 및 요구에 빠르게 대응을 하는 것이 포인트일정한 주기를 반복하면서 개발 과정을 진행한다.여기서 주기는 보통 스프..
2024.05.07 -
99클럽 33일차 TIL: 클라이언트 사이드 캐시
#1. 오늘의 학습 키워드클라이언트 사이드 캐시 에 대해cache 의 종류와 redis 의 선정 및 CDN 의 개념의 대해 알아보았다.cache 종류 비교 및 선정https://second-brain.tistory.com/9redis 적용https://second-brain.tistory.com/10CDNhttps://second-brain.tistory.com/50이번 포스트에서는 다른 측면에서의 캐시인 클라이언트 사이드 캐시에 대해서 알아보자#2. 공부한 내용1. 클라이언트 사이드 캐싱- 브라우저 측에서 데이터 저장 (캐싱)웹 페이지를 접근할 때, 서버 데이터의 서브셋을 클라이언트 측 로컬 디스크나 메모리에 저장을 한다.추후 페이지가 로드될 때, 접근한 정보가 클라이언트 측에 있다면, 굳이 서버 측 ..
2024.05.06