한강자리

21개 기록

기록

  1. 한강자리 시스템 개요 한강자리 시스템 개요. 다루는 범위: 한 줄로 본 전체 구조, 먼저 읽히는 앱과 위젯, 미리 정리하는 외부 데이터. 실제 구현과 운영 기록을 기준으로 설명한다.
  2. SwiftUI 앱과 WidgetKit의 공유 상태 SwiftUI 앱과 WidgetKit의 공유 상태. 다루는 범위: 앱과 위젯이 공유하는 코드, 한곳에서 조율하는 화면 상태, 캐시와 API 사이의 저장소. 실제 구현과 운영 기록을 기준으로 설명한다.
  3. FastAPI route를 얇게 둔 API 설계 FastAPI route를 얇게 둔 API 설계. 다루는 범위: 조립만 맡는 HTTP 라우트, 앱이 호출하는 API 묶음, 주차 화면을 만들 때 서버가 읽는 데이터. 실제 구현과 운영 기록을 기준으로 설명한다.
  4. 기록은 Postgres에, 재생성 가능한 값은 Redis에 Postgres와 Redis를 나눈 기준. 다루는 범위: Postgres와 Redis가 맡은 데이터, 앱 기능별로 보는 데이터 묶음, Postgres에 남기는 알림 기록. 실제 구현과 운영 기록을 기준으로 설명한다.
  5. API 밖에서 도는 worker와 CronJob API 밖에서 도는 worker와 CronJob. 다루는 범위: API 밖에서 미리 하는 일, 실행 간격과 작업의 분리, 중복 실행 방지. 실제 구현과 운영 기록을 기준으로 설명한다.
  6. 데이터 없음과 수집 실패를 구분하는 파서 데이터 없음과 수집 실패를 구분하는 파서. 다루는 범위: 화면에 올릴 출처의 기준, 코드 밖에서 읽는 수집 주기, 원문을 화면용 데이터로 바꾸는 단계. 실제 구현과 운영 기록을 기준으로 설명한다.
  7. 주차 예측에 confidence와 최신성을 함께 둔 이유 현재값과 예측값의 경계. 다루는 범위: 요청 전에 만드는 예측, 주차 예측: 현재값과 미래값의 분리, 공원 혼잡 예측: row 부재와 한가함의 구분. 실제 구현과 운영 기록을 기준으로 설명한다.
  8. APNs 전송 전에 알림 후보를 거르는 방법 푸시 알림의 발송 전 필터. 다루는 범위: 푸시를 보내기 전에 남길 기록, 후보에서 발송까지 가는 길, 먼저 만든 미발송 규칙. 실제 구현과 운영 기록을 기준으로 설명한다.
  9. 기록으로 남기는 배포 기록으로 남기는 배포. 다루는 범위: 반복 가능한 배포 경로, 배포 전 자동 검사, 별도 저장소에 남긴 서버 설정값. 실제 구현과 운영 기록을 기준으로 설명한다.
  10. 오래된 데이터가 보일 때 확인할 순서 오래된 데이터가 보일 때 확인할 순서. 다루는 범위: 사용자 요청의 API 도달 확인, 구성 목록보다 필요한 확인 순서, 원인 후보를 줄이는 대시보드. 실제 구현과 운영 기록을 기준으로 설명한다.
  11. WidgetKit을 위한 snapshot 저장 구조 WidgetKit을 위한 snapshot 저장 구조. 다루는 범위: 위젯을 위한 별도 표시값, snapshot에 남긴 표시값, 저장값을 먼저 읽는 위젯. 실제 구현과 운영 기록을 기준으로 설명한다.
  12. 첫 화면 값을 한 응답으로 묶기: home-summary 첫 화면 값을 한 응답으로 묶기: home-summary. 다루는 범위: 한 번에 받는 첫 화면 값, 네 묶음으로 나눈 응답, 기존 앱의 새 응답 호환성. 실제 구현과 운영 기록을 기준으로 설명한다.
  13. source catalog와 ingestion run source catalog와 ingestion run. 다루는 범위: 한곳에 모은 수집 대상과 주기, 수집 종료 상태의 기록, "데이터 없음"과 "수집 실패"의 구분. 실제 구현과 운영 기록을 기준으로 설명한다.
  14. 오래된 응답을 최신처럼 보이지 않게 하기: Redis cache 오래된 응답을 최신처럼 보이지 않게 하기: Redis cache. 다루는 범위: 다시 만들 수 있는 Redis 값, 주차 cache 장애의 DB fallback, 빠른 cache와 마지막 성공 cache. 실제 구현과 운영 기록을 기준으로 설명한다.
  15. 주차 예측의 confidence와 backtest 주차 예측의 confidence와 backtest. 다루는 범위: 예측을 구성하는 네 가지 근거, 하나의 숫자를 대신한 범위와 위험도, 근거 강도에 따른 confidence. 실제 구현과 운영 기록을 기준으로 설명한다.
  16. 푸시 outbox와 suppression audit 푸시 outbox와 suppression audit. 다루는 범위: 원천 변화에서 알림 후보까지, 우선 적용하는 미발송 규칙, 사용자 설정과 영향도. 실제 구현과 운영 기록을 기준으로 설명한다.
  17. 공공데이터 번역 cache와 원문 보존 공공데이터 번역 cache와 원문 보존. 다루는 범위: 두 종류의 번역, 검수된 번역을 먼저 찾는 순서, 빠진 언어만 채우는 번역 캐시. 실제 구현과 운영 기록을 기준으로 설명한다.
  18. 위치 좌표를 서버로 보내지 않는 telemetry 위치 좌표를 서버로 보내지 않는 telemetry. 다루는 범위: 위치는 단말 안에서만, 익명 이벤트, 앱 사용을 막지 않는 전송. 실제 구현과 운영 기록을 기준으로 설명한다.
  19. 미니PC 서버의 장애 확인 순서와 복구 기준 실제 서비스가 된 미니PC 서버. 다루는 범위: "돌아간다"를 넘어선 운영 기준, 사용자 요청과 관리 경로의 분리, Git에 남긴 서버 상태. 실제 구현과 운영 기록을 기준으로 설명한다.
  20. 작은 iPhone을 위한 iOS 시각 QA 작은 iPhone을 위한 iOS 시각 QA. 다루는 범위: 큰 화면에 치우친 테스트, 작은 화면에서 달라지는 버그, 릴리스 게이트가 된 시각 QA. 실제 구현과 운영 기록을 기준으로 설명한다.
  21. App Attest로 검증한 것과 남은 공격 범위 App Attest와 API 요청 신뢰 경계. 다루는 범위: App Attest가 없애지 못하는 공격, 앱 인스턴스 등록, 일반 요청을 묶는 단기 토큰. 실제 구현과 운영 기록을 기준으로 설명한다.