How does the Deploy process in Golang work?

Asked

Viewed 77 times

1

Situation

In my company we are starting a technology exchange process. And one of the suggested was Golang.

And one of the biggest obstacles is the deployment process.

Experiments

In PHP, even being an interpreted language this process is very simple, an update of class to save is already perceived in the next request.

In JAVA it is very complex and even needs to restart the service. (I know there are ways to make it simpler, I will not go into this question).

Doubt

Go, because it’s a compiled language too, suffers from the same JAVA problem, or there is some way to deploy quickly, without restarting the service and practically imperceptible to the end user?

  • 1

    Hello William. Your question is quite wide (in my view). What is the scenario where you are deploying the application?

  • Searching about found this link, which I found very interesting https://gravitational.com/blog/golang-ssh-bastion-graceful-restarts/

  • I think the biggest pain is your deployment strategy, whatever java, Go, C#, Node. Take a look at this: https://tableless.com.br/tipos-de-deploy/

1 answer

2

Unfortunately it is not possible and you have to restart the service, which is relatively fast.

Golang has numerous other advantages and that’s just a detail.

If this is a critical factor, an option would be to port your application to Google Cloud Platform Appengine, which allows you to route requests between versions of the Deployed code. This minimizes downtime from seconds to milliseconds, but has the cost of re-architecture and reliance on Google’s platform.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.