본문 바로가기

일상/TIL

TIL - 20241112 Airflow backfill 재처리Airflow에서 과거 날짜에 대한 DAG를 재실행하기 위해서는 backfill 명령어를 사용하면 된다.airflow dasg backfill -s [start-date] -e [end-date] -x -y [dag_id]각 옵션별 설명--continue-on-failures: 일부 task가 실패하더라도 backfill 작업을 계속 진행한다--delay-on-limit: max_active_runs 의 수치만큼의 DAG가 실행 중일 때 대기하는 시간초를 의미한다.--disable-retry: task가 실패했을 때 재시도를 하지 않고 실패 상태로 둔다-x: DAG 설정을 pickling해서 전달하는 것이 아니라 worker 자체에 있는 코드를 기준으로 실행한다.-n:..
TIL - 20241110 GraalVM 도입으로 JVM 백엔드 애플리케이션의 구동 초기 성능 문제 해결하기기존 JVM에서의 문제점JVM의 경우 JIT 컴파일로 동작하기 때문에 구동 직후의 성능은 매우 나쁘고 시간이 지날수록 프로파일 정보를 활용해서 점점 빨라짐. 그래서 JVM 앱에서는 웜업과정이 있고 Blue/Green 배포 시에 점차적으로 트래픽을 차차 늘려가야지 사용자 입장에서 불편함을 느끼지 않게 됨.다만 이렇게 되는 경우 수동으로 비율을 늘려가야 하는 문제와 배포시에 시간이 매우 오래 걸린다는 문제가 있었음.또한 긴급 상황에서 인스턴스를 급하게 증설해야 하는데, 이런 경우 노드를 많이 투입하는 등의 방식으로 해결할 수도 있긴 하지만 이렇게 되면 웜업이 끝난 후에는 인스턴스의 자원이 놀게되는 이슈가 있음.GraalVM의 등..
TIL - 20241109 카카오 빌링 MySQL DB 샤딩 적용 세션카카오 빌링 시스템의 소개카카오 빌링 시스템은 일종의 마트의 계산대와 같은 역할을 함. 사용자가 선물하기, 쇼핑하기 등에서 결제를 시도하면 해당 서비스에서 빌링 시스템을 호출하고 빌링 시스템은 외부 PG사를 통해서 결제를 수행하며 해당 결제에 대한 내용을 ERP 시스템으로 전송하는 역할을 하고 있음.카카오 빌링의 특성외부 시스템과 연동되는 부분이 많음카드 정보와 같은 민감한 정보가 많음개인정보, 회계, 보안, 망분리 등의 규제 및 감사가 많음강성 CS가 많으며 해당 시스템 장애시 피해가 큼문제점크게 용량 문제와 퍼포먼스/안정성 문제가 있었음.결제 건수가 지속적으로 증가하면서 해당 데이터가 빌링 DB에 적재되는데 쌓이는 속도가 데이터를 삭제하는 속도보다 훨씬 빨라..
TIL - 20241108 다른 namespace의 service를 Ingress에서 연결하는 방법ExternalName을 활용하면 사용할 수 있음kind: ServiceapiVersion: v1metadata: namespace: ingress-nginx name: svc-1spec: type: ExternalName externalName: ..svc.cluster.localIngress가 svc-1 을 바라보도록 설정하면 됨
TIL - 20241107 keycloakRedhat에서 개발한 오픈소스 로그인 및 액세스 관리 솔루션.SSO를 지원하기 때문에 개별 앱에서 로그인 기능 및 회원가입 등의 기능을 직접 구현할 필요가 없음또한 여러 로그인과 관련된 프로토콜을 지원함 (OpenID, OAuth 2.0, SAML)  관련 링크: https://www.keycloak.org/