1명만 주문 vs 100명이 동시에 주문
Vložit
- čas přidán 31. 05. 2024
- [Powered by Vrew]
이 영상의 자막은 Vrew를 통해 생성/편집되었습니다.
혼자서 만드니 코드가 얼기설기 한심하네요
개발 직군 분들 전방위적으로 존경합니다
00:00 인트로
00:19 코드 간략설명
00:57 manim, streamlit 설명
01:54 문제발생
02:25 어떻게 해결할까
04:34 마무리 - Věda a technologie
3:48 uuid를 쓰는 것도 좋은 방법일 것 같네요
1만명 주문인줄 알고 흥미롭네하면서 봤는데 ㅋㅋㅋㅋ
우연히 알고리즘에 떠서 재밌게 봤습니다~ㅎㅎ 별건 없지만 몇 가지 남기자면...
1. 임시 파일/폴더가 필요할 땐 mkdtemp 같은걸 써서 작업하면 편합니다 (OS 단 에서 지원해줘요~)
2. 중복 처리 방지는 각 리퀘스트 마다 고유 값 (e.g IP 또는 UUID)을 써서 서버에서 처리하는게 안전할 것 같아요~
3. 이름 쌍으로 해쉬를 만들어서 같은 조합일 때, 새롭게 생성하지 않고 이미 만들어진걸 리턴해도 괜찮겠네요~
4. 같은 조합이 생성중일 땐, 트라이-캐치 처리 보다는 락 파일을 만들어서 중복된 요청을 busy waiting 후 서빙하는 방법도 있을 것 같아요~
3:36 여기 부분에서 굳이 이렇게 할 필요는 없었다고 하셨는데 왜 할 필요가 없는지 여쭤봐도 될까요?
어차피 개인별로 별개의 프로세스를 실행시키는 거라서 "manim 실행용 파일을 만들고, os.system()으로 실행시킬 필요가 없다"는 의미였습니다. 영상을 다시 보니 좀 헷갈릴 여지가 있네요
아 manim을 서버에서 돌린다음 클라이언트로 전송해주는거였군요
pyscript같은거 써서 클라이언크에서 바로 manim을 돌려버리는 방법도 읶었을 것 같아요
서버에서는 뭐 fastapi같은걸 쓰니까 가능하겠죠?
어쩐지안돼더라..