ThreadPoolExecutor из модуля concurrent.futures в Python для DRF-приложения
У меня есть простой GET Project API, Ниже приведен мой подход к коду
`
class ProjectListCreateView(generics.ListCreateAPIView):
queryset = Project.objects.filter(is_deleted=False)
serializer_class = ProjectSerializer
def convert_to_json(self, state):
return State.convertProjectObjectToJSON(self, state=state)
def get(self, request, *args, **kwargs):
try:
objects = self.get_queryset()
with ThreadPoolExecutor(max_workers=8) as executor:
json_response = list(executor.map(self.convert_to_json, objects))
response = response_body(status_code=status.HTTP_200_OK, data=json_response)
return Response(response, status=status.HTTP_200_OK)
except Exception as e:
response = response_body(status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, data={str(e)})
return Response(response, status=status.HTTP_500_INTERNAL_SERVER_ERROR)`
Этот API занимает 970 мс для 200 проектов. Мой вопрос в том, зависит ли это от потоков, что мне нужно для развертывания на azure, нужно ли вносить изменения в конфигурацию сервера или что-то еще?