有人可以解释一下GO lang的体系结构吗?它比Nodejs更快吗?如果可以,那么它使它更快吗[关闭]

Can some one explain the architecture of GO lang, Is it faster compared to Nodejs & if so what makes it faster and Go is developed using C/C++, So, does GO beats out in performance when compared to C/C++ and is the only difference between C/C++ & Go is all about more functions which makes developer easy to code using GO?

Note that Go 1.5 will feature its compiler, assembler, linker, and runtime written entirely in Go.

The goal is to have Go written entirely in Go and to rid the codebase of any C code. The only exception to the C code is for Cgo.

(See Go 1.5 Bootstrap plan)

The speed is more about about the native code generated, and the simplicity of the language (no genericity means less dynamic data to keep track of)

Go hasn't been always fast: "Why is go language so slow?".
It improves incrementally, notably on the garbage collection side, and stack management side.


Uvelichitel mentions below x64 Ubuntu : Intel® Q6600® one core -- Computer Language Benchmarks Game


As for "Golang Architecture", this doesn't really apply here (as detailed in this answer):

Go has no VM like the Java JVM. It compiles straight to metal like c/c++.

The Go 1.3 Linker overhaul mentions:

The current linker performs two separable tasks.

  • First, it translates an input stream of pseudo-instructions into executable code and data blocks, along with a list of relocations.
  • Second, it deletes dead code, merges what’s left into a single image, resolves relocations, and generates a few whole-program data structures such as the runtime symbol table.