본문 바로가기

개발 이야기/Etc13

[독서] 대규모 서비스를 지탱하는 기술 이번 포스팅에서는 "웹 개발자를 위한 대규모 서비스를 지탱하는 기술"을 읽은 후기를 작성하고자 합니다. 웹 개발자로 근 10년 근속했지만, 대규모 서비스 개발에 참여한 적 있냐고 물어본다면 자신있게 말할 수 있는 경험이 없습니다. 사실 그런 경험은 제가 선택하기 어려운 부분이기도 했습니다. 직접 경험이 아닌 책을 통한 간접 경험도 나름의 가치가 있을 거라고 생각해서 이 책을 읽게 되었습니다. 책에서 얻은 경험을 언젠가 써먹을 일이 있지도 않을까하여...😯 목차 1. 얻게 된 깨알 지식 이 책은 대규모 서비스에 필요한 깨알 지식이 포함되어 있습니다. 탐색 속도 측면에서 Memory는 Disk에 비해 10만~100만배 이상 빠르다. SSD는 물리적 회전의 HDD보다 훨씬 탐색이 빠르다. 부하에는 크게 CPU.. 2024. 4. 13.
[독서] 가상 면접 사례로 배우는 대규모 시스템 설계 1 이 책의 목차를 열었을때, 개발자라면 흥미로운 단어들이 많이 눈에 띌 것입니다. 웹크롤러, 분산시스템, 피드 시스템, 검색어 자동 완성, 유투브 설계 등 챕터 별로 다양한 종류의 시스템을 어떻게 설계하고 개발 할 것인가에 대한 내용이 포함되어 있습니다. 몇몇 기억에 남는 내용을 포스팅 해봅니다. 서버 확장 1장 사용자 수에 따른 규모 확장성에서는 실제 현업에서 많이 고민하게 되는 서버의 확장성에 대해서 이야기 하고 있습니다. 비관계형 데이터 저장소(NoSQL)을 고려해봄직 할 케이스를 기술 한 것이 기억에 남네요. 낮은 응답 지연(Latency) 비정형 데이터 데이터를 직렬화, 역직렬화 대규모 데이터 저장 위 같은 요구가 있다면 고려해봄직 하다고 합니다. 그리고 웹 계층의 무상태, 데이터 베이스의 수평.. 2024. 3. 1.
Intellij 단축키 검색 키워드 정리 개발 시에는 인텔리제이를 사용합니다. 하지만 회사에서는 Windows 10, 집에서는 Macbook을 쓰다보니 단축키가 항상 헷갈립니다. 그래서 자주 사용하는 단축키 커스터마이징을 위한 검색 키워드를 정리해봅니다. (본 문서의 단축키는 인텔리제이 제공 디폴트 단축키가 아닙니다!!!ㅎ) 자주 사용하는 단축키와 셋팅을 위한 검색 키워드 검색 키워드 설명 My setting Clone Caret Below 입력 커서 복제. (여러줄에 같은 입력시) control + command + ↓ Duplicate Line or Selection 라인 복사 후 추가 shift + command + ↓ Code.Move Line Down / Up 라인 아래/위 이동 command + ↓ / ↑ Code.Auto-inden.. 2021. 1. 12.
2020 Log 2020년이 마무리 되고, 2021 신축년이 밝았다. 대다수 사람들이 그러하듯 코로나라는 바이러스와 함께한 2020년은 그닥 좋지 못한 한 해였던것 같다. 코로나로 인해 2020년은 기존과 많이 다른 삶을 살았다. 감염예방을 위한 마스크의 일상화, 재택근무, 모임 제한... 등 코로나 예방 수칙 아래 통제된 생활을 해야만 했다. 또 몇년 전부터는 해마다 해외여행을 한번씩 다녔었는데 올해는 그러지 못했다. 그 대신 넷플릭스, 유튜브 등의 컨텐츠를 시청하며 2020년은 그 어느 해보다 더 빨리 지나간듯하다. 역시나 한 해를 마무리하는 2020 개발 회고록을 블로그를 통해 써보려고 한다. 2020 목표했던 일 토이프로젝트 2020년은 토이프로젝트를 통해 개발자로서 한층더 성장하려고 했다. React, Node.. 2021. 1. 1.
[독서]소프트웨어 장인 개발자 필독서라 불리는 "소프트웨어 장인"을 읽고 요약/정리 해봅니다. 중소기업 개발 프로세스와 애자일 첫 회사를 중소SI기업에서 시작했었다. 프로젝트를 수주하면, 고객이 원하는 장소로 파견을 가게 되었고, 전통적인 개발방법론인 Waterfall 방식으로 개발프로세스를 시작했다. 간단히 아래의 절차를 밟은 것 같은 기억이 있다. 요구 분석 : 기획자가 담당한다. 회사 다니면서 기획자랑은 일상적인 대화는 나눈적이 없다. 하지만 개발을 시작하게되면 가장 많이 소통하게 되는 직원이었다. 화면 설계 : 역시 기획자가 담당했었다. DB 설계 : 화면설계서를 기반으로 개발자가 수행한다. 퍼블리싱 작업 : 개발자가 DB 설계를 할 때, 퍼블리셔가 수행한다. 개발 : 화면설계서를 보면서 퍼블리싱 산출물에 데이터를 입히.. 2020. 3. 1.
2019 Log 2018 Log에 이어 올해도 회고록을 작성해본다. 2019년은 시간이 빠르게 흘러간 것 같은 느낌이든다. 시간이 빨리 흘러갔다는 것은 그만큼 변화가 없고, 새로운 경험도 없었다는 것의 반증이다... 뇌속에 새롭고 신선한 뭔가가 저장되지 않았다. 이토록 슬플수가...ㅜㅜ "회사출근 - 퇴근 - 가끔 집공부 - 잠 - 주말데이트 or 스벅 공부" 루틴이 반복된 것 같은데, 크게 기억에 남는 일이 없었던것 같다. 2020년에는 더 행복한 삶을 사는 개발자가 되기 위해 올 한해의 개발회고를 해보도록 하자. 토이 프로젝트(팻 프로젝트) 크게 3가지의 토이 프로젝트를 기획하고 개발했다.(고 쓰고 싶지만 개발중단됬다고 보는게 맞겠네유) 첫 토이 프로젝트로 NBA 선수검색 서비스를 만들어보고자 했다. 평소 NBA를 .. 2020. 1. 3.
VSCode 확장 추천!!! VSCode 에디터는 코드 편집기 입니다. 하지만 자바스크립트 개발자, 프론트 개발자라면 주개발툴로서도 역활을 해냅니다. (마이크로소프트에서 만들었고, 타입스크립트 인기가 높아지면서 더 그 위상이 높아지는듯합니다 ㅎㅎ) 아래는 VSCode의 추천 Extenstion 입니다. 01. ES7 React/Redux/GraphQL/React Native snippets 리액트 개발자라면 거의 필수입니다. 코드 편집기에 아래 키워드로 구조를 만들어버릴수 있는 snippets을 제공합니다. 예를들면, rce : class componet 생성 rafce : allow function component 생성 rfce : function component 생성 02. ESLint 거의 말이 필요없는 필수.. 문법을 확.. 2019. 11. 27.
OAuth2.0에 대해서 이것만은 알고 가자 OAuth2.0 이란 Open Authentication, Authorization의 약자로 인증/인가에 대한 표준프로토콜이다.흔히 웹브라우저를 통해서 쇼핑몰 사이트, 이벤트 사이트 등을 접속하여 어떤 작업을 하려고 하면 인증에 대한 요구에 직면하게 되고요즘 sns를 통해서 인증을 대체하기도 한다. 이미 기기에서 로그인을 한 상태라면 위의 그림에서 보이는 "xx로 로그인" 버튼 클릭만으로 인증을 받을 수 있다.저런걸 OAuth2.0라고 말하는건 아니다. 저건 단순히 특정 사이트에서 네이버, 페이스북, 구글 등의 Open API를 사용 한 것이고대부분의 Open API 제공 서비스는 OAuth2.0 형태로 인증서버와 리소스 서버를 따로 구성해서 제공할 것이다. 만약 네이버, 페이스북 등과 같이 api를 제.. 2019. 3. 4.
Elastic{ON} 서울 투어 2/22 Elasticon{ON} 서울투어(2/22) 행사에 참여했다.참여하게 된 계기는 회사 상사의 지목(?)이었고, 연구원 2명이서 그렇게 첫 IT컨퍼런스에 참석하게 되었다. 나는 이런 컨퍼런스 성격의 행사나 기술 세미나에 참가하는 것을 매 순간 학수고대 해왔을지도 모른다.이제 4년차 웹개발자로 어느정도 내가 가진 기술에 대한 자부심도 가진듯..는 아직 멀었지.저러한 신기술 관련 발표회나 다른 동료들이 공유하는 대세의 기술들은 접할 때 마다 부족함을 느낀다. 그러기에 다른 사람들이 경험해보고 실무에 적용해보는 것들은 수박 겉핡기식이라 할지라도 배우거나 학습하고 넘어가고 싶었다. 그리고 우연히 Elastic{ON} 행사를 참가 하게 되었다. Elastic{ON} 서울투어는 작년에도 진행 되었었으며, 무료로 참석.. 2019. 2. 22.
2018 Log 2018년 회고록 마지막 주말.2018년 마지막 주말을 보내고 있다.여러 개발자들이 회고록 쓰는것처럼 나도 처음 써볼려고한다.(글을 논리적으로 못써서 자주 써야할듯..ㅜ) 올해로 웹개발 경력 만 3년을 채우게 되었다. 2018년은 나름 뜻깊은 한해였다.나이 앞자리가 2에서 3으로 바뀌고...처음으로 블로그를 써보고...그 무엇보다.내가 하는 일에 대해서 '관심'을 가지게된 한해였다. 2018 목표.2018년에 일로만 봤을 때 3가지 목표를 잡았었다.이직을 위한 나의 가치 높이기토이프로젝트(웹페이지 제작)일주일 5시간 이상 학습 사실 위의 목표를 한마디로하면, "개인 시간을 개발 및 학습에 투자하자"였다. 결과적으로 위의 목표 3가지는 전부 이루지는 못했다. 여름즈음에 계획이 조금 바뀌었기 때문이다. 경력.. 2018. 12. 30.
[독서]애자일 & 스크럼 프로젝트 관리 저자 : 이재왕, 출판사 : 길벗 "애자일 & 스크럼 프로젝트 관리"를 읽고 최근 진행 중인 프로젝트에서 애자일 모델을 처음 사용해보기로 했다. 전통적인 폭포수, 프로토타입 모델 방식의 프로젝트 진행만 해오다가 새로운 방법론을 통한 프로젝트를 참여하게 되어 낯설었다. 하지만 이미 해외에서는 많은 글로벌 기업들이 프로젝트 진행 또는 유지보수성 프로젝트에서 애자일을 사용하고 있으며, 한국의 대기업들도 추세에 따라 전통적 폭포수 방식의 프로젝트 관리에서 애자일 방식으로 변화하는 중이다. 단, 급작스런 변화는 개발자, 관리자로 하여금 혼란을 줄 수 있기 때문에 바텀업 방식으로 점진적으로 수용하고 있다고한다. 그렇다면 이렇게 애자일이 각광 받는 이유는 무엇일까? 애자일에 앞서 SI프로젝트와 현재의 실태에 대해서 .. 2018. 10. 3.
Postman으로 웹앱 테스트 하기 Postman이라는 도구를 사용해 보았다. 웹요청을 맘데로 보낼수 있다. 화면 개발없이 데이터를 확인할 때 너무나 편리할것같다. 첨엔 chrome브라우저 스토어에서 확장프로그램으로 사용했었는데 지금 보니 네이티브 앱으로도 있었다.아래 url에서 OS에 맞는 프로그램 다운로드 가능하다.https://www.getpostman.com/apps 설치 후, 실행시켜 보면 로그인 하라고 뜨고, 계정생성후 접속하면 아래와 같은 화면이 뜬다. 좌측부분에 History도 관리해준다. (url 기억할필요 없다~ 굳) 담에 테스트 해보고 싶은 요청을 보내본다. 나는 excel파일을 업로드하는 기능을 구현했었는데 화면 만들기 귀찮아서 이걸로 해볼려고했다. 세션없어서 에러가 떳다. 개발중인 웹앱은 로그인해서 접근권한을 얻어야.. 2018. 6. 5.