지역 허브
(섹션: 생태계 및 네트워크)
1) 지역 허브가 필요한 이유
지역 허브는 다음에 최적화 된 로컬 컴퓨팅, 스토리지 및 네트워크 게이트웨이 클러스터입니다
대기 시간 및 UX: 사용자와의 근접성 (RTT 리, TTI/TTF).
준수 및 거주지: 관할 구역 내 데이터 저장/처리.
안정성과 용량: 글로벌 코어를 내리고 지역의 부분적인 격리로 작업합니다.
경제: 지역 간 교통 감소, 지역 CNC/캐시, 유리한 IX/피어링 관세.
2) 지역 허브 역할
1. 가장자리/게이트웨이-입력 계층 (해/2/3, gRPC, 웹 소켓, QUIC), 속도 제한, QoS, WAF.
2. 독자/API-RPC, 색인, 검색 서비스, 로컬 구체화보기.
3. 계산/스트림-이벤트 처리, 집계, 사기 방지 필터.
4. 데이터 평면-TSDB/열 쇼케이스, "따뜻한" 데이터를위한 객체 스토리지.
5. 규정 준수/KYC/KYB-공급자 및 제재 카탈로그와의 로컬 통합.
6. 결제/PSP-현지 결제 방법 및 온/오프 램프.
7. Bridge/Relay는 로컬 마무리 버퍼가있는 체인 간 메시지 터미널입니다.
8. 관찰 가능성-메트릭/로그/트레일, 합성 샘플.
9. 거버넌스/액세스-지역 참가자의 역할, 키 및 한계 디렉토리.
3) 배치 토폴로지
허브 앤 스포크: 중앙 "마스터 허브" + 부분 자율성이있는 지역 스폰.
Active-Active (Multi-Primary): 충돌없는 복제 (CRDT/리딩 로그) 가있는 여러 허브의 대칭 작동.
액티브 패시브: 주기적 복제 및 DR 롤오버가있는 핫 리저브.
가장자리 계층: 얇은 가장자리 노드 (CNC, Web소켓 팬 아웃) → 두꺼운 지역 허브.
선택은 최종/일관성 요구 사항, 채널 비용 및 규제 제약 조건에 따라 다릅니다.
4) Geomarshrutization 및 거주 정책
GeoPS/Anycast + Latency-Aware LB: 가장 가까운 건강 허브로 요청을 보냅니다.
관할권 경로: 피험자 데이터 (EU/UK/TR 등) 는 해당 허브에 남아 있습니다. 지역 간 이전-흰색 목록에서만 가능합니다.
지역의 트래픽 SOR (Smart Order Routing): RTT, 채널 비용, 규정 준수 플래그, 할당량 부하 및 SLO를 고려합니다.
장소 내 실패: 외부 링크가 저하 될 때 허브는 계속해서 "최종 전용" 요청 및 로컬 작업을 수행합니다.
5) 데이터: 디렉토리, 복제, 스토리지 클래스
데이터 클래스:- P0 - 지불/브리지/식별 (엄격한 거주지, 집계/해시에서만 "신호" 의 동기화).
- P1 - 제품 이벤트 및 집계 (로컬 뷰 + 주기적 내보내기).
- P2 - 디버그/로그 (공격적 압축, 지역에서의 긴 유지).
- 이벤트-파티 내에서 주문한 로그 배송 (지역 범위 키).
- 스토리지 - 비동기식 MMR/CRDT 또는 스냅 샷 백업.
- 거주지: DLP/PII 정책, 토큰 화, 지역당 별도의 암호화 키.
6) 성능과 캐싱
캐시: 에지 캐시 (짧은 TTL), API에 대한 읽기, 음수 캐시.
따뜻한 데이터: 마지막 N 블록/배치, 인기있는 방법에 대한 핫 인덱스.
L2/브리지 용 DA/배치 버퍼: 확인이 포함 된 로컬 간행물 대기열.
하드웨어 조정 TPS: 지역 가격에 따른 $/TPS 및 $/RPS 용량 계획.
7) QoS, 대기열 및 역압
버스 및 게이트웨이 레벨의 P0/P1/P2 클래스; 별도의 대기열과 할당량.
분할: 예측 된 처리량을위한 '지역' 테넌트 '주제' 키.
DLQ: "유독 한" 메시지의 검역, 지터가있는 retrai.
입학 제어: "비싼" RPC의 제한 (범위, 필터, 한계 별).
8) 지역 허브 SLI/SLO
SLI:- p95 Latency (Edge/API), Success Rate, Queue-Lag p95, Freshness showcase, Finality p95 (bridge/Relays), Geo-Hit Ratio (지역에서 제공되는 요청 공유), Compliance Pass%.
- Edge/API p95 λ350-450 95%.
- 신선도 (P1) p95 λ3 분; Queue-Lag P0 p95
- Geo-Hit 비율은 85% 이상입니다 (지역 간 홉 없음).
- DR RTO
9) 관찰 및 대시 보드
Ops Core: QoS 클래스의 대기 시간/오류/큐 지연/처리량.
Geo View: RTT 히트 맵, Geo-Hit 비율, 지역 간 트래픽.
준수: 거주, 제재 조치, 수출 로그.
Bridge/DA: p95 최종, 챌린지/조직, 출판 실패.
용량 및 비용: TPS _ per _ $, CTS/1k 요청, 활용%.
10) DR 및 탄력성
백업 채널: 독립적 인 IX/제공 업체, 암호화 된 허브 간 통신 터널.
분리 된 모드: "최종 전용", 저하 된 API, 로컬 청구서 및 조정.
규칙적인 운동: 대서양 횡단 셧다운, DA/프로보 손실, 국경에서의 "지터/손실".
11) 경제 및 역량 계획
1k ops 당 CTS (Cost-to-Serve): 채널 + 계산 + 스토리지 + 라이센스.
TPS _ per _ $: 인프라 $1 당 지속 가능한 대역폭.
피어링/IX 최적화: 로컬 피어 포인트, 접두사 알림, 압축 및 버칭.
계층 모델: T1 (최소 서비스 세트), T2 (전혈 분석), T3 (전체 스택 + DA/브리지).
12) 참조 구성
12. 1 라우팅 정책 (YAML)
yaml routing:
geodns:
regions: [eu, uk, tr, la, apac, na]
policies:
prefer_local: true fallback_chain: [nearest_healthy, master_hub]
compliance:
residency:
eu: ["eu"]
uk: ["uk"]
tr: ["tr"]
export_whitelist:
eu: ["anonymized_metrics","hash_anchors"]
slo_gates:
p0_latency_p95_ms: 400 queue_lag_p95_ms: 2000
12. 2 K8 엣지 게이트웨이 + HPA
yaml apiVersion: apps/v1 kind: Deployment metadata: { name: edge-gw, labels: { region: eu } }
spec:
replicas: 4 template:
spec:
containers:
- name: gw image: org/edge-gw:2. 7. 0 ports: [{ containerPort: 443 }]
env:
- { name: QOS_CLASSES, value: "P0,P1,P2" }
- { name: DENY_HEAVY_RANGE, value: "eth_getLogs>5000" }
apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: { name: edge-gw-hpa }
spec:
minReplicas: 4 maxReplicas: 24 metrics:
- type: Pods pods:
metric: { name: request_latency_p95_ms }
target: { type: AverageValue, averageValue: 350m }
12. 3 카프카: 지역/텐트 분할
yaml topic: "events. p0"
partitions: 96 config:
min. insync. replicas: 2 cleanup. policy: delete compression. type: zstd message. timestamp. type: CreateTime
12. 4 거주 및 수출 정책
yaml data_policy:
pii: { tokenized: true, cross_region_export: "deny" }
exports:
anonymized_metrics: { allowed: ["eu","uk","na"], schedule: "5m" }
hash_anchors: { allowed: ["eu","uk","na","apac"], cadence: "15m" }
13) 데이터 스키마 및 쿼리
허브 및 링크 디렉토리
sql
CREATE TABLE hubs (
hub_id TEXT PRIMARY KEY,
region TEXT, tier SMALLINT, status TEXT,
rtt_ms INT, cost_per_1k_ops NUMERIC,
created_at TIMESTAMPTZ
);
CREATE TABLE interlinks (
src_hub TEXT, dst_hub TEXT,
capacity_mbps INT, cost_per_gb NUMERIC,
encrypted BOOLEAN, health TEXT,
PRIMARY KEY (src_hub, dst_hub)
);
Geo-Hit 비율... 신선도
sql
SELECT region,
100. 0 SUM(CASE WHEN served_in_region THEN 1 ELSE 0 END)/COUNT() AS geo_hit_pct,
PERCENTILE_CONT(0. 95) WITHIN GROUP (ORDER BY freshness_s) AS freshness_p95
FROM req_stats
WHERE ts >= now() - INTERVAL '24 hours'
GROUP BY region;
TPS _ per _ $
sql
SELECT hub_id,
AVG(tps_sustained) / NULLIF(AVG(cost_usd_hour),0) AS tps_per_usd
FROM hub_perf
WHERE ts >= now() - INTERVAL '7 days'
GROUP BY hub_id;
14) 운영 규정
매일: SLO 보고서 (대기 시간/대기열 지연/신선도), 수출/거주 감사, 허브 간 얼굴 상태.
주간: 할당량/QoS 및 GeoDNS의 교정, CTS/TPS _ per _ $ 의 재 계산, 캐시 및 핫 인덱스 개정.
월간: DR 연습 (격리 된 모드, 채널 전환), DA/브리지 점검.
출시 전: 하나의 허브/지역별 카나리아 출시, SLO 게이트 및 롤백 계획.
15) 플레이 북 사건
A. 지역 간 채널의 하락
1. IX를 대기하여 압축/배치를 활성화하십시오.
2. "최종 전용" 모드의 허브;
3. 대기열을 제한하여 버퍼로 내보냅니다.
4. 사후 참가자와의 의사 소통.
API p95의 B. 국소 분해
1. P0의 우선 순위를 정하고 P2 스로틀을 활성화하십시오.
2. 에지/API 복제본 증가;
3. 핫 메소드에만 캐시 사용;
4. 무거운 쿼리 진단, 필요한 경우 거부 규칙.
거주지의 C. 위반
1. 즉각적인 지역 간 수출 블록;
2. 수정/수출 역전;
3. DPO/준수 알림;
4. 정책 및 테스트 업데이트
D. reorg/DA 실패 피크
1. 분쟁 K/창 증가;
2. "지연된 마무리" 사용;
3. 소비자에게 알리기;
4. 보충 보고서.
E. 고르지 않은 허브 로딩
1. GeoDNA/Latency-LB 재조정;
2. 쿼터/가격 균형;
3. 계열사/소스에 대한 트래픽 형성.
16) 구현 점검표
1. 지역/관할 구역 및 대상 SLO를 선택하십시오.
2. 디자인 토폴로지 (Hub-Spoke 또는 Active-Active), 채널/IX.
3. 사후 역할: Edge/API/Compute/Data/Bridge/Compliance.
4. 거주, 디렉토리 및 내보내기 정책 설정Name
5. QoS, 대기열, 캐시 및 배압을 사용하십시오.
6. 관찰 가능성을 높이고 Geo/Compliance/Perf/Cost 대시 보드를 만듭니다.
7. DR (RTO/RPO), 드릴 및 격리 모드를 설정하십시오.
8. 경제 지표 (CTS, TPS _ per _ $) 및 예산을 입력하십시오.
17) 용어집
Geo-Hit Ratio-" its "허브가 제공하는 요청 비율.
RPO/RTO-데이터 손실/복구 시간 목표.
허브 앤 스포크는 주변 클러스터가있는 중앙 노드입니다.
CRDT-충돌없는 복제를위한 데이터 구조.
1k ops 당 CTS-1000 개의 작업 서비스 비용.
TPS _ per _ $ - 인프라 당 용량.
결론: 지역 허브는 글로벌 네트워크를 로컬로 최적화되고 호환되며 탄력적 인 도메인 세트로 바꿉니다. 명확한 SLO, 거주지, QoS 및 DR 절차를 통해 대기 시간과 비용을 줄이고 신뢰성을 높이며 관리 가능성을 잃지 않고 생태계 확장을 가능하게합니다.