언더더키 · 커스텀 키보드 플랫폼
기간 —
커스텀 키보드 빌드를 한곳에서 다루려고 만든 플랫폼입니다. 실제 타건음을 들으며 타자를 연습합니다. 스위치 소리는 직접 녹음하고 믹싱했습니다.
2일 만에 사용자 500명
- 체리 축 샘플 기반 스위치 소스 13종
- 키보드 배열별 입력 테스트
- imager: 사운드 공간감 시각화
- 볼륨 조절과 언어 변경
- 한국어 속담 약 5,000개와 영문 격언 약 300개를 언어·카테고리별로 내주는 공개 API
- 요청당 최대 20문장 응답
배열마다 늘어나는 음원 파일
- 문제
- 처음에는 DAW 템플릿으로 키 배열(약 110개)별 소스를 만들어, 스위치마다 믹스된 파일 110개를 내려보냈습니다. 내려받는 파일이 많아 성능 문제가 있었고, 이 과정을 자동화하면서 줄일 방법이 필요했습니다.
- 해결
- 믹스를 DAW 대신 클라이언트에서 Web Audio API로 하게 바꿨습니다. 8KB 소스 하나에 좌우 패닝, 상하 주파수, 키캡 크기별 필터를 걸어 모든 배열에 대응하는 템플릿을 만들었습니다. 내려받는 파일이 110개에서 1개로 줄었습니다.
공개 API 과다 요청
- 문제
- 랜덤 문장 API는 공개 API라 요청이 몰릴 수 있었고, 서비스 핵심 서버라 멈추면 안 됐습니다. Remote IP를 직접 받아 세면 동시성 처리 부담이 컸고, 세부 규칙도 정할 수 있어야 했습니다.
- 해결
- 정확성과 Redis TTL 연동을 따져 Bucket4j를 도입했습니다. 5분에 20회까지만 받도록 토큰을 제한해, 과도한 요청이 서버 부하로 이어지지 않게 했습니다.
아키텍처






