4
wawa
5y

Hey devRant!

University student here. I’m trying to learn how to build scalable applications. I figured what better way to learn, than to ask this community!

So, some questions:
1. What is a good stack for scalability
2. Regarding microservices, when and where should you use node, .net, and go
3. I hear much talk about docker and kubernetes... how would you use these concerning microservices

Thanks!

Comments
  • 2
    1. Difficult question. What is scalable enough for you? You would be surprised how many requests / second properly written code can handle even in "slow" languages.
    2. You _could_ use every language for every purpose.
    From my experience (can only speak about server side and backend and can't tell you about Node):
    - Go: Compiled language. There is one single static binary, making it easier to deploy: Never care about dependencies (shared libraries, etc.) again. A complete container could be made out of this single file.
    - .NET: While there is the cross plattform .NET core (and Xamarin for mobile), one of main highlights is the integration within the Microsoft world: Windows-API integration, native Windows authentication, SQLServer, etc.
  • 1
    Simple:
  • 1
    Seriously though, docker is a big part of this. Each Microservice is usually in a separate container, with some kind of load balancing between them and to public ports.
    Kubernetes is a tool for scaling and can be used to automatically provisioning containers based on certain factors like currently active users etc.

    Containers make it pretty easy to deploy things, also it takes a lot of the hassle which is going into recreating the same environment.
  • 0
    @iamavalos nah
  • 1
    @iamavalos I believe "Dockerise" is the verb 😁
  • 0
    (not even kidding - it's used like that in loads of articles)
  • 0
    1: When done right you cam make scaleable applications in all languages. Just focus on making a solid foundation of modular code.

    2. There are 2 main ways of handrilg url requests. By writing your own router to execute the path/file instructions (node, go) or by using an standard file base router like apache2 ir iis what handles the rouring and does foreward the url request to the right file whitch does contain the code to be executed.

    In the first it is good practice to use path variables and in the second to use url parameters it doesnt matter what you use as long as the stucture of your application is understandable and it works.

    3. I dont have experience docker and compareable products.
Add Comment