Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Microservices and Service Fabric?

Microservices and Service Fabric?

Scheduled Pinned Locked Moved The Lounge
csharpjavascriptlinqcomsysadmin
27 Posts 10 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Sander RosselS Offline
    Sander RosselS Offline
    Sander Rossel
    wrote on last edited by
    #1

    It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

    Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

    G A R M A 9 Replies Last reply
    0
    • Sander RosselS Sander Rossel

      It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

      Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

      G Offline
      G Offline
      glennPattonWork3
      wrote on last edited by
      #2

      Quote:

      Microservices on Service Fabric in Azure

      OK I am now thinking someone at M$ is naming new products from the Laura Ashley catalogue.

      1 Reply Last reply
      0
      • Sander RosselS Sander Rossel

        It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

        Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

        A Offline
        A Offline
        Afzaal Ahmad Zeeshan
        wrote on last edited by
        #3

        Sander, why Service Fabric? Why not Kubernetes? The thing is Service Fabric apps are easier, but the problem is they are strictly tied to the Service Fabric runtime. This can be a benefit, in cases where other apps are also deployed and managed by Service Fabric. But leaving that framework can give you accessibility of a wider ecosystem. Service Fabric was open sourced, yet, it doesn't rule out the case where the app has to written for Service Fabric. Kubernetes can help you leave this hurdle and write services independent of the underlying platform. [Azure Kubernetes Service (AKS) Documentation - Tutorials, API Reference | Microsoft Docs](https://docs.microsoft.com/en-us/azure/aks/) I personally use Azure Container Service for Kubernetes, and I think that is quite simple and easier. Just build Docker images, deploy them as services on Kubernetes. Your 4-5 services can be easily deployed on Kubernetes, and rest is just your YAML file in Kubernetes telling the engine what to do.

        The shit I complain about It's like there ain't a cloud in the sky and it's raining out - Eminem ~! Firewall !~

        Sander RosselS N 2 Replies Last reply
        0
        • A Afzaal Ahmad Zeeshan

          Sander, why Service Fabric? Why not Kubernetes? The thing is Service Fabric apps are easier, but the problem is they are strictly tied to the Service Fabric runtime. This can be a benefit, in cases where other apps are also deployed and managed by Service Fabric. But leaving that framework can give you accessibility of a wider ecosystem. Service Fabric was open sourced, yet, it doesn't rule out the case where the app has to written for Service Fabric. Kubernetes can help you leave this hurdle and write services independent of the underlying platform. [Azure Kubernetes Service (AKS) Documentation - Tutorials, API Reference | Microsoft Docs](https://docs.microsoft.com/en-us/azure/aks/) I personally use Azure Container Service for Kubernetes, and I think that is quite simple and easier. Just build Docker images, deploy them as services on Kubernetes. Your 4-5 services can be easily deployed on Kubernetes, and rest is just your YAML file in Kubernetes telling the engine what to do.

          The shit I complain about It's like there ain't a cloud in the sky and it's raining out - Eminem ~! Firewall !~

          Sander RosselS Offline
          Sander RosselS Offline
          Sander Rossel
          wrote on last edited by
          #4

          Service Fabric because it's Microsoft and Azure and everything I currently do is Microsoft and Azure. I'm not using Docker at all. I'm a single developer on a pretty big project so if Service Fabric is easier then I'm all for it :D For the moment I'd rather learn Service Fabric than Kubernetes AND Docker... Good tip though, I'll keep it in mind for my next Microservices project :) By the way (unrelated), a few weeks back I Googled something and I stumbled upon a post that I followed and which solved my problem. When I reached the bottom and the "about the author" it turned out to be you! :D I can't remember what it was, but thanks for solving the problem I had at the time :thumbsup:

          Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

          1 Reply Last reply
          0
          • Sander RosselS Sander Rossel

            It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

            Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

            R Offline
            R Offline
            RickZeeland
            wrote on last edited by
            #5

            Sorry, no experience with that, but maybe you will find the Dzone website interesting: https://dzone.com/ It has lots of information about DevOps, not very Microsoft orientated though, mostly about Docker and Kubernetes :( But I found something about Service Fabric: https://dzone.com/articles/microsoft-azure-service-fabric-as-a-platform-for-d

            Sander RosselS 1 Reply Last reply
            0
            • Sander RosselS Sander Rossel

              It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

              Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

              M Offline
              M Offline
              Marc Clifton
              wrote on last edited by
              #6

              It always amazes me how the corporate world can take an incredibly simple and elegant concept like microservices and turn it into a bloatware of money grubbing terminology and overly complex implementation and management layers. But then again, how else are they going to make money?

              Latest Article - Building a Prototype Web-Based Diagramming Tool with SVG and Javascript Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

              Sander RosselS 1 Reply Last reply
              0
              • M Marc Clifton

                It always amazes me how the corporate world can take an incredibly simple and elegant concept like microservices and turn it into a bloatware of money grubbing terminology and overly complex implementation and management layers. But then again, how else are they going to make money?

                Latest Article - Building a Prototype Web-Based Diagramming Tool with SVG and Javascript Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                Sander RosselS Offline
                Sander RosselS Offline
                Sander Rossel
                wrote on last edited by
                #7

                Marc Clifton wrote:

                an incredibly simple and elegant concept like microservices

                How is scaling up and down servers and spinning up new instances dynamically incredibly simple? :confused:

                Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                M 1 Reply Last reply
                0
                • R RickZeeland

                  Sorry, no experience with that, but maybe you will find the Dzone website interesting: https://dzone.com/ It has lots of information about DevOps, not very Microsoft orientated though, mostly about Docker and Kubernetes :( But I found something about Service Fabric: https://dzone.com/articles/microsoft-azure-service-fabric-as-a-platform-for-d

                  Sander RosselS Offline
                  Sander RosselS Offline
                  Sander Rossel
                  wrote on last edited by
                  #8

                  Yeah, I get there from time to time :thumbsup: Article looks good (especially the image with the misspelled "Stateful", including squiggly red line to point that out :laugh:)

                  Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                  1 Reply Last reply
                  0
                  • Sander RosselS Sander Rossel

                    It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

                    Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                    R Offline
                    R Offline
                    RickZeeland
                    wrote on last edited by
                    #9

                    Forgot to look on CP, there's an interesting article: Azure Service Fabric demo[^] "Why don't you go where fashion sits, putting on the Ritz" :-\

                    1 Reply Last reply
                    0
                    • Sander RosselS Sander Rossel

                      It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

                      Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                      A Offline
                      A Offline
                      adambl
                      wrote on last edited by
                      #10

                      We have been using Service Fabric to host microservices for about a year while now. We created a few Stateless services with minimal use of the SF SDK so most of the time when developing you can ignore the fact they are hosted in SF, and moving away from SF should not be too expensive. You can run the SF host on your dev machine, but because we have kept the SF references to just the 'shell' we can also run the services locally in a console host if you want, which makes dev a little easier. Our deployments are via Octopus, which does have some built-in support for SF deployments, not great but you can get it running smoothly with a little fiddling. Later versions of Octopus might be better at this now. What I really like about SF is that zero-downtime deployments are easy and it manages the drain-stopping of load balancer for you. You can package up multiple services into single application package that is deployed as a unit (and rolled back as a unit in the case of failure), which is great, but of course, if you want that you should be thinking of containers anyway. So, we are looking at moving to containers this year (it is the MS recommended direction of travel too). You can currently host containers in SF but it is a bit awkward and there is some new stuff in the pipeline (Seabreeze) that supports server-less hosting of containers which is where I think we will end up. Adam

                      Sander RosselS 1 Reply Last reply
                      0
                      • Sander RosselS Sander Rossel

                        Marc Clifton wrote:

                        an incredibly simple and elegant concept like microservices

                        How is scaling up and down servers and spinning up new instances dynamically incredibly simple? :confused:

                        Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                        M Offline
                        M Offline
                        Marc Clifton
                        wrote on last edited by
                        #11

                        Sander Rossel wrote:

                        How is scaling up and down servers and spinning up new instances dynamically incredibly simple?

                        What does that have to do with microservices? (It's quite possible I'm demonstrating my ignorance of the topic here -- foot in mouth time?)

                        Latest Article - Building a Prototype Web-Based Diagramming Tool with SVG and Javascript Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                        A Sander RosselS 2 Replies Last reply
                        0
                        • Sander RosselS Sander Rossel

                          It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

                          Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                          A Offline
                          A Offline
                          adambl
                          wrote on last edited by
                          #12

                          Also, if you haven't seen this, its worth a look. Lots of code and articles to get you started: azure-content/articles/service-fabric at master · uglide/azure-content · GitHub[^], including this one which sounds applicable to you, for your APIs: azure-content/service-fabric-reliable-services-communication-webapi.md at master · uglide/azure-content · GitHub[^] Adam

                          Sander RosselS 1 Reply Last reply
                          0
                          • M Marc Clifton

                            Sander Rossel wrote:

                            How is scaling up and down servers and spinning up new instances dynamically incredibly simple?

                            What does that have to do with microservices? (It's quite possible I'm demonstrating my ignorance of the topic here -- foot in mouth time?)

                            Latest Article - Building a Prototype Web-Based Diagramming Tool with SVG and Javascript Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                            A Offline
                            A Offline
                            adambl
                            wrote on last edited by
                            #13

                            SF allows you to automatically spin up and shut down VMs running your microservice instances, based on a schedule or just reacting to periods of heavy use. Coupled with auto-scaling of storage (e.g. CosmosDB) you can meet the demands of peak usage whilst keeping the hosting costs to a minimum. Adam

                            N 1 Reply Last reply
                            0
                            • A adambl

                              SF allows you to automatically spin up and shut down VMs running your microservice instances, based on a schedule or just reacting to periods of heavy use. Coupled with auto-scaling of storage (e.g. CosmosDB) you can meet the demands of peak usage whilst keeping the hosting costs to a minimum. Adam

                              N Offline
                              N Offline
                              Nelek
                              wrote on last edited by
                              #14

                              thanks for the use case :thumbsup:

                              M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.

                              A 1 Reply Last reply
                              0
                              • N Nelek

                                thanks for the use case :thumbsup:

                                M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.

                                A Offline
                                A Offline
                                adambl
                                wrote on last edited by
                                #15

                                I've just realised that it reads like a sales pitch from MS... not intentional!

                                N 1 Reply Last reply
                                0
                                • A adambl

                                  I've just realised that it reads like a sales pitch from MS... not intentional!

                                  N Offline
                                  N Offline
                                  Nelek
                                  wrote on last edited by
                                  #16

                                  adambl wrote:

                                  not intentional!

                                  Supposed so

                                  M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.

                                  1 Reply Last reply
                                  0
                                  • Sander RosselS Sander Rossel

                                    It seems my current project needs to hop on the Microservices boat. Does anyone have experience with Microservices on Service Fabric in Azure? If so, how's the learning curve, what are the gotcha's, and how's your overall experience? For now it seems I'll have four or maybe five services of which one or two will be web APIs. The others will read from a Service Bus queue.

                                    Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                                    M Offline
                                    M Offline
                                    mkolter
                                    wrote on last edited by
                                    #17

                                    I started working with Service Fabric before it was generally available. I built (but not yet released) a consumer, cloud-based, mobile-first app on top of service fabric. I was first drawn to SF by the coolness and speed of retaining application data in memory (stateful reliable services). Once I became comfortable with it as a whole I decided to build a new consumer SaaS app on top of it. It has great scalability and its zero downtime abilities made it a great fit for me. This has been a one-man project. I'm trying to finish the product and build a company. Learning curve: There's quite a bit to know and keep in your head. And it crosses several disciplines that are not strictly coding related: networking, security, capacity planning, disaster recovery, etc. Learning SF was drawn out over a long period of time for me because it started out as a side project. Gotchas: Early on there were some edge cases that weren't handled well (or at all), but that's much better now. SF is still relatively new so sometimes google isn't much help if you have a problem in an unusual use case/situation. It is MUCH better than it used to be though. And SF team members monitor Stack Overflow and github so there is assistance available. The biggest gotcha I have experienced though is the number of external dependencies that exist in my project. This is NOT specific to SF, but SF has contributed to it. Overall experience: Good. I recommend it. SF is a big topic. Feel free to contact me privately for more specific discussion or guidance. Have fun! :-) Mike

                                    Sander RosselS 1 Reply Last reply
                                    0
                                    • A Afzaal Ahmad Zeeshan

                                      Sander, why Service Fabric? Why not Kubernetes? The thing is Service Fabric apps are easier, but the problem is they are strictly tied to the Service Fabric runtime. This can be a benefit, in cases where other apps are also deployed and managed by Service Fabric. But leaving that framework can give you accessibility of a wider ecosystem. Service Fabric was open sourced, yet, it doesn't rule out the case where the app has to written for Service Fabric. Kubernetes can help you leave this hurdle and write services independent of the underlying platform. [Azure Kubernetes Service (AKS) Documentation - Tutorials, API Reference | Microsoft Docs](https://docs.microsoft.com/en-us/azure/aks/) I personally use Azure Container Service for Kubernetes, and I think that is quite simple and easier. Just build Docker images, deploy them as services on Kubernetes. Your 4-5 services can be easily deployed on Kubernetes, and rest is just your YAML file in Kubernetes telling the engine what to do.

                                      The shit I complain about It's like there ain't a cloud in the sky and it's raining out - Eminem ~! Firewall !~

                                      N Offline
                                      N Offline
                                      Nigel Page
                                      wrote on last edited by
                                      #18

                                      Platform independence is a myth that's been propagated throughout the history of software. Using Docker makes you just as dependent upon Docker as using Service fabric makes you dependent upon Azure. Whatever you use you're taking a dependency on it, so pick what you like the look of and are most comfortable with and move on. Not voting for Docker or Service Fabric here, just developer pragmatism.

                                      1 Reply Last reply
                                      0
                                      • M mkolter

                                        I started working with Service Fabric before it was generally available. I built (but not yet released) a consumer, cloud-based, mobile-first app on top of service fabric. I was first drawn to SF by the coolness and speed of retaining application data in memory (stateful reliable services). Once I became comfortable with it as a whole I decided to build a new consumer SaaS app on top of it. It has great scalability and its zero downtime abilities made it a great fit for me. This has been a one-man project. I'm trying to finish the product and build a company. Learning curve: There's quite a bit to know and keep in your head. And it crosses several disciplines that are not strictly coding related: networking, security, capacity planning, disaster recovery, etc. Learning SF was drawn out over a long period of time for me because it started out as a side project. Gotchas: Early on there were some edge cases that weren't handled well (or at all), but that's much better now. SF is still relatively new so sometimes google isn't much help if you have a problem in an unusual use case/situation. It is MUCH better than it used to be though. And SF team members monitor Stack Overflow and github so there is assistance available. The biggest gotcha I have experienced though is the number of external dependencies that exist in my project. This is NOT specific to SF, but SF has contributed to it. Overall experience: Good. I recommend it. SF is a big topic. Feel free to contact me privately for more specific discussion or guidance. Have fun! :-) Mike

                                        Sander RosselS Offline
                                        Sander RosselS Offline
                                        Sander Rossel
                                        wrote on last edited by
                                        #19

                                        Cool, sounds good! What struck me is that SF is not included in MS exams 70-532, 533 and 535 (formerly 534). I'm probably going to start using it in the next few weeks or so, if I have any questions I'll be sure to contact you, thanks :thumbsup:

                                        Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                                        1 Reply Last reply
                                        0
                                        • A adambl

                                          Also, if you haven't seen this, its worth a look. Lots of code and articles to get you started: azure-content/articles/service-fabric at master · uglide/azure-content · GitHub[^], including this one which sounds applicable to you, for your APIs: azure-content/service-fabric-reliable-services-communication-webapi.md at master · uglide/azure-content · GitHub[^] Adam

                                          Sander RosselS Offline
                                          Sander RosselS Offline
                                          Sander Rossel
                                          wrote on last edited by
                                          #20

                                          Nice ones, thanks :thumbsup:

                                          Best, Sander Continuous Integration, Delivery, and Deployment arrgh.js - Bringing LINQ to JavaScript Object-Oriented Programming in C# Succinctly

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups