개발자

다국어 변역 api사용 저장시 느린 속도 문제

2024년 07월 18일조회 41

DB에 정보 저장하는데요 ranslationResponse response = restTemplate.postForObject(TRANSLATION_ENDPOINT, request, TranslationResponse.class); api를 통해 영어 중국어 일본어로 변역해서 변역 내용 같이 DB에 저장 하려고 합니다. 그런데 저장할 때 문장이 길어지면 변역 시간이 느려저서 사용자쪽에서 많이 기다려야 하는 상황입니다. 기본 내용만 저장하고 파이널리문에서 번역해서 다시 저장하는 방법을 생각 해서 적용 해보았는데 브라우저에서 결과 받는 속도는 같았습니다.ㅠ 그렇다고 브라우저에서 ok 결과를 받은 후 번역을 비동기로 호출하는 것도 불필요한 비용 발생일 것 같고요 창을 먼저 꺼버리자니 오류 처리 못할 것 같구요 저장중 이라는 알림으로 처리 해야하는건지 사용자 입장에서 개선 하고 싶은데 방법을 잘 모르겠습니다. 혹시 해결방안 알고 계신분이 계시다면 조언 부탁드립니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

개발자A님의 프로필 사진

대부분의 Response는 요청에 대한 결과를 전부 받아온 다음에 result처리 되게 됩니다. 또한 대부분의 클라이언트 서버의 입장에서는 이 결과를 전부 Response 받은 후 DB에 저장하거나 화면에 출력하거나 하는 식의 로직을 제작하게 됩니다. 아마도 서버측에서의 응답속도가 그리 빠르지 않은 것 같거나, 혹은 서버측에서의 연산 후 리턴이 오래 걸린다거나라고 보입니다. 일부 서비스들의 요청 후 응답된 결과가 실시간으로 표시되는 것의 경우는 데이터 스트림을 기반으로 제작합니다. (예를 들면 ChatGPT가 응답할 때 연산이 되는대로 사용자 화면에 출력해주는 것) 하지만 위와 같은 경우는 데이터를 처리해주는 서비스를 지닌 서버측에서 해당 리턴타입을 지원하는 요청을 따로 보유하고 제공해주어야 합니다. 제 개인적인 경험상 해결했던 방법으론, 학습이 오래 걸리는 챗봇 문서가 있고 사용자가 이를 기다리는 시간이 너무 길어질 경우는 단순히 Timeout시간을 늘리는 것은 너무 어색하다 생각되어, Ajax를 통한 비동기,백그라운드 처리로 작업하였습니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 07월 18일

저장 처리 시간을 단축시키는데는 여러 가지 접근 방법이 있습니다. 아래의 몇 가지 가능한 솔루션을 제안해드리겠습니다. 1. **비동기 처리:** 사용자 요청에 대한 응답을 지연시키지 않고 즉시 반응하게 만들 수 있습니다. 우선 기본적인 내용만 저장하고, 그 다음에 번역 작업을 백그라운드에서 비동기적으로 실행할 수 있습니다. 이렇게 하면 사용자는 바로 응답을 받을 수 있지만, 번역된 내용은 나중에 업데이트되어야 합니다. 2. **번역 API 의 효율적인 사용:** 번역 API 호출이 병목 현상의 원인일 수 있습니다. 일부 API는 한 번의 요청으로 여러 문장 또는 문서를 동시에 번역하는 기능을 제공합니다. 당신이 사용하는 API가 이런 기능을 제공하는 지 확인해보세요. 3. **스케일링:** 서버 측에서 동시에 더 많은 번역 요청을 처리할 수 있도록 애플리케이션 스케일링이 필요할 수도 있습니다. 4. **사용자 인터페이스(UI) 개선:** 앞선 방법들로도 문제가 해결되지 않는다면, 사용자에게 진행 상황을 알리는 것이 도움이 될 수 있습니다. 예를 들어, "번역 및 저장 중..."과 같은 메시지를 표시하는 등의 방법으로 사용자 경험을 개선할 수 있습니다. 위의 방법들 중 하나 또는 여러 가지를 결합하여 사용하실 수 있습니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!