Сокетное соединение не работает должным образом на Heroku

Я пытаюсь получить некоторые сообщения с сервера с помощью сокета в моем веб-приложении Django. Это работает правильно в локальном режиме, но не работает, когда я развертываю его на Heroku.
Проблема, похоже, в том, что я не могу получить все ответы от сервера за адекватное время.
Procfile: web: gunicorn app.wsgi --log-file -
Клиентское соединение, которое я создал, имеет такую структуру.

def connection(self, hostname: str, port: int, messages: list) -> str:
       s: socket.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
       sock: ssl.SSLSocket = ssl.wrap_socket(s, cert_reqs=ssl.CERT_NONE, ssl_version=ssl.PROTOCOL_TLSv1_2)

        sock.connect((hostname, port))
        
        sock.settimeout(1)

        for message in messages:
            sock.sendall(message.encode())

        data: str = ''
        while True:
            try:
                # get response from server
                resp = sock.recv(1024)
                data += resp.decode("UTF-8")
                if resp == b'':
                    data = None
                    break
                   
            except socket.timeout:
                # expired time to receive data
                break
        
        # close connection
        sock.close()
        return data
Вернуться на верх