connectbase-client 5.10.0 → 5.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -0
- package/dist/connect-base.umd.js +4 -4
- package/dist/index.d.mts +36 -0
- package/dist/index.d.ts +36 -0
- package/dist/index.js +86 -6
- package/dist/index.mjs +86 -6
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,51 @@
|
|
|
3
3
|
본 SDK 의 모든 주요 변경사항을 [Keep a Changelog](https://keepachangelog.com/ko/1.1.0/) 형식으로 기록합니다.
|
|
4
4
|
버전은 [Semantic Versioning](https://semver.org/lang/ko/) 을 따릅니다.
|
|
5
5
|
|
|
6
|
+
## [5.11.0] - 2026-08-05
|
|
7
|
+
|
|
8
|
+
### Performance — 한국에서 SDK 호출이 585ms → 45ms
|
|
9
|
+
|
|
10
|
+
Cloudflare 가 `connectbase.world` 를 한국 사용자에게 **LAX(로스앤젤레스)** 엣지로 서빙합니다.
|
|
11
|
+
존이 Free 플랜이라서인데, 서울(ICN) 엣지는 사실상 Enterprise 전용이고 Pro/Business 로 올려도
|
|
12
|
+
열리지 않습니다. 오리진(춘천)도 사용자도 한국인데 **모든 SDK 호출이 태평양을 두 번 건너
|
|
13
|
+
141ms 를 고정으로 물고 있었습니다.** 업로드가 있는 요청은 TCP slow-start 가 그 왕복 지연
|
|
14
|
+
위에 곱해져 훨씬 커집니다.
|
|
15
|
+
|
|
16
|
+
이 버전부터 SDK 는 서버가 알려주는 저지연 원본(`api-direct.connectbase.world`)으로 데이터
|
|
17
|
+
평면 요청을 자동으로 옮깁니다. **설정할 것도, 코드를 고칠 것도 없습니다.**
|
|
18
|
+
|
|
19
|
+
실측 (서울, 같은 요청 · 2026-08-05):
|
|
20
|
+
|
|
21
|
+
| | 기존 (CF LAX) | 5.11.0 (직결) |
|
|
22
|
+
|---|---|---|
|
|
23
|
+
| TCP connect | 137ms | **13ms** |
|
|
24
|
+
| TLS handshake | 283ms | **31ms** |
|
|
25
|
+
| `GET /v1/public/auth-settings` TTFB | 585ms | **45ms** |
|
|
26
|
+
| 187KB POST 왕복 | 1.24–1.74s | **0.13s** |
|
|
27
|
+
|
|
28
|
+
음성 인식처럼 오디오를 올리는 흐름은 회당 1초 이상 줄어듭니다.
|
|
29
|
+
|
|
30
|
+
**어떻게 동작하나.** Cloudflare 엣지는 요청이 어느 나라에서 왔는지 이미 알고 있습니다.
|
|
31
|
+
서버가 한국 사용자의 응답에만 `X-CB-Direct-Base` 헤더를 실어 보내고, SDK 가 그걸 보고
|
|
32
|
+
이후 요청을 옮깁니다. 다른 나라 사용자에게는 광고하지 않습니다 — 그들에게는 가까운
|
|
33
|
+
Cloudflare 엣지가 춘천 오리진보다 훨씬 가깝기 때문입니다. 별도 프로브 요청이 없어
|
|
34
|
+
왕복 낭비도 없습니다.
|
|
35
|
+
|
|
36
|
+
**세션은 그대로입니다.** 로그인·가입·로그아웃·OAuth·회원 탈퇴처럼 세션 쿠키를 주고받는
|
|
37
|
+
요청은 옮기지 않습니다. 멤버 refresh 쿠키가 host-only 라 호스트가 갈리면 세션이 끊기기
|
|
38
|
+
때문입니다. 옮기는 것은 `X-Public-Key` 로만 인증하는 데이터 평면(DB CRUD, 스토리지, AI
|
|
39
|
+
스트리밍, 함수 호출, 내 정보 조회 등)뿐입니다.
|
|
40
|
+
|
|
41
|
+
**안 되는 환경에서도 안전합니다.** 직결 호스트로 가는 요청이 네트워크 레벨에서 실패하면
|
|
42
|
+
(CSP `connect-src` 를 좁게 잡은 앱, 사내 프록시, DNS 미전파 등) **같은 요청을 즉시 원래
|
|
43
|
+
원본으로 재시도**하고 그 세션에서는 다시 시도하지 않습니다. 호출자가 취소(AbortController)
|
|
44
|
+
하거나 타임아웃 난 요청은 재시도하지 않습니다.
|
|
45
|
+
|
|
46
|
+
> **CSP 를 쓰신다면** `connect-src` 에 `https://api-direct.connectbase.world` 를 추가하면
|
|
47
|
+
> 첫 실패 왕복 한 번도 없앨 수 있습니다. 추가하지 않아도 동작에는 문제가 없습니다.
|
|
48
|
+
|
|
49
|
+
플랫폼 이슈 `019fcc2d`.
|
|
50
|
+
|
|
6
51
|
## [5.10.0] - 2026-08-05
|
|
7
52
|
|
|
8
53
|
### Added — 회원 탈퇴(멤버 삭제)를 SDK 로 열었습니다
|