Building simple, standalone http services with good performances seems to me what those two projects (proxygen and golang) are really about.
Now the question is, how much faster using C++ is, and how much safer and faster writing golang is...
Building simple, standalone http services with good performances seems to me what those two projects (proxygen and golang) are really about.
Now the question is, how much faster using C++ is, and how much safer and faster writing golang is...
Plus, there are still lots of scenarios where Go tooling still doesn't provide support for. They will eventually, but not if you are starting a project today.
When most laypeople think about "Google", they probably mean the search engine. I cannot imagine the serving system of Google - the part that actually retrieves the results and ranks them - ever being written in anything but C++. The scale of data that it operates on is just too large, the complexity of the code too high, and the CPU budget per request too small.
Now, there are other binaries in the search serving stack that I think should ideally be written in Go. I said as much when I was at Google, though I doubt it'd ever happen simply because of inertia. But that's probably not what people are thinking of when they say "Google-scale".
Source: I worked in search for 5+ years.
I guess the "hotspot" would be the code that has to merge the top results from the different nodes and actually deliver top rated 10 items to the user?