알고리즘 문제를 직접 출제하고 풀 수 있는 Online Judge를 제작합니다.
-
사용자가 제출 후, 결과 확인까지 걸리는 시간을 어떻게 줄일 수 있을까?
- docker 재실행 속도
- docker 재실행을 위해 CLI를 호출하는 방식에서 Docker Engine API를 직접 호출해 개선 가능
- 구현 난이도가 너무 높아 오래 걸림. (우선 순위 최하)
- 현재도 충분히 빠르다고 판단됨.
- 채점 프로그램 속도
- 속도 개선을 이루려면 채점 프로그램 언어를 바꿔야 해서 우선순위 최하.
- 그리고 장효석이 한 명임. 인풋대비 아웃풋 미미…
- API 서버와 채점 서버와의 통신 속도
- API 통신 + 1초마다 확인 → Redis Pub/Sub
-
채점 서버 한 개에 도커 컨테이너 1개, 3개 API 통신으로 구현함.
[채점 서비스] PART1. API 통신으로 구현(채점 서버 1개)
-
redis 메시지큐 구현함. (구현 방식은 작성중입니다)
[채점 서비스] PART2. Redis 메시지 큐를 이용한 구현
-
성능 측정
[채점 서비스] 채점 성능 측정
-
실시간 채점 현황