Earlier quoted context omitted.
I'm of course speaking from an outsider's point of view, but do you think PHP was a good option, or was it a "fitting a square peg into a round hole" situation?
> but do you think PHP was a good option, or was it a "fitting a square peg into a round hole" situation? Facebook was founded in 2004 . Whatever fancy tech you're thinking that would fit the round hole, it didn't exist then. They also never thought it would serve a couple billion of users one day, so they built it in whatever they had and knew at the time. Same for Instagram and Python (they started with Django).
Backend of Meta Threads is built with Python 3.10
251–260 of 458 posts
Re: Backend of Meta Threads is built with Python 3.10
#252Earlier quoted context omitted.
It may not be because of Python, but Thread is definitely not ready for the current load. Few hours ago no one could access to Zuck's profile page, and he had to take it to private to hide the issue.
Tweets load very slowly on my end. So slow I thought there was a js error on my end, you know, like when you get a never ending spinner animation because there was an unhandled exception thrown.
Re: Backend of Meta Threads is built with Python 3.10
#253Earlier quoted context omitted.
Interesting and lovely to hear they decided to use Django. What is your source, though?
How is Django now? I’m a long time python dev (data eng space) but new-ish to web dev. I started a Flask project 2 years ago and found it to be pretty full of footguns, mixed messaging on best practices for scalable apps, and the ecosystem feels overbloated with vapor ware extensions. Is this just a Flask problem, or does Django have the same issues?
Re: Backend of Meta Threads is built with Python 3.10
#254I worked on Cinder, and on the web server. Happy to answer technical questions if any :)
Re: Backend of Meta Threads is built with Python 3.10
#255Re: Backend of Meta Threads is built with Python 3.10
#256Earlier quoted context omitted.
Curiously, VKontakte also started from PHP+MySQL but went another way. PHP is compiled ahead of time with something called KittenPHP. It's open-source. For databases they switched some parts to their own bespoke solutions in C that talk with PHP over the memcached protocol. These are called KittenDB (or "engines") for the simple single-purpose ones, and there was also a more generic MySQL replacement in development w…
I’m not sure why someone of facebook’s scale would want JIT instead of AOT. That’s a lot of servers all JITing the same thing that could be done once at build time.
Also, Facebook used to do ahead of time compilation (HPHPc) but eventually HHVM managed to outperform it.
Re: Backend of Meta Threads is built with Python 3.10
#257Earlier quoted context omitted.
Curiously, VKontakte also started from PHP+MySQL but went another way. PHP is compiled ahead of time with something called KittenPHP. It's open-source. For databases they switched some parts to their own bespoke solutions in C that talk with PHP over the memcached protocol. These are called KittenDB (or "engines") for the simple single-purpose ones, and there was also a more generic MySQL replacement in development w…
I’m not sure why someone of facebook’s scale would want JIT instead of AOT. That’s a lot of servers all JITing the same thing that could be done once at build time.
Re: Backend of Meta Threads is built with Python 3.10
#258Surely it makes massive difference to hardware utilization?
I like Python and javascript but there’s perfectly fine tools around now for building systems that allow one server to do a lot more.
They say you should not prematurely optimize. Equally you should not be prematurely unoptimised.
Re: Backend of Meta Threads is built with Python 3.10
#259For the “Python isn’t fast enough for production backend” crowd from the same company that brought you the largest social network built on PHP + MySQL.
Re: Backend of Meta Threads is built with Python 3.10
#260If you know you’ve got gigantic scale why would you not use a compiled language? Surely it makes massive difference to hardware utilization? I like Python and javascript but there’s perfectly fine tools around now for building systems that allow one server to do a lot more. They say you should not prematurely optimize. Equally you should not be prematurely unoptimised.
It's better, but not the limiting factor.