‹ BackHN Continuity

Thread

Go Concurrency Distilled

402 points · 187 comments · chmaynard

  1. SamInTheShell · · focus · HN ↗
    The concurrency and threading in Go just feels like magic compared to every other language. I'm a goroutine addict and I refuse to be rehabilitated.

    Just from observations over the years, I don't think there's any other language quite like this, in terms of how things can end up happening in any thread.

    1. chimbambum · · focus · HN ↗
      any downsides to it in your experience?
      1. Joel_Mckay · · focus · HN ↗
        Go and Julia are fun languages.

        In production, Go has proven solid for several years. It is best when used with the native code people ported.

        There are only two issues I encountered:

        1. getting the legacy ancient C source meta-circular Go compiler working to port the Go boot-strap compiler upgrade chain is a kick in the pants. However, once it is on a architecture it has proven rather resilient.

        2. memory limited systems can develop reliability issues, as Go programs will often ungracefully throw hard to diagnose unrelated errors during each crash. A good metric is 3:1 of your average load as a safety margin (if you see 2GiB in average RAM use, make sure to over-provision the host with 8GiB RAM etc.)

        Other than the above short list of edge cases, if you join a pure Go project it is usually pretty reliable. Most community folks interested in the language seem fairly competent at building stuff that is fun. =3

        1. ehe78qhe · · focus · HN ↗
          > if you see 2GiB in average RAM use, make sure to over-provision the host with 8GiB RAM

          in this economy?

          1. Joel_Mckay · · focus · HN ↗
            What is unfolding has nothing to do with rational markets. =3

            <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=T-oXyXwD6sE" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=T-oXyXwD6sE

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.