Hello, a question to those who have already worked with the ASP.NET Core MVC platform. Previously, I worked with ASP.NET MVC, but now I have acquired literature on a new platform and, after reading it, I plan to start developing it. Of course no one knows the future, but I think the overall picture can already be described. How much fremverk can undergo changes, so that after the new release would not have to relearn and rewrite the project? How much cheese is the platform? How many pitfalls when working with it, if possible - more detailed? And in general, is it ready for production, for example, for developing a corporate portal?

Closed due to the fact that it is necessary to reformulate the question so that it was possible to give an objectively correct answer by the participants ߊߚߤߘ , mymedia , aleksandr barakin , Kromster , andreymal 16 Oct '17 at 9:25 .

The question gives rise to endless debates and discussions based not on knowledge, but on opinions. To get an answer, rephrase your question so that it can be given an unambiguously correct answer, or delete the question altogether. If the question can be reformulated according to the rules set out in the certificate , edit it .

  • About the pitfalls: I wanted to try it myself in my test project, but I came across a serious obstacle: .NET Core was not designed to work in offline environments. Those. if your working machines do not have access to the Internet and there is no proxy, then get ready to dance with a tambourine to make it work properly. Accordingly, on the build server there will be the same problems. - klutch1991
  • and tell me what kind of literature purchased? - Qutrix
  • Adam Freeman ASP.NET Core. I read from the same author the edition for ASP.NET MVC 4 - it was pretty well stated. - Denis Shevchenko
  • one
    @ klutch1991 no dancing. Its nuget repository is enough. - Pavel Mayorov
  • one
    @PavelMayorov and we have a question about how to properly raise and configure this repository? If not, would you like to write it? - Nick Volynkin

1 answer 1

I think the answer is yes. ASP.Core MVC is ready for use in production.

As evidence, you can cite the report of Denis Ivanov from 2GIS at the DotNext 2017 conference ( https://www.youtube.com/watch?v=ngcigr_8oxw )

ASP.NET Core Linux Applications in Production

As a summary I quote excerpts from the slides of the report.

Video Advertising Service

Requirements:

  • 99.99% availability in the world
  • 200ms response time

Why Linux :

  • Existing on-premise platform

  • -GitLab CI

  • -CI starting kit based on make

  • -Docker hub & docker images

  • Components on any technology stack

  • Kubernetes

Support of the principle of "12-factor application"

  • 1) One application - one repository

  • 2) Dependencies - along with the application

  • 3) Configuration through the environment

  • 4) Services used as resources

  • 5) Build, image creation and execution phases are separated.

  • 6) Services - separate stateless processes

  • 7) Port binding

  • 8) Scaling through processes

  • 9) Quick stop and start processes

  • 10) The environments are as similar as possible.

  • 11) Logging to stdout

  • 12) Administrative processes

.NET Core. Self-contained deployment

  • Complete dependency management

  • Explicitly specifying the platform when building (win10-x64 / ubuntu.14.04-x64 / osx.10.12-x64)

  • Only required framework

Instead of conclusion

  • Do not be afraid to use .NET Core in production

  • Do not be afraid to use Linux and .NET Core

  • Docker and Kubernetes make life a lot easier.

  • Write effective code correctly