IT기술/CS(ComputerScience)37 웹후크 란 무엇인가? 자격증을 공부하다가 웹후크 라는 단어를 접하게 되었다. 이게 무엇인가? 웹 후크는 한 컴퓨터 시스템이 다른 컴퓨터 시스템에 이벤트가 발생했음을 알리는 데 일반적으로 사용되는 것을 말한다. 웹 후크는 HTTP, JSON 같은 표준 웹 기술을 사용하며, API로도 가능하다. Tableau같은 경우는 후크를 사용하여 이벤트 알림을 구독할 수 있으며. 그러면 관련 이벤트가 트리거될 때 HTTP POST 알림이 선택한 URL에 전송된다. GIT 이나 여러 다른 사이트에서도 웹후크 기능을 제공하니 이런게 있다는 것 정도만 알아두자. https://www.tableau.com/ko-kr/developer/tools/webhook-api https://docs.github.com/ko/webhooks/using-web.. 2023. 12. 12. NAT Gateway 개요 NAT Gateway는 클라우드 플랫폼 내부에 있는 여러 대의 비공인 IP를 가진 고객의 서버가 공인 IP 주소를 가진 외부 서버와 통신할 수 있도록 연결하는 NAT 서비스입니다. 비공인 IP 주소를 가진 다수의 서버가 하나의 NAT Gateway를 공유하거나, 여러 개의 NAT Gateway를 만들고 서버 그룹별로 각각의 NAT Gateway를 사용할 수도 있습니다. 고객이 사전에 등록한 외부의 공인 IP 주소를 가진 호스트에만 접속할 수 있도록 설정해 보안을 강화할 수 있습니다. 또한 Auto Scaling 서비스와 연결하여 새로 증설되는 서버가 자동으로 NAT Gateway를 이용하도록 설정할 수 있습니다. AWS 에선 NAT Gateway를 통해 전송하고 요청하는 것은 가능하나, NAT Gatew.. 2023. 11. 24. RTO와 RPO 뭐냐 이게? RPO(Recovery Point Objective , 복구 시점 목표) RTO(Recovery Time Objective , 복구 시간 목표) 시스템을 구축하거나 업그레이드 할 때 장애나 재난이 발생했거나, 시스템에 치명적인 이상이 생겼을 경우 대응을 위해 복구를 진행할 것이다. 이때 사용되는 용어인데, RPO(복구시점목표) 즉 어느 시점으로 복구할 것인가? 와 PTO(복구시간목표) 언제까지 복구가 되는가? 를 줄여서 이야기 하는 것이다. 이는 고가용성을 갖추기 위해 신경써야 하는 부분으로 이런 용어가 있다는 정도만 알면 된다. 2023. 11. 24. Stateful | Stateless 서비스 Stateful | Stateless 서비스의 개념을 알아보자. 1. Stateful 서비스 Client의 정보나 세션 정보를 server에 저장하는 서비스를 통틀어 Stateful 서비스 라고 한다. TCP 기반 통신이 대표적인 예시 2. Stateless 서비스 Client의 정보와 Server의 정보가 완전히 독립적인 서비스를 통틀어 Stateless 서비스 라고 한다. Server는 단순히 요청이 오면 응답을 보내는 역할만 수행하며, client가 능동적으로 요청해야 한다. UDP와 HTTP 같은게 대표적인 예시 3. Stateless 서비스가 주목받는 이유 Statelss 구조가 Stateful 구조 대비 갖는 몇가지 장점들로 인해 최근의 웹서비스 구조는 모두 Stateless 구조 기반을 따르.. 2023. 11. 24. 애자일 개발 프로세스 애자일 소프트웨어 개발(Agile software development) 혹은 애자일 개발 프로세스 소프트웨어 엔지니어링에 대한 개념적인 얼개로, 프로젝트의 생명주기동안 반복적인 개발을 촉진한다. 최근에는 애자일 게임 보급 등의 여파로 소프트웨어 엔지니어링 뿐 아니라 다양한 전문 분야에서 실용주의적 사고를 가진 사람들이 애자일 방법론을 적용하려는 시도를 하고 있다. 종류 애자일 개발 프로세스로 불리는 개발 방법론에는 다음과 같은 것들이 있다. 익스트림 프로그래밍(Extreme Programming, XP) - 애자일 개발 프로세스의 대표자로 애자일 개발 프로세스의 보급에 큰 역할을 하였다. 이 방법은 고객과 함께 2주 정도의 반복개발을 하고, 테스트우선 개발(TDD)을 특징으로 하는 명시적인 기술과 방법.. 2023. 8. 10. 소프트웨어 공학의 모든 것 - 유지보수 출처 : https://mini-noriter.tistory.com/31 포인트1. 유지보수 작업과 개발 작업의 차이는 무엇인가? 포인트2. 유지보수 작업 과정은 무엇인가? 포인트3. 형상관리 작업이란 무엇이며 그 절차와 방법은 무엇인가? 포인트4. 역공학과 리엔지니어링이란 무엇이며 어떻게 하는가? 포인트5. 유지보수 작업 방법과 지원 도구에는 어떤 것이 있는가? 유지보수 - 개발 후에 이루어지는 소프트웨어의 변경 작업 유지보수 단계는 소프트웨어가 가장 유용하게 활용되는 기간 소프트웨어는 환경과 비즈니스 요구에 따라 진화한다 11-1. 유지보수의 소개 - 레거시 시스템(Legacy System) 수십 년 전에 구축되었지만 지금까지 사용되고 있는 소프트웨어 시스템 - 레거시 시스템을 대체하지(=소멸하지) .. 2023. 8. 7. [CS] OOM의 원인과 아주 간단하게 OOM 발생 시키기 outofmemory가 나는 이유 설정된 메모리 대비 요청되는 메모리가 많기 때문에 나타나는 JVM에서 발생하는 에러 설정의 오류나 사용량 초과로 인해 jdk 5 같은 경우는 jdk hotspot 버그로 인해 oom이 났던 경우도 있었음 oom 예시 Application의 oom(순간적) 과도한 데이터 조회(100만건 200만건씩 조회해서 메모리 들고 있는 경우, 업로드 파일을 후처리 하기로 해서 메모리에 들고 있는 경우) 잘못된 데이터 조작(string) 장시간에 걸쳐서 서서히 메모리가 장식되는 경우(memory leak) Cache(어떤 데이터를 여러 쓰레드가 공유해서 사용하는 경우) leak Pool(배타적으로 사용할 때) leak (oom 가기 이전에 풀 부족으로 2차 장애가 발생하는 경우도 많음.. 2023. 8. 3. 개발에서 빌드도구(Build tool) maven, gradle 살펴보기 빌드도구 살펴보기 빌드도구를 접하기 전 솔로로 여러 개발을 해오던 나는 이런 개념을 접할 방법이 없어 모르던 내용이었다. 개발 툴을 세팅하는 방법이나 빌드를 편하게 하는 방법들은 속되게 말하면 돈버는 기술과 노하우다. 넷에서 쉽게 찾을 수 없으며 간혹 글이 있더라도 반복 숙달로 연습되지 않으면 이해하기 힘들다. 이런 개념을 모르고 일했던 내가 신기하기만 하고 미쳤나 싶기도 하다. 홈페이지 하나를 메모장만 가지고 웹 디자인까지 해가며 백앤드 세팅까지 다 끝내고 오류 다잡아낸 나다.... 요즘은 개발툴, 빌드툴로 다한다매? 세상 존나편하네 사수없이 초보시절을 지내다보니 이런 오차가 있는 것 같다만, 스스로 알아낼 수 밖에 없는 거 같다. 새로운 프로젝트를 시작하는 단계에서 어떤 프로그래밍 언어를 사용할까? .. 2023. 4. 18. 온디맨드(On-Demand) 서비스 배달의 민족, 우버, 쿠팡 배달, 카카오 택시 같은 온디맨드 서비스가 종종 보입니다. 여기서 온디맨드 서비스란 무엇을 이야기 하는 거고 대화의 화제가 된 것일까요? 온라인에서 결제하고 오프라인에서 이용하는 O2O(Onlie to Offline)는 쉽게 이해되는데 온디맨드(On-Demand)는 뭘까요? 간단히 이야기하자면 온디맨드 서비스는 주문 서비스 입니다. 내가 무언가 필요한데 대가를 지불하는 것과 별개로 주체적으로 행위를 하느냐 마느냐의 차이로 보입니다. 편하게 이야기하자면 귀찮거나 게으르거나 뭔가 할 수 없는 상황에서 주체적인 행동 없이 결과가 나를 찾아오게 만드는 것이 목표입니다. 참고로 돈 쓰는게 주체적인 행위라고 할 수는 없는게, 행동 대신 돈을 지불하는 남의 행동을 사는 부분이기 때문입니다... 2023. 4. 17. yaml 문법 yaml을 사용하려면 yaml만의 문법을 이해할 필요가 있습니다. 기본문법 - 들여쓰기 (indent) - 데이터 정의 (map) - 배열 정의 (array) - 주석 (comment) - 참/거짓 - 숫자표현 - 줄바꿈 (newline) 주의사항 - 띄어쓰기 - 문자열 따옴표 - 들여쓰기 (indent) 들여쓰기는 기본적으로 2칸 또는 4칸을 지원합니다. 1 2 3 4 5 6 person: name: Chungsub Kim job: Developer skills: - docker - kubernetes 1 2 3 4 5 6 person: name: Chungsub Kim job: Developer skills: - docker - kubernetes - 데이터 정의 (map) 데이터는 [key]: [v.. 2023. 4. 17. yaml 이건 무슨형식? YAML은 XML, C, 파이썬, 펄, RFC2822에서 정의된 e-mail 양식에서 개념을 얻어 만들어진 '사람이 쉽게 읽을 수 있는' 데이터 직렬화 양식이다. 2001년에 클라크 에반스가 고안했고, Ingy dot Net 및 Oren Ben-Kiki와 함께 디자인했다. YAML이라는 이름은 "YAML은 마크업 언어가 아니다 (YAML Ain't Markup Language)” 라는 재귀적인 이름에서 유래되었다. 원래 YAML의 뜻은 “또 다른 마크업 언어 (Yet Another Markup Language)”였으나, YAML의 핵심은 문서 마크업이 아닌 데이터 중심에 있다는 것을 보여주기 위해 이름을 바꾸었다. 오늘날 XML과 JSON이 데이터 직렬화에 주로 쓰이기 시작하면서, 많은 사람들이 YAML.. 2023. 4. 17. [DNS] 퓨니코드(Punycode) 란? - 한글 도메인 최근, 코로나19 사태로 인해 긴급재난지원금을 국가에서 지급했었습니다. 그런데, 긴급재난지원금을 확인하는 사이트가 www.naver.com 과 달리 인터넷 주소에 한글이 들어간 것을 확인할 수 있습니다. 이와 더불어, 카카오톡에 공유할 경우 아래와 같이 xn-- 으로 시작하는 인터넷 주소가 보입니다. 링크 썸네일에 표시되는 xn-- 도메인명 이는 퓨니코드(Punycode) 라고 합니다. 퓨니코드(Punycode)란? 한글과 한자는 유니코드를 사용하는데, 이를 ascii 로 변환하는 것을 말합니다. 이렇게 변환된 주소를 바탕으로 사이트에 접속하게 됩니다. (예시, www.긴급재난지원금.kr -> www.xn--jj0bb2kr6h965bxcbp8g.kr) 참고로, 도메인명 (예를 들어, www.naver.c.. 2023. 3. 27. 이전 1 2 3 4 다음