-
Notifications
You must be signed in to change notification settings - Fork 113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor Kedro-Viz FAST API app creation #2061
Comments
Is it a good moment to ask whether it still makes sense to have a GraphQL and a REST API? :) |
Are you suggesting to move completely for GraphQL ? :D I am not sure if there is an active discussion to remove Experiment Tracking completely. If so, we can definitely scrape the SQLite store and GraphQL. That would be a refactor PR to remove ET completely (remove FE too ?) . |
Thanks @ravi-kumar-pilla, that's useful. So GraphQL exists solely for the Experiment Tracking part these days? There's an active proposal yes #1831 My point is that, if we're to embark on a big refactor, the less code you have the fewer things you have to refactor 🙃 At the very least we could think of making it optional. Let's discuss that in #2079 |
Description
On Kedro-Viz we have a FAST API app in the backend and we use uvicorn web server to host the app. We register our routers and also install corresponding dependencies.
We include 2 routers before we start the app -
We also do some expensive operations like SQLiteStore initialization, import modules like NetworkX, Azure related imports for DeployerFactory.
These can slow down the app and increase the start time.
Context
We need to refactor the app creation phase and also defer unwanted imports to improve the app start time.
Possible Implementation
To improve
kedro viz run
time afterrun
command is reached, we can explore and experiment with changes I started here based on the flame graphSome of the observations made while working on improving performance for Kedro-Viz -
/deploy
call is madeuvicorn.run
takes ~10sec to make the app available. Need to experiment by making a lighter app, reducing api routes and dependencies.Checklist
The text was updated successfully, but these errors were encountered: