pyo92 / project-lottery

Spring boot 복권 서비스 (Monolithic)
1 stars 0 forks source link

[고도화] selenium #193

Closed pyo92 closed 3 months ago

pyo92 commented 3 months ago

프로젝트 개발 배경의 중심인 기능을 담당하는 구매 관련 selenium 관련 고도화를 진행하려고 한다.

이번 고도화의 주안점은 다음과 같다.

  1. 안정성 개선 최초 개발 당시, ec2 성능 한계상 thread sleep 을 실행해, DOM element 의 로드 시간을 벌어 정상 동작할 수 있도록 했지만, 이 번 기회에 올바른 방법으로 바로 수정하여 안정성을 개선하려고 한다.

  2. 최적화 및 속도 개선 ec2 성능 한계상 구매 관련 동작 퍼포먼스가 굉장히 좋지 않다. 동행복권 로그인, 예치금 입금 신청, 구매와 같은 기능당 약 10~20초가 소요되기 때문에 답답한 느낌을 받는다. 다양한 방법을 통해 최적화를 시도한다.

  3. 프로젝트 분리 최적화를 통해 속도 개선을 하더라도 생각만큼 퍼포먼스가 나오지 않을 것이라고 예상한다. 하나의 ec2 인스턴스에 5개의 docker container 가 실행되고 있으니, 그 만큼 selenium 이 낼 수 있는 퍼포먼스의 한계점은 낮을 것이다. 최종적으로는 구매 selenium 만의 별도의 ec2 인스턴스를 할당해 MSA 구조로 프로젝트를 개선해 나갈 예정이다.