Skip to content
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

Gitcoin is slow (rewrite everything in D?) #6605

Closed
vporton opened this issue May 6, 2020 · 2 comments
Closed

Gitcoin is slow (rewrite everything in D?) #6605

vporton opened this issue May 6, 2020 · 2 comments

Comments

@vporton
Copy link
Contributor

vporton commented May 6, 2020

User Story

I am a contributor to GitCoin.

Why Is this Needed

It takes much time to start it at localhost. Loading pages on my localhost (i5+16GB DDR3) is slow (especially when I load the first page after docker-compose start). I suppose it is not enough fast on the real server, too.

As a radical solution I propose to rewrite GitCoin in D programming language instead of Python.

It is not something unexpected to become 500 times faster (not really, because the DB remains the same). You could also save some carbon for electricity of your server. D is essentially as powerful as Python but hundreds of times faster. D is also more reliable by using static types and more advanced asserts than in Python. We could develop and deploy Python and D versions of the site in parallel, having the same DB for both. (It requires carefully checking that every DB migration in duplicated in both languages, but otherwise should be no problem), eventually replacing the old site with the new one.

For compilation of D not to take too much time, we may consider to split GotCoin into several modules (like micorservices), for example grants would be a separate executable and route it with some kind of HTTP proxy (Apache, Nginx, or our own specialized proxy written in D).

@owocki
Copy link
Contributor

owocki commented May 6, 2020 via email

@thelostone-mc
Copy link
Member

And also stop the web_chat_1 container !
Things get super slow if you haven't configured chat`

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants