A blog post we recently published talking about scaling up our operations. I love using standard tools (Django, Python, Postgres) to achieve this. Definitely shows that you don't need fancy tools until you get huge -- and here is a longer version of that story.
Has your experience led you to identify any areas for improvement within Django and/or Python?
(enjoyed the post, and I like your philosophy of using simple widely available tools; I'm hopeful that any changes you're able to provide back will have a kind of community-benefit flywheel effect)
Honestly, not really. A lot of the core issues that we'd hit were solved years ago (eg. multiple DB's for a read replica, JSON in the DB). I think it's one of the big benefits of using standard "boring" tools, that they do most everything we need them to do. We're not anxiously waiting on a new release, we're happily using new features implemented 5 years ago when we need them.
We've run some tests with PyPy on Read the Docs itself but not for ads. For Sphinx documentation builds, builds took around ~50% of the time. It was especially pronounced on builds with large numbers of doc files (hundreds) and therefore complicated side navigation.
Comments
A blog post we recently published talking about scaling up our operations. I love using standard tools (Django, Python, Postgres) to achieve this. Definitely shows that you don't need fancy tools until you get huge -- and here is a longer version of that story.
Has your experience led you to identify any areas for improvement within Django and/or Python?
(enjoyed the post, and I like your philosophy of using simple widely available tools; I'm hopeful that any changes you're able to provide back will have a kind of community-benefit flywheel effect)
Honestly, not really. A lot of the core issues that we'd hit were solved years ago (eg. multiple DB's for a read replica, JSON in the DB). I think it's one of the big benefits of using standard "boring" tools, that they do most everything we need them to do. We're not anxiously waiting on a new release, we're happily using new features implemented 5 years ago when we need them.
Thanks - that's a good philosophy and position to be in :)
I get that python is under 30% of your profiled time, but just wondering if you tried PyPy?
We've run some tests with PyPy on Read the Docs itself but not for ads. For Sphinx documentation builds, builds took around ~50% of the time. It was especially pronounced on builds with large numbers of doc files (hundreds) and therefore complicated side navigation.
Right, Sphinx itself is not JIT friendly, but I thing django should be faster