Hi @deepakdinesh1123 (@smithdc1)
Sorry for the slow follow-up here — I was taken-up with other issues.
First off, really great progress so far!
Then, a couple of thoughts for the rest of the time.
Wrapping up ASV work
Let’s make sure this is in a really good state.
Ideally we want folks to be able to pick it up and keep working on it, and we want it running regularly, and so on.
It’s on my list for this week/next week to have another sit down with it, and so I’ll comment more concretely then, but I’d like us to make sure we keep enough focus on this part of the project to get it to a good state to hand-off at the end.
The Locust project
So let me show you some tickets:
There are more, but let’s start here. (Have a read, see what you think, let me know if/when you have questions.)
The task here is to get some idea of the performance impact of adding async signals, or allowing streaming responses under ASGI (with both the existing response classes, and new async specific ones).
So the task if to create a test project, with example views — for, say, a streaming response (#32798 there) — and run it under WSGI (gunicorn with 4 pre-forked workers, say) and then compare that to running it under ASGI with the proposed changes. For that ticket we can then make a decent judgement as to whether it’s too slow to recommend, or not.
For the signals ticket, probably just a list and detail view, and a few fixtures, and then hitting that with a decent amount of traffic to see the overhead.
Make sense?
Up and running with locust isn’t too hard, but again we’d want to add some breadcrumbs (as How-To docs, in a README is fine) for others to follow.
It should be:
- Quite good fun.
- Not too hard… — got to write the views and so on, but it’s basic Django in the main. ()
- And a great resource for seeing how different options play out.
This second part is under-specified, so I’d focus on whether we can get concrete answers to those tickets there. Again, much better something small and complete than too broad but not finished.
I’d suggest to start, create a new repo, see how far you get quickly, and then reach out for input. I have thought some about this, but haven’t had the time to push it through, which is what’s great about GSoC, in that hopefully you do!
Given those thoughts, I don’t really mind where you want to focus. Again I think you’re doing super, and it’s a question of how best we can support you in the remaining time.
Thoughts?
Kind Regards,
Carlton