this post was submitted on 13 Jul 2024
14 points (100.0% liked)

Web Development

3439 readers
1 users here now

Welcome to the web development community! This is a place to post, discuss, get help about, etc. anything related to web development

What is web development?

Web development is the process of creating websites or web applications

Rules/Guidelines

Related Communities

Wormhole

Some webdev blogsNot sure what to post in here? Want some web development related things to read?

Heres a couple blogs that have web development related content

CreditsIcon base by Delapouite under CC BY 3.0 with modifications to add a gradient

founded 1 year ago
MODERATORS
 

Hi,

I've read quite few articles about Flask Vs quart.

But the one that I found do not go deep.. :/ (and are big adept of copy/past ...)

So, beside the extra features (ASGI, HTTP/2, WebSockets..)

I'm wondering if async/await in this context give a real boost of performance ?

When a client connect to a worker I don't think that while await, will allow another client to use the same work ? or am I wrong ?

Do you have any metric ? Or if you switched from Flask to Quart di you noticed a gain ? lost ?

Thanks.

top 3 comments
sorted by: hot top controversial new old
[–] Corsair@programming.dev 2 points 2 months ago

Thank you very much for your feedback @anzo@programming.dev & @rimu@piefed.social

[–] anzo@programming.dev 2 points 4 months ago

I am yet to go search about that Quart framework, this is the first time I heard of it. Yet, I am sure this is all about scalability. If you have an app with too many concurrent users, like an e-commerce for a huge brand, then it does make a significant difference to use async. Meanwhile, most projects deal with 20 concurrent users at peak time and see no performance difference, just the cost of having to debug a sophisticated tooling. So, I'd recommend to follow simpler principles. Of course, the curiosity is there and trying out cool new stuff is fun. Oh, one more thing 1 worker can serve N concurrent users easily, it's not 1:1 in practice. Depends on the code and what you're app offers. Say for example you offer generation of PDF report, if you have 100 concurrent users at peak time, but even then only 5 ask for such a report for downloading, you can get away with 2 workers on a VM with just 1 cpu easily.

[–] rimu@piefed.social 2 points 4 months ago

A few months ago I evaluated Quart to see if it would be a better option for https://piefed.social. It was easy to port my code from Flask to Quart and everything was mostly working within an hour or two. In the end I decided not to proceed with Quart because the performance gains only happen when there are many concurrent users and that time might never come. However the extra complexity and potential for problems was there immediately, so I just stayed with trusty old Flask. It's good to know that switching to Quart is straightforward if I need it in the future.