인프라 업그레이드
최대 467배 빠름2026년 3월, 공유 VPS에서 전용 서버로 마이그레이션했습니다. RAM 16배 증가, 5개의 병렬 분석기 워커, 48개의 모든 언어 모델 사전 로드. 콜드 스타트 제거. 모든 언어가 밀리초 단위로 응답합니다.
동시 성능
새 서버는 모든 서비스에서 수백 개의 동시 요청을 무장애로 처리합니다.
| 서비스 | 동시 | 성공 | 평균 | RPS |
|---|---|---|---|---|
| Analyzer (spaCy) | 500 | 100% | 331 ms | 634 |
| Analyzer (12-lang mix) | 120 | 100% | 114 ms | 515 |
| Anonymizer | 1,000 | 100% | 8 ms | 1,501 |
| Structured Data | 100 | 100% | 331 ms | 144 |
| Frontend (Next.js) | 200 | 100% | 979 ms | 104 |
| Mixed Workload | 110 | 100% | 56 ms | 536 |
전체 파이프라인 속도
새 서버에서의 엔드투엔드 분석 + 익명화 지연. 모든 언어 모델이 예열된 상태에서 측정.
| 언어 | 엔진 | 파이프라인 평균 | 엔티티 |
|---|---|---|---|
| English | spaCy | 10.2 ms | 9 |
| German | spaCy | 13.4 ms | 9 |
| French | spaCy | 10.5 ms | 10 |
| Spanish | spaCy | 7.8 ms | 9 |
| Japanese | spaCy | 9.9 ms | 6 |
| Chinese | spaCy | 13.6 ms | 5 |
| Arabic | Transformer | 12.7 ms | 7 |
| Hebrew | Stanza | 117.3 ms | 6 |
이전 서버 시간은 전체 GUI 테스트 파이프라인(Playwright + API)을 포함합니다. 새 서버 시간은 모든 모델이 예열된 상태의 API 전용 벤치마크입니다. 개선은 실제 인프라 이점을 반영합니다: 콜드 스타트 제거, 5배 병렬화, NVMe 스토리지.
13개 테스트 마일스톤
각 마일스톤은 인증에서 크로스 브라우저 호환성까지 플랫폼의 별개 기능 영역을 다룹니다.
Authentication & Session
22/22 테스트
로그인, 세션 지속성, 프로필, 상태 확인, 인증 가드, 로그아웃/재로그인
PII Detection (Analyzer)
62/62 테스트
GUI를 통한 48언어 분석, 엔티티 필터, 점수 임계값, 엣지 케이스, 키보드 바로 가기
Anonymizer (5 Operators)
40/40 테스트
API 및 GUI를 통한 Replace, Redact, Hash, Mask, Encrypt 연산자, 빠른 작업, 다국어
Decrypt (Roundtrip)
22/22 테스트
AES-256/128/192의 암호화-암호 해독 라운드, 다국어, 키 검증, 큰 텍스트
Batch & File Upload
20/20 테스트
배치 텍스트 처리, 파일 업로드 UI, 탭 전환, 처리 상태
Entity Management
28/28 테스트
3개 탭의 엔티티 CRUD, AI Creator, 검증 규칙, 정리 검증
Preset Management
28/28 테스트
3개 탭의 사전 설정 CRUD, 애플리케이션 흐름, 검증 규칙, 정리 검증
Settings (10 Tabs)
42/42 테스트
모든 10개 설정 탭: 계정, 청구, 토큰, 보안, 기록, 언어, 암호화 키, 서비스, 개발자
API Security
35/35 테스트
핵심 엔드포인트, 보안 헤더, CORS 정책, 입력 검증, 인증 보안, 속도 제한
Token Usage Monitoring
24/24 테스트
텍스트 크기, 연산자, 언어, 엔티티 필터, 암호 해독, 배치, CSV 내보내기별 토큰 소비
Lighthouse & Quality
20/20 테스트
8페이지의 Lighthouse 점수, 뷰포트 반응성, 접근성, SEO, 콘솔 오류, 끊어진 링크
48 Languages + RTL
56/56 테스트
48개 언어 모두에 대한 분석, 4개의 RTL 레이아웃 확인, 언어 전환, 선택기 검증
Cross-Browser
20/20 테스트
Chromium, Firefox, WebKit 및 Mobile Chrome의 5페이지 — 콘솔 오류 없음
48개 언어 적용 범위
지원되는 모든 언어는 실제 PII 샘플로 테스트됩니다. 3가지 NLP 엔진 유형이 언어별 최적의 정확도를 보장합니다.
| 언어 | 코드 | 엔진 | 엔티티 | 이전 서버 | 새 서버 | 속도 개선 | 상태 |
|---|---|---|---|---|---|---|---|
| English | en | spacy | 113 | 270 ms | 8 ms | 34× | |
| German | de | spacy | 148 | 313 ms | 7 ms | 45× | |
| Spanish | es | spacy | 104 | 1,841 ms | 6 ms | 307× | |
| French | fr | spacy | 133 | 2,327 ms | 8 ms | 291× | |
| Italian | it | spacy | 97 | 1,787 ms | 7 ms | 255× | |
| Portuguese | pt | spacy | 61 | 1,764 ms | 6 ms | 294× | |
| Dutch | nl | spacy | 122 | 2,486 ms | 6 ms | 414× | |
| Polish | pl | spacy | 70 | 1,726 ms | 8 ms | 216× | |
| Russian | ru | spacy | 41 | 2,226 ms | 6 ms | 371× | |
| Japanese | ja | spacy | 23 | 1,436 ms | 6 ms | 239× | |
| Chinese | zh | spacy | 24 | 2,554 ms | 7 ms | 365× | |
| Korean | ko | spacy | 16 | 1,305 ms | 6 ms | 218× | |
| Arabic | ar | transformer | 20 | 554 ms | 8 ms | 69× | |
| Hindi | hi | transformer | 22 | 486 ms | 7 ms | 69× | |
| Turkish | tr | spacy | 112 | 504 ms | 6 ms | 84× | |
| Romanian | ro | spacy | 122 | 1,730 ms | 6 ms | 288× | |
| Greek | el | spacy | 29 | 1,822 ms | 7 ms | 260× | |
| Croatian | hr | spacy | 67 | 989 ms | 7 ms | 141× | |
| Slovenian | sl | spacy | 64 | 1,264 ms | 7 ms | 181× | |
| Macedonian | mk | spacy | 24 | 1,259 ms | 7 ms | 180× | |
| Swedish | sv | spacy | 140 | 1,002 ms | 6 ms | 167× | |
| Danish | da | spacy | 107 | 1,910 ms | 7 ms | 273× | |
| Norwegian | nb | spacy | 109 | 1,606 ms | 7 ms | 229× | |
| Finnish | fi | spacy | 118 | 1,229 ms | 7 ms | 176× | |
| Icelandic | is | transformer | 73 | 559 ms | 8 ms | 70× | |
| Ukrainian | uk | spacy | 25 | 1,434 ms | 9 ms | 159× | |
| Lithuanian | lt | spacy | 86 | 1,601 ms | 7 ms | 229× | |
| Bulgarian | bg | stanza | 24 | 8,735 ms | 98 ms | 89× | |
| Serbian | sr | transformer | 24 | 519 ms | 8 ms | 65× | |
| Hungarian | hu | stanza | 82 | 8,141 ms | 39 ms | 209× | |
| Czech | cs | transformer | 81 | 562 ms | 8 ms | 70× | |
| Slovak | sk | transformer | 70 | 577 ms | 8 ms | 72× | |
| Latvian | lv | transformer | 83 | 526 ms | 8 ms | 66× | |
| Estonian | et | transformer | 79 | 531 ms | 8 ms | 66× | |
| Hebrew | he | stanza | 17 | 8,850 ms | 101 ms | 88× | |
| Persian | fa | transformer | 12 | 439 ms | 7 ms | 63× | |
| Vietnamese | vi | stanza | 74 | 11,282 ms | 99 ms | 114× | |
| Indonesian | id | transformer | 79 | 524 ms | 7 ms | 75× | |
| Thai | th | transformer | 20 | 521 ms | 5 ms | 104× | |
| Malay | ms | transformer | 87 | 510 ms | 7 ms | 73× | |
| Filipino | tl | transformer | 75 | 501 ms | 7 ms | 72× | |
| Bengali | bn | transformer | 18 | 455 ms | 7 ms | 65× | |
| Urdu | ur | transformer | 12 | 445 ms | 7 ms | 64× | |
| Afrikaans | af | stanza | 119 | 7,867 ms | 55 ms | 143× | |
| Swahili | sw | transformer | 68 | 526 ms | 7 ms | 75× | |
| Armenian | hy | stanza | 69 | 19,643 ms | 85 ms | 231× | |
| Catalan | ca | spacy | 100 | 3,267 ms | 7 ms | 467× | |
| Basque | eu | stanza | 82 | 783 ms | 40 ms | 20× |
크로스 브라우저 호환성
5개의 중요한 페이지가 4개의 브라우저 엔진에서 테스트되며 콘솔 오류 및 수평 오버플로우가 없습니다.
Chromium
5 5페이지 중
모두 통과Firefox
5 5페이지 중
모두 통과WebKit
5 5페이지 중
모두 통과Mobile Chrome
5 5페이지 중
모두 통과보안 테스트
35개 테스트API 엔드포인트, 헤더, CORS, 입력 검증, 인증 및 속도 제한을 다루는 35개의 전용 보안 테스트.
핵심 엔드포인트
8 testsAPI 엔드포인트 접근성 및 응답 코드를 확인하는 8개 테스트
보안 헤더
6 testsCSP, X-Frame-Options, HSTS 등을 위한 6개 테스트
CORS 정책
5 tests교차 출처 요청 처리를 위한 5개 테스트
입력 검증
6 testsXSS, SQL 주입 및 형식이 잘못된 입력을 위한 6개 테스트
인증 보안
5 tests인증 우회 및 세션 보안을 위한 5개 테스트
속도 제한
5 testsAPI 속도 제한 적용 및 Retry-After 헤더를 위한 5개 테스트
토큰 사용 분석
사용된 총 토큰: 768작업, 텍스트 크기, 언어 및 연산자 전체의 비용 효율성을 측정하는 22개의 토큰 소비 테스트.
| 작업 | 문자 | 언어 | 엔티티 | 연산자 | 토큰 | 응답 시간 |
|---|---|---|---|---|---|---|
| analyze | 50 | en | 44 | N/A | 4 | 220 ms |
| analyze | 200 | en | 140 | N/A | 9 | 276 ms |
| analyze | 500 | en | 387 | N/A | 21 | 367 ms |
| analyze | 1,000 | en | 745 | N/A | 39 | 542 ms |
| analyze | 5,000 | en | 3776 | N/A | 193 | 4,398 ms |
| analyze | 10,000 | en | 7566 | N/A | 385 | 14,494 ms |
| anonymize | 160 | en | 113 | replace | 7 | 291 ms |
| anonymize | 160 | en | 113 | redact | 7 | 236 ms |
| anonymize | 160 | en | 113 | hash | 7 | 243 ms |
| anonymize | 160 | en | 113 | mask | 7 | 276 ms |
| anonymize | 160 | en | 113 | encrypt | 7 | 242 ms |
| analyze | 165 | de | 148 | N/A | 9 | 272 ms |
| analyze | 151 | fr | 133 | N/A | 9 | 282 ms |
| analyze | 75 | ja | 23 | N/A | 3 | 1,608 ms |
| analyze | 125 | ru | 41 | N/A | 4 | 2,588 ms |
| analyze | 113 | ar | 20 | N/A | 3 | 501 ms |
| analyze | 63 | zh | 24 | N/A | 3 | 2,591 ms |
| analyze | 160 | en | 106 | PERSON only | 7 | 258 ms |
| analyze | 160 | en | 108 | PERSON+EMAIL+PHONE | 8 | 266 ms |
| analyze | 160 | en | 113 | All entities | 8 | 264 ms |
| decrypt | 342 | en | 37 | decrypt | 2 | 188 ms |
| batch-analyze | 476 | en,de,fr | 394 | N/A | 26 | 5,278 ms |
테스트 방법론
테스트 스위트는 GUI 수준의 Playwright 테스트와 직접 API 검증을 결합하여 포괄적인 범위를 제공합니다.
GUI 테스트
Playwright 브라우저 자동화는 실제 사용자 워크플로우를 테스트합니다. 버튼 클릭, 양식 작성, 페이지 간 탐색 및 시각적 출력 확인.
API 테스트
직접 HTTP 요청은 에지 케이스, 형식이 잘못된 입력 및 GUI 테스트만으로는 포함할 수 없는 경계 조건으로 각 엔드포인트를 검증합니다.
세션 캐싱
인증된 세션은 마일스톤 전체에서 캐시되고 재사용되어 테스트 런타임을 줄이면서 현실적인 사용자 동작을 유지합니다.
CRUD 정리
테스트 중에 생성된 모든 엔티티, 사전 설정 및 암호화 키는 이후에 정리되어 테스트가 멱등이고 반복 가능함을 보장합니다.