반응형

내가 보려고 기록하는것 18

쿠버네티스 배포 전략 종류 (rolling update, recreate ...)

Kubernetes 배포를 사용하면 포드 및 ReplicaSet를 선언적으로 생성할 수 있다. 원하는 상태를 정의할 수 있으며 배포 컨트롤러는 관련 리소스의 현재 상태를 지속적으로 모니터링하고 원하는 상태에 맞게 포드를 배포한다. 배포 전략은 다양한 버전의 Kubernetes 애플리케이션을 생성, 업그레이드 또는 다운그레이드하는 방법을 정의한다. 기존 소프트웨어 환경에서 애플리케이션을 배포하거나 업그레이드하면 다운타임과 서비스 중단이 발한다. Kubernetes는 여러 애플리케이션 인스턴스에 대한 롤링 업데이트를 수행하고 가동 중지 시간을 피하거나 최소화할 수 있는 몇 가지 배포 전략을 제공하여 이를 방지할 수 있다. Kubernetes 배포 전략에 대해 알아보자. Rolling deployment Re..

github workflow 작성하기 (pull request CI)

github action으로 CI를 할 수 있다. push, pull request, 배포 할 때 주로 사용해 봤다. 이번에는 pull request를 생성할 때 validation 하는 workflow와 배포할 때 CI하는 workflow를 작성했다. 방법은 아래와 같다. 우선 root에 .github 폴더를 생성하고 그 아래 workflow 폴더를 생성한다. 생성한 폴더에 pullrequest.yml 파일을 생성한다. name: pull request on: # 만약 master에 push 될 때도 작동시키고 싶으면 아래 주석한것을 사용하면 된다. # push: # branches: # - master pull_request: branches: - '*' # 모든 브랜치 jobs: pull_reque..

chatGPT 쿼리 튜닝 꽤나 잘해준다.

Elastic search 쿼리에 튜닝이 필요했는데, ES 쿼리에 익숙하지 않아 맘만 먹었지 실행에 옮기기는 쉽지 않았다. 그래서!! chatGPT한테 물어봤다. 꽤나 친절한것 같다. 그래서 쿼리의 의도성과 해결하고 싶은 문제를 같이 알려줬다. (ChatGPT가 튜닝해준 쿼리) 개선된 쿼리에서 주목해야 할 사항은 다음과 같습니다: (쿼리 설명) 이러한 개선 사항을 적용하면 쿼리의 실행 속도가 향상될 수 있습니다. 그러나 이는 일반적인 가이드일 뿐이며, 실제 성능 개선은 데이터의 특성과 클러스터 구성에 따라 다를 수 있습니다. 성능 테스트와 모니터링을 통해 최적의 결과를 얻을 수 있습니다. 근데 나는 얘가 알려준 쿼리가 조금 맘에 들지 않았다. 내가 제거 하고 싶은 부분을 추가적으로 알려줬다. 나_ scr..

SSO, OAuth, SAML, OIDC

로그인 기능을 구현하기위해 찾아보다 잘 모르는 부분이 있어 정리하고자 한다. 우선 내가 하고자 했던 로그인 기능은 아래와 같다. 회원 가입 기능 없이 구글 계정이나 Okta 계정으로 로그인할 수 있는 기능을 구현하고자 했다. 이렇게 서드파티 로그인을 OAuth라고 하는것 까진 알았었다. 그런데 다른 문서들을 보면 SSO, SAML, OIDC 용어가 자주 보여 어떤것들인지 찾아봤다. SSO(Single Sign-On) SSO는 사용자가 한번의 로그인(하나의 자격 증)으로 여러 어플리케이션이나 서비스에 대한 로그인을 대체할 수 있는 사용자 인증 도구이다. 대표적인 예시로 구글 로그인을 통해 구글메일, 슬랙, Zoom 등을 사용하는 것을 들 수 있다. SSO의 유형은 아래와 같다. SAML (Security ..

VScode Auto fix eslint on save

settings.json 를 손봐주면 된다. nest js에서는 잘 작동을 했는데, next js에서는 자동으로 lint가 되지 않았다 ... "[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode", "editor.formatOnSave": true }, "[typescriptreact]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "eslint.format.enable": true, 기존에는 setting.json에 위의 것만 추가 되어 있었는데, nextjs에서는 먹통 ... 그래서 찾아본 결과 아래의 설정값도 추가해주면 된다. "editor.codeActionsOnSav..

어플에 광고 붙이기 (admob)

요즘 안드로이드 어플을 개발하고 있는데, 오늘은 어플에 광고 붙이는 것을 기록해보려 한다. 어플에 넣을 광고는 구글 애드몹(https://admob.google.com/intl/ko/home/)을 통해 넣으면 된다. 앱 추가 과정은 아래와 같다. 위의 과정을 거치면 앱추가는 완료가 된다. 나는 아직 앱이 스토어에 올라가지 않아 검토필요 상태로 되어 있는데, 이건 스토어 링크까지 연동 되면 상태가 변경될 것이다. 맨위에 광고 단위 추가 버튼을 통해 사용할 광고를 추가할 수 있다. 나는 전면, 보상형 전면 광고, 리워드 이 세가지를 사용해보려고 한다. 전면 광고는 앱 종료 직전에 보여 줄것이고 보상형 전면과 리워드는 앱 사용 중에 나올 수 있도록 할 예정이다. 우선 전면 광고 단위를 추가하는 것은 아래처럼 ..

[mysql] 타입 변환, convert string(varchar) to json

컬럼의 타입이 varchar 이지만 실제 데이터는 json일 경우, json 내의 데이터 기준으로 조회 또는 업데이트 하는 쿼리를 기록해보려고 한다. 예를 들어 아래와 같은 테이블이 있다고 가정을 해보자 id name price options 1 pencil 10 {"available":true,"color":[{"name":"red", "qty":100},{"name":"green","qty":10}]} 2 pen 12 {"available":fale,"color":[{"name":"black", "qty":100},{"name":"red","qty":10}]} 3 notepad 36 {"available":true,"color":[{"name":"red", "qty":100},{"name":"pink..

반응형