IT 시사 및 CS 지식
[AWS]AWS란
대표적인 클라우드 서비스, Amazon Web Services 200개 이상의 서비스 컴퓨터(서버)나 데이터베이스와 같은 기능을 인터넷을 통해 이용할 수 있게 해주는 서비스를 클라우드 서비스라고 함 컴퓨팅, 데이터베이스, 스토리지, 모바일, IoT, 기계 학습 등의 다양한 서비스 점유율이 높은 AWS 누구나 사용할 수 있는 AWS 같은 클라우드를 개방형 클라우드(Public Cloud)라 함 전세계 클라우드 시장에서 점유율이 제일 높음 AWS 말고 GCP, Azure 등이 있음.대표적인 클라우드 서비스, Amazon Web Services
Jira - Jira란?
들어가며 지금의 회사에 입사하기 전에도 Jira(지라)라는 툴은 사용해봤음 뭐 어따 쓰는건지도 모르고 그냥 뭐 실제로 회사에 입사를 하게되면 협업할 때에 지라같은 툴을 쓴다~ 라고 하니까 그냥 썼던 것 같음 지금 생각해보면 그때는 그냥 지라를 체크리스트나 To-do 리스트의 용도로만 썼었던 것 같다. 음,, 알림장 정도? ㅋㅋㅋㅋㅋㅋㅋ 다른 사람들과 프로젝트를 할 때에도 그냥 대충 오늘의 할 일을 적고 대충 올리고 대충 티켓을 완료에다가 갖다 놓고 그런,,,, 진짜 말도 안되는 짓을 했음 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 지금 생각해보니까 웃기네 모두가 별로 중요성을 느끼지 못했고, 그냥 노션에 기록하는 거면 다 된 것 마냥 했다. 하지만 입사하고 지라와 같은 협업 툴, 프로젝트 관리, 이슈 트래킹 툴이 얼마나 중요..
Spring Batch - (4)배치 작업 개발
배치 작업 개발 스프링 배치를 사용하여 배치 작업을 개발하기 위해서는 Job 설정과 구성, Step 정의와 처리 로직 구현, 그리고 Reader, Processor, Writer의 역할과 사용 방법을 이해해야 한다!! 1. Job 설정과 구성 Job은 스프링 배치의 최상위 개념으로, 배치 작업의 실행 단위. Job은 JobBuilderFactory를 사용하여 생성하고, JobBuilder를 통해 Job의 속성을 설정할 수 있음. JobBuilder를 사용하여 Job의 이름, 실행 시점, 파라미터 등을 설정하면 됨! 2. Step 정의와 처리 로직 구현 Step은 Job을 구성하는 작업 단위. 각 Step은 Reader, Processor, Writer 등의 구성 요소를 포함하여 작업의 세부 처리를 정의한..
Spring Batch - (3)스프링 배치 아키텍처
Spring Batch Architecture 스프링 배치는 Job, Step, Tasklet이라는 개념을 기반으로 한 아키텍처를 제공한다. 이 아키텍처를 이해하고 활용함으로써 배치 작업을 효율적으로 처리할 수 있다! 1. Job, Step, Tasklet 개념 - Job: 스프링 배치의 최상위 개념으로, 하나 이상의 Step으로 구성된다. Job은 배치 작업의 실행 단위를 나타냄. 개발자는 Job을 정의하고 구성하여 작업의 흐름을 제어할 수 있다. - Step: Job을 구성하는 작업 단위. 각 Step은 특정한 작업을 수행하는데 필요한 Reader, Processor, Writer 등의 구성 요소를 포함할 수 있음. Step은 순차적으로 실행되며, 필요에 따라 병렬로 실행될 수도 있다. - Taskl..
Spring Batch - (2)Spring Batch의 필요성과 장점
그냥 Spring이나 java를 사용하면 대용량 데이터 처리를 못해? chunk의 개념을 그냥 java로 구현해서 사용하면 되는거아니야? 왜 굳이 Spring Batch를 써야돼? 이 글을 보는 사람들은 다들 경험해봤듯이, Spring이나 Java를 사용하여 데이터 처리를 할 수는 있다. 그리고 대용량 데이터 처리라고 해봐야 그냥 데이터 처리를 많이 하면 되는거 아닌가? 또, Spring Batch하면 빼놓을 수 없는 "Chunk" 개념을 직접 Java로 구현하여 사용할 수도 있다. 그렇다면 왜 굳이 Spring Batch를 사용해야 할까??? Spring Batch를 사용하는 이유 1. 표준화된 아키텍처와 모범 사례 Spring Batch는 대규모 배치 처리에 필요한 아키텍처와 모범 사례를 제공함. 이..
Spring Batch - (1)스프링 배치란?
최근에 회사에서 난생 처음으로 배치 개발을 해보게 되어서 공부하게 된 내용 + 공부할 내용 + @를 쓸 예정이다 ㅎㅎㅎ 스프링 배치라는 것이 있다는 것은 알고 있었는데(그냥 대용량 데이터 처리를 할 때 쓴다는 것만 알고 있었음) 내가 직접 해보게 될 줄은 몰랐당 해보라고 했을 때는 좀 무서웠지만 막상 해보니 재미도 있고 원래 하던 개발이랑은 좀 색다른 맛이 있어서 아주 좋은 경험이였음! 뭔가 촤라라락 척척척 촤촤촥 되는 느낌? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 해본 사람이라면 알 수도 모를 수도 있는 말이지 않을까 싶네여 Spring Batch란? 스프링 배치(Spring Batch)는 대용량의 데이터를 처리하고, 반복적으로 수행되는 일괄 처리 작업을 지원하는 오픈 소스 프레임워크임. 스프링 배치는 일괄 처리 작..
SVN - (4)개발을 혼자서 할 수 없는 이유
물론 개발은 혼자서 할 수 있다. 하지만 어렵다. 1인이 서비스를 만들 수 있다. 하지만 그 서비스는 본인만 사용하는 서비스인가? 아니잖아 결국 서비스가 잘 되고 덩치가 커지면 많은 사람들이 필요해진다. 내가 생각하는 개발을 혼자서 할 수 없는 이유는 다음과 같다. 개발을 혼자서 할 수 없는 이유 1. 복잡성과 다양성 현대 소프트웨어 개발은 매우 복잡하고 다양한 기술과 도구들이 사용된다. 배포만 봐도 요즘은 기본적으로 무중단 배포를 선호한다. 그렇다면 무중단 배포를 위한 로드밸런서 뭐 Nginx. 가상화, 컨테이너 기술에 Docker랑 Kubernetes. CI/CD를 위한 Jenkins나 GitHub Action. 그리고 모니터링을 위한 도구(이건 안써봐서 뭐가 있는지 모르겠음요). 당장 생각나는 것만..
SVN - (3)SVN 사용법
SVN은 다른 VCS(버전 관리 시스템)처럼 GUI와 CLI 모두로 사용이 가능함. 어차피 GUI로 쓰나 CLI로 쓰나 겹치는, 알아야 하는 사용법이 있음. 둘 다 간단하게 알아보고, 중요한 사용법들을 알아보는 방향으로 갈게여 GUI로 사용하는 방법 SVN의 GUI 툴은 여러가지가 있다고 하지만, 지금 간단하게 알아볼 툴은 TortoiseSVN임. 입사 후 막 나는 이클립스에서 SVN을 사용하고 있었는데 이걸 사용하는 사람도 있더라구? 근데 첨에는 그냥 window XP 시절 그냥 파일 탐색기 같이 생겨서 그게 SVN GUI 툴인지 몰랐음 ㅋㅋㅋㅋㅋ 첫인상이 좀 구려보여서 아직 사용은 안해봤음 ㅎㅎ 그리고 내가 알기론 Tortoise가 육지거북이란 뜻인가 그럴거임. 그래서 TortoiseSVN를 보면 귀..