Rocksolid Light

Welcome to RetroBBS

mail  files  register  newsreader  groups  login

Message-ID:  

I have not yet begun to byte!


devel / comp.lang.python / Re: Using a background thread with asyncio/futures with flask

SubjectAuthor
o Re: Using a background thread with asyncio/futures with flaskLars Liedtke

1
Re: Using a background thread with asyncio/futures with flask

<mailman.5.1711092838.3468.python-list@python.org>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=29712&group=comp.lang.python#29712

  copy link   Newsgroups: comp.lang.python
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: lal@solute.de (Lars Liedtke)
Newsgroups: comp.lang.python
Subject: Re: Using a background thread with asyncio/futures with flask
Date: Fri, 22 Mar 2024 08:27:28 +0100
Organization: solute GmbH
Lines: 156
Message-ID: <mailman.5.1711092838.3468.python-list@python.org>
References: <8a7231df-c30c-4fa6-9daa-546b3453b547@thomasnyberg.com>
<09efe843-195e-48c0-a9cb-6fe05e3a6921@solute.de>
Mime-Version: 1.0
Content-Type: text/plain; charset="utf-8"; format=flowed
Content-Transfer-Encoding: quoted-printable
X-Trace: news.uni-berlin.de fwc0PLFIW4IhIMixDOAcjAnU02coKH3aRjt7LjkXNbAA==
Cancel-Lock: sha1:cZb3Tt039ThTtjBJ3UsYUlNp1oI= sha256:b+zGXJv1MGbG8KSsCfGRXQ1teWNlIUDhb8/3lJvVmiw=
Return-Path: <lal@solute.de>
X-Original-To: python-list@python.org
Delivered-To: python-list@mail.python.org
Authentication-Results: mail.python.org; dkim=none reason="no signature";
dkim-adsp=none (unprotected policy); dkim-atps=neutral
X-Spam-Status: OK 0.002
X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'def': 0.04; 'debug': 0.07;
'e.g.': 0.07; 'queue': 0.07; 'serving': 0.07; 'debian': 0.09;
'freeze': 0.09; 'linux': 0.09; 'prints': 0.09; 'schrieb': 0.09;
"shouldn't": 0.09; 'threads': 0.09; 'url:de': 0.09; 'worker':
0.09; 'cheers,': 0.11; 'import': 0.15; 'that.': 0.15; '721': 0.16;
'deployment.': 0.16; 'gmbh': 0.16; 'gnu/linux': 0.16; 'help!':
0.16; 'instead.': 0.16; 'python3': 0.16; 'sees': 0.16; 'server,':
0.16; 'similar.': 0.16; 'sitz': 0.16; 'subject:thread': 0.16;
'threading': 0.16; 'url-ip:104.22.46.190/32': 0.16; 'url-
ip:104.22.46/24': 0.16; 'url-ip:104.22.47.190/32': 0.16; 'url-
ip:104.22.47/24': 0.16; 'url-ip:172.67.5.43/32': 0.16; 'url-
ip:172.67.5/24': 0.16; 'warning:': 0.16; 'python': 0.16;
'developer': 0.16; 'server.': 0.19; 'to:addr:python-list': 0.20;
'written': 0.22; 'maybe': 0.22; "what's": 0.22; 'version': 0.23;
'install': 0.23; 'installed': 0.23; 'received:de': 0.23; '(and':
0.25; 'register': 0.25; 'flask': 0.26; 'old': 0.27; 'background':
0.28; 'wrong': 0.28; 'environment': 0.29; 'header:User-Agent:1':
0.30; 'seem': 0.31; 'header:Organization:1': 0.31; "doesn't":
0.32; 'do.': 0.32; 'subject:Using': 0.32; 'but': 0.32; "i'm":
0.33; 'server': 0.33; 'someone': 0.34; 'printing': 0.34; 'header
:In-Reply-To:1': 0.34; 'running': 0.34; 'trying': 0.35; 'pending':
0.35; 'following': 0.35; 'functions': 0.36; 'way': 0.38; 'put':
0.38; 'thanks': 0.38; 'use': 0.39; 'received:213': 0.40;
'something': 0.40; 'hello,': 0.40; 'here.': 0.61; 'skip:o 10':
0.61; 'skip:i 20': 0.62; 'policy': 0.62; 'germany': 0.62; 'skip:z
10': 0.62; 'skip:o 20': 0.63; 'skip:b 10': 0.63; 'privacy': 0.64;
'url:png': 0.66; 'lead': 0.67; 'skip:t 30': 0.67; 'amtsgericht':
0.69; 'await': 0.69; 'obvious': 0.69; 'url-ip:134/8': 0.69;
'workers': 0.69; 'url-ip:lookup error': 0.70; 'skip:a 40': 0.70;
'production': 0.71; 'skip:f 30': 0.71; 'virtual': 0.71; 'future':
0.72; 'url:php': 0.75; 'cheers': 0.76; 'dr.': 0.77; 'out,': 0.78;
'asyncio.': 0.84; 'court:': 0.84; 'true:': 0.84; 'url:cdn': 0.84;
'url:localhost': 0.84
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
b=MBovrqzNxjLdnOLF4WdeiUl5TT1BQUkqFYgabweLaBCcAiGSKji23tumM0wbDJJv8/Zmo79Pi5VN2QMzRZ5t4AjrwdzCheeROPyJn0AnNeCb0NBQh/kQobLAX/9RG1N/Ls0GR95CVe4b0Ir6NXp3CkoFdwEoT0XNqnJ5zet+JbVut+fhg9dXs9eDkFGXnoUWEEcn+7pvot/poVgwhlb7OMmsEp/Qwrr1y1xYN7tTPG3zjdMFKp3Echimv+W0/ToMWdwZZao+P/l2pwInTxa/5NBEaRhwJ9ZZAoRhSedE0X3KMbkP0s2NC8Lz7c+n7v1kw69X0deNz5auX0/HL1QNlg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
s=arcselector9901;
h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
bh=Ej/YLXfXGtKenmi+6u7BCGEf/R4H5IRmSfebYEU/KNI=;
b=jBMvXM/cBKs8qnqF0pR/vjxtH6avkFRONKntU2eVMqC5D+ghyrMRYAIZE2XRckjaiE2eJeklipltMR+5crvtF7/JhIEDA3bvihLAvblHAZIIOA4Ldg7HdXtiN89GqgRVywi54ZEu+13fwqH0ebRVA5HMhS4byUc4ykAb5j0u3uHCF0vPeBGbrNIbrt2mb4TvXiQK88e+pzrwp0eHfVhNC78P9eqOWSHdpkln4sSdaMF0XcPToeuNgYtfs9URf9C+urtgKQeTJnjl5IIfhmINde1JUwPaah2xTc2xuVIfsxnjEZuWvGHICVpGaVRXjt2UqbxA4jZLkU/PdLmhbaF9zw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
smtp.mailfrom=solute.de; dmarc=pass action=none header.from=solute.de;
dkim=pass header.d=solute.de; arc=none
Authentication-Results: dkim=none (message not signed)
header.d=none;dmarc=none action=none header.from=solute.de;
User-Agent: Mozilla Thunderbird
Content-Language: en-US, de-DE
Autocrypt: addr=lal@solute.de; keydata=
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
vXtW/dDJi28vvdyXPN5K33xtf+SFMcedqkCc
In-Reply-To: <8a7231df-c30c-4fa6-9daa-546b3453b547@thomasnyberg.com>
X-ClientProxiedBy: FR3P281CA0204.DEUP281.PROD.OUTLOOK.COM
(2603:10a6:d10:a5::9) To AM8PR05MB7395.eurprd05.prod.outlook.com
(2603:10a6:20b:1d0::15)
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: AM8PR05MB7395:EE_|VI1PR05MB10748:EE_
X-MS-Office365-Filtering-Correlation-Id: 1753b0f0-48f9-4bb7-9d04-08dc4a41881e
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: A+8OLgVEh/38Yg+N20m24WGwvycmOqmyBUfr1YsaNUf5smh7hcCKm0UrzeogyH1s4LtSwHlT4XmQysaae7D7Ms9NIymRJa/1FYjE2YxuCe5NxEKCuWZo8yf40D4fp0FsFJ1/WKT6iWTlyPBbXZmWZKc2BT+DutE5QMbwVz+LmdjB2TayYvCHiiZkq6ACtlKHeN4pJLVJ7TVif/1Uzr1og/BOluxi3kvOwQ5EA0ogqU5ykAPk5sbxr2gKnS0yC8po+HJsoTMNS+dZfGK4kpjdxYbun5M6xkmgt2xj/fZdTZidNfGmJBjajxuyiqmpLTHHnVTABaaNTAPQuMJ5s894ttpQ3zEzyJkeEF/keHeDUcL5vbSvV26d6/3K6jSFxoA8Vl0HVqXfLVB4JajK6MTI9KDXkOsbBVhboFLPqLf23R0rSteix+VdztWzxMG14LaP4MnAOUksIX3jjVtF6eMqbvjBbwvIs3lB/5i0DJyDcqDQlTKPJ/OKVVHwapndcgpx5x+GGTAmA+6l0xfC/QvEt7UFAQgmDHEFbDTywTE391gcy3jeXeJEMLw74dy2tYQMdLYB2/F9ZVHHZdBFafGfn4XY49C4yp1ktsqijRDgeJQ=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
IPV:NLI; SFV:NSPM; H:AM8PR05MB7395.eurprd05.prod.outlook.com; PTR:; CAT:NONE;
SFS:(13230031)(376005)(1800799015)(366007); DIR:OUT; SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: 7RzkQR0RawxErJ6VsHqBYNs0bZbB+MOsrE+SwfD1GGJ+i
2dv2aF9Zn47f+sSOZGSsOD1llhfjamumw/cQbgle5p0ky
TmQOJxF+onpX2zLWKvmNFxzm1+MqAPrFiM6w0QchD/Cvs
f9RYNjhIzyCUlKA/jfWkqDZeoEhsz2Mu4XM7GJHZQ9ytq
S0Y6TBpW3/+OAjauZ9/QkXAOZzbSbdC/6sNAIpoxz6/G3
HvNMTTIod2ElBcGhyzCoYGHKm+b80Ddxm6BJpAARi2tyh
+8CbRpdajamWblUFoFZrcoYq7ZcrpCzcRt/BiCvtOqS7N
AB5tMqONtvKxdJJ2vcHYOARwyfzXZxU4szn69IgxFRecb
KTaWGiWkLI5XBIKpvBfO/U1J0YE6RWzHsv47wyLvasRNI
ONblReVF8A167pf7l1fsn29rGYGEAXRrKE5rtbLe0LfMd
b0LbZ9k+naDwLHIh9f1SxYXxv3/HtvHPS3CdTtEKZsF6q
BongyHO0NIawn060uryQ2pbafyx3Uisrx1aJlUjOg7J6j
9dD4mlp2eWAiekAr/1gLU4PO8gNySh6/RTdhpLkTjwkpx
GuvqtV0CrWLsTtGl8JDYJA1SD7whvp1SjnxBBuC/8NQQi
D6C2vBJ0NUmxwshI6TG1iYatQf1EhFnnsH1urtNBci3Ex
qIL8ntmoOIvTkxINHDt7oBK3/hE/lVOpz0rQgNicaqnv/
gTc6vGU1RaXMMkB/lsZjr3Qd29yTBIa6O9WdZuJnao6bY
t8jr53w5NKV9x531fR8KAnNUUBOoEB6EQ2eOI7dsMuHe2
MU0Ve26jfPN03iujXpZOp/sE0nXz3Mgf1xXEHPbNTaesA
wVM5+oX5M1+jc/xhPVQEyDJXuXeNZRN9qGF/PKFi6gQT1
6iE4POYDLOBB48vf3Zp2121QWtmV7kFrS8c5n0TtiNkUm
r4AUkOHmvxfw8WkkkrO3SJDiW0gPXS952hUodw1s5TDr2
rShEoWtmec8zMIq6dZWRUdvzOoVVj8czU33j9TK2gEUQM
SRzH1RJ0JBRMBJuQSO2cIbUjQ9QLUAyDLP2E9kAgMepNo
jiGQuNaKpSugcrgsd3ZCbOW6AiO5ELibtUkPszaYKyg3c
k0B7fF6HRdu1thSkiImmtrDruYB1sQzH9XgOvYlv/903T
46F7sMMTIRk70eNiGgseKxlTEfSg1MRVUyMh4ujiFgoNv
Yu2S6h2Zx7IWTfgn/TmRm50RjjlvNgoUjUt9VwsPWmCtJ
DkKZUr89X9pPZgnThuUKboOt0b1xyxAF9XaAGU9gAYsVr
mUSt+PG60MMuTvZikMk/bn6HuyymIRa7/h8vDoH8Zggf9
Vy+d1Burv+FYCJOuStUQXtKxLkEbl1FdZAxEgJaW0uFJ3
IzEq0cr15aEJoeNIg+5wCSl2O0ThIhkidytNa4igZYRiN
QAvo2AuVhJy/5gNXX0FznLskX6TIuDnbNVCPtVbk6ckwr
V2MY9MPgLCj5Xx8wBClVsxLkbnJMbmYFTBYI7WQzUFTI9
FkgkQMOOC9BvDtV5eDNIMZXYpjUTYyyE++LvWAkRPb5W2
tqmgv3NhE2RQzpTkkqaBDL5AS
X-MS-Exchange-CrossTenant-Network-Message-Id: 1753b0f0-48f9-4bb7-9d04-08dc4a41881e
X-MS-Exchange-CrossTenant-AuthSource: AM8PR05MB7395.eurprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Mar 2024 07:27:29.9031 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 54df0b8c-c3e7-4da4-b554-24cf2be8f1dc
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: aIqtAF/FDt90+3RYv+eCbg/V4HJIdnF1sAOE05MZL3T71el7IJLx+TrXlG5oU5Z5
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR05MB10748
X-OriginatorOrg: solute.de
X-EsetResult: clean, is OK
X-EsetId: 37303A299561B1536C7466
X-C2ProcessedOrg: 6b8a70a0-c2cb-4e72-a27d-0fc2d5a54e94
X-CrossPremisesHeadersFilteredBySendConnector: solute-exc2019.solute.ka
X-OrganizationHeadersPreserved: solute-exc2019.solute.ka
X-Content-Filtered-By: Mailman/MimeDel 2.1.39
X-BeenThere: python-list@python.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: General discussion list for the Python programming language
<python-list.python.org>
List-Unsubscribe: <https://mail.python.org/mailman/options/python-list>,
<mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive: <https://mail.python.org/pipermail/python-list/>
List-Post: <mailto:python-list@python.org>
List-Help: <mailto:python-list-request@python.org?subject=help>
List-Subscribe: <https://mail.python.org/mailman/listinfo/python-list>,
<mailto:python-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID: <09efe843-195e-48c0-a9cb-6fe05e3a6921@solute.de>
X-Mailman-Original-References: <8a7231df-c30c-4fa6-9daa-546b3453b547@thomasnyberg.com>
 by: Lars Liedtke - Fri, 22 Mar 2024 07:27 UTC

Hey,

As far as I know (might be old news) flask does not support asyncio.

You would have to use a different framework, like e.g. FastAPI or similar. Maybe someone has already written "flask with asyncio" but I don't know about that.

Cheers

Lars

Lars Liedtke
Lead Developer

[Tel.] +49 721 98993-
[Fax] +49 721 98993-
[E-Mail] lal@solute.de<mailto:lal@solute.de>

solute GmbH
Zeppelinstraße 15
76185 Karlsruhe
Germany

[Marken]

Geschäftsführer | Managing Director: Dr. Thilo Gans, Bernd Vermaaten
Webseite | www.solute.de <http://www.solute.de/>
Sitz | Registered Office: Karlsruhe
Registergericht | Register Court: Amtsgericht Mannheim
Registernummer | Register No.: HRB 748044
USt-ID | VAT ID: DE234663798

Informationen zum Datenschutz | Information about privacy policy
https://www.solute.de/ger/datenschutz/grundsaetze-der-datenverarbeitung.php

Am 20.03.24 um 09:22 schrieb Thomas Nyberg via Python-list:

Hello,

I have a simple (and not working) example of what I'm trying to do. This is a simplified version of what I'm trying to achieve (obviously the background workers and finalizer functions will do more later):

`app.py`

```
import asyncio
import threading
import time
from queue import Queue

from flask import Flask

in_queue = Queue()
out_queue = Queue()

def worker():
print("worker started running")
while True:
future = in_queue.get()
print(f"worker got future: {future}")
time.sleep(5)
print("worker sleeped")
out_queue.put(future)

def finalizer():
print("finalizer started running")
while True:
future = out_queue.get()
print(f"finalizer got future: {future}")
future.set_result("completed")
print("finalizer set result")

threading.Thread(target=worker, daemon=True).start()
threading.Thread(target=finalizer, daemon=True).start()

app = Flask(__name__)

@app.route("/")
async def root():
future = asyncio.get_event_loop().create_future()
in_queue.put(future)
print(f"root put future: {future}")
result = await future
return result

if __name__ == "__main__":
app.run()
```

If I start up that server, and execute `curl http://localhost:5000`, it prints out the following in the server before hanging:

```
$ python3 app.py
worker started running
finalizer started running
* Serving Flask app 'app'
* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
* Running on http://127.0.0.1:5000
Press CTRL+C to quit
root put future: <Future pending>
worker got future: <Future pending cb=[Task.task_wakeup()]>
worker sleeped
finalizer got future: <Future pending cb=[Task.task_wakeup()]>
finalizer set result
```

Judging by what's printing out, the `final result = await future` doesn't seem to be happy here.

Maybe someone sees something obvious I'm doing wrong here? I presume I'm mixing threads and asyncio in a way I shouldn't be.

Here's some system information (just freshly installed with pip3 install flask[async] in a virtual environment for python version 3.11.2):

```
$ uname -a
Linux x1carbon 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 GNU/Linux

$ python3 -V
Python 3.11.2

$ pip3 freeze
asgiref==3.7.2
blinker==1.7.0
click==8.1.7
Flask==3.0.2
itsdangerous==2.1.2
Jinja2==3.1.3
MarkupSafe==2.1.5
Werkzeug==3.0.1
```

Thanks for any help!

Cheers,
Thomas

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor