목록[Infra & Server] (24)
쿼카러버의 기술 블로그
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/wujaP/btryE17ndO5/lznKeBIhx8ggJ2fUbKhxnk/img.png)
필자는 현재 API서버를 열심히 개발 하고 있다. 개발한 서비스가 트래픽을 많이 받다보니, 트래픽을 적절히 제한하지 않았을 때 장애가 발생했고, 그에 따라 API의 Rate Limit을 구현해야 했다. 공부하다보니 흥미가 생겨 나중에 내가 다시 챙겨보기 위해 글을 정리하려고 한다. Rate Limit시리즈의 목차는 다음과 같다. [Rate Limit - step 1] Rate Limit이란? (개념, Throttling, 분산환경에서의 구현) [Rate Limit - step 2] Leaky Bucket 알고리즘 구현 (rate limiting) (p.s. memory estimation 하는 법) [Rate Limit - step 3] Token Bucket 알고리즘 구현 (rate limiting) ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bHdvYm/btryJX3JZtL/HJj4twrecQ7WkPVSbpKJLK/img.png)
필자는 현재 API서버를 열심히 개발 하고 있다. 개발한 서비스가 트래픽을 많이 받다보니, 트래픽을 적절히 제한하지 않았을 때 장애가 발생했고, 그에 따라 API의 Rate Limit을 구현해야 했다. 공부하다보니 흥미가 생겨 나중에 내가 다시 챙겨보기 위해 글을 정리하려고 한다. Rate Limit시리즈의 목차는 다음과 같다. [Rate Limit - step 1] Rate Limit이란? (개념, Throttling, 분산환경에서의 구현) [Rate Limit - step 2] Leaky Bucket 알고리즘 구현 (rate limiting) (p.s. memory estimation 하는 법) minimum time unit is seconds(s) self.rate = rate # how many..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/d96QeP/btryHGhU2d2/aEIjNlUkdN5NUziRAjA5bK/img.png)
필자는 현재 API서버를 열심히 개발 하고 있다. 개발한 서비스가 트래픽을 많이 받다보니, 트래픽을 적절히 제한하지 않았을 때 장애가 발생했고, 그에 따라 API의 Rate Limit을 구현해야 했다. 공부하다보니 흥미가 생겨 나중에 내가 다시 챙겨보기 위해 글을 정리하려고 한다. Rate Limit시리즈의 목차는 다음과 같다. [Rate Limit - step 1] Rate Limit이란? (개념, Throttling, 분산환경에서의 구현)
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bruxHF/btrrhTuhUCN/cJdROSVkzBiUHGTm8cKv1k/img.png)
앞 시리즈에서는 다음의 내용을 다루었다. 1) Github Action의 Core 개념 https://etloveguitar.tistory.com/74 2) 내 레포에 Github Action에 간단한 CI 적용해보기 https://etloveguitar.tistory.com/75 그러면 이번 시리즈에서는 남들에게 노출되면 안되는 정보를 Secret, Environment(시크릿, 환경변수)에 담아 Github Action에 적용하는 법을 알아보자 Secret등록 레포의 Settings에 들어가보면 아래처럼 Secret을 설정할 수 있음 여기서 내가 원하는 Key이름을 정해주고 Value에 원하는 값을 담아주면 Github에서 암호화해서 정보를 보관하고 있다가 Github액션에서 해당 키로 Secret을..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/yTW8a/btrrcH9tbdY/puGiiEltbJKJd97ZSQ7WKk/img.png)
앞 글에서는 github action의 core 개념에 대해서 알아보았다. Github액션을 최대한 쉽게 이해시켜주기 위해 간단히 정리했으니, 바로 실습에 들어가기전에 아래 글에서 Core개념을 간단하게나마 익히는 것을 추천한다. https://etloveguitar.tistory.com/74 [Github Action] Github Action 시리즈 1탄 : Core 개념 (Workflow, Event, Job, steps, runner, step, action 개념 쉽게 정 앞으로 간단하게 Github Action을 사용해서 CI/CD를 구현해보려고 한다. 시작하기에 앞서 Github Action의 Core개념을 익혀보고 다음 시리즈에서는 실제로 Github Action을 실행시켜보도록 하겠다. C..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lO6vy/btrrjCkYpFk/mHal9JTXBoqcKW0fkUjAgk/img.png)
앞으로 간단하게 Github Action을 사용해서 CI/CD를 구현해보려고 한다. 시작하기에 앞서 Github Action의 Core개념을 익혀보고 다음 시리즈에서는 실제로 Github Action을 실행시켜보도록 하겠다. Core Workflow 최상위 개념 여러 개의 Job으로 구성되고, Event에 의해 트리거될 수 있는 자동화된 프로세스 Workflow파일은 YAML으로 작성되고, Github Repository의 .github/worflows폴더 아래에 저장된다. Event Workflow를 Trigger하는 특정 활동이나 규칙을 의미한다. 특정 브랜치로 push 특정 브랜치로 Pull Request 특정 시간대에 반복 (Cron) Release Webhook이나 API를 통한 실행 Job 하..
보호되어 있는 글입니다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/AO1EA/btq9JOx0g4W/yx3pVHYVPPDjhoRq5F7bl1/img.png)
타겟 : 사무실 컴퓨터에 내 정보를 완벽하게 삭제하고 싶은경우 내 컴퓨터를 정말 깨끗하게 초기화 하고 싶은 경우 내 개인 정보가 유출되는것을 막고 싶은 경우 Cipher로 영구삭제된 부분만 삭제하고 싶은 경우에는 이 포스팅만 보면 된다. 만약 하드 드라이브 & USB를 완벽하게 복구 불가능하게 만들고 싶은 유저는 아래 링크부터 (1-5)단계를 모두 밟으면 된다. https://etloveguitar.tistory.com/22 집에서 하드 드라이브 & USB 복구 불가능하게 만들기 (포렌식 불가) 4콤보 (1/5) 타겟 : 사무실 컴퓨터에 내 정보를 완벽하게 삭제하고 싶은경우 내 컴퓨터를 정말 깨끗하게 초기화 하고 싶은 경우 내 개인 정보가 유출되는것을 막고 싶은 경우 영구삭제 4콤보 1) Bitlocke..