SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Desktop &
ASP.NET.NET Windows StoreBrowsers &
Win Phone
ASP.NET 5
Framework
Silverlight
.NET Core Multi-
Framework
Windows
Mobile
Compact
Framework
.NET Framework 4.6 .NET Core 1.0
Full featured .NET Framework implementation
on Windows
Cross-platform implementation of .NET
developed in the open.
Next gen JIT (RyuJIT)
SIMD
Runtime
Components Compilers
Languages innovation
.NET Compiler Platform
.NET Core 1.0 Libraries
.NET Framework 4.6 Libraries
NuGet packages
.NET Framework 4.6 .NET Core 1.0
.NET Framework 4.6 .NET Core 1.0
Next gen JIT (RyuJIT)
SIMD
Runtime
Components Compilers
Languages innovation
.NET Compiler Platform
.NET Core 1.0 Libraries
.NET Framework 4.6 Libraries
NuGet packages
Next gen JIT (RyuJIT)
SIMD
Runtime
Components Compilers
Languages innovation
.NET Compiler Platform
.NET Core 1.0 Libraries
.NET Framework 4.6 Libraries
NuGet packages
.NET Framework 4.6 .NET Core 1.0
ASP.NET and .NET 2015
ASP.NET and .NET 2015
ASP.NET and .NET 2015
ASP.NET
Core 1.0
ASP.NET
4.6
OpenSource
Operating System
Runtime Loader
Runtime
Platform Libraries
Application Host
Web Server
Application
Frameworks
Libraries
Application
Windows
IIS: WebEngine4.dll
Exe: OS
.NET CLR
.NET BCL & FCL
System.Web
IIS
FCL, GAC, NuGet
Loose, GAC, NuGet
MSBuild -> csc.exe
CodeDOM -> csc.exe
Windows, OSX, Linux
DNX
.NET CLR
.NET Core CLR
.NET BCL & FCL
.NET on NuGet
DNX
IIS, HTTP.SYS
Kestrel
NuGet
NuGet
DNX (Roslyn)
Lap Around ASP.NET Core
project
ASP.NET 4.6
‱ Improved App startup / Pre-compile time
Web Developer
Productivity
More development tools
Visual Studio 2015
ASP.NET 2015 in a Nutshell
.NET Framework 4.6 .NET Core 1.0
Full .NET Framework for any scenario and
library support on Windows
Modular libraries & runtime optimized for
server and cloud workloads
Choose your Editors
and Tools
Open Source
with Contributions Cross-PlatformOSS
Seamless transition
from on-premises to cloud
Faster Development CycleTotally Modular
Fast
ASP.NET Core @ Github
https://github.com/aspnet
Quiz: Fastest framework?
Runtime Performance
Footprint
Modular
Infrastructure
Cloud-Ready
Containers support
Demos
ASP.NET + Azure
And more

Entity Framework 7
SignalR


http://docs.asp.net
learn & contribute!
Session Evaluations
Visit http://aka.ms/cloud.bangalore
sign in to the Schedule Builder and
select ‘My Evaluations’ to complete
your Session Evaluations after each
session.
#MSCloudRoadshow
Q & A

Weitere Àhnliche Inhalte

Was ist angesagt?

C/C++ Remote Development Overview
C/C++ Remote Development OverviewC/C++ Remote Development Overview
C/C++ Remote Development Overview
Thitipong Jampajeen
 
ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°: Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...
ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°:  Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°:  Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...
ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°: Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...
Fwdays
 
Nh php may 2014 - composer
Nh php   may 2014 - composerNh php   may 2014 - composer
Nh php may 2014 - composer
David Weingart
 
Que hay de nuevo en 2013 en la plataforma Microsoft para desarrolladores
Que hay de nuevo en 2013 en la plataforma Microsoft para desarrolladoresQue hay de nuevo en 2013 en la plataforma Microsoft para desarrolladores
Que hay de nuevo en 2013 en la plataforma Microsoft para desarrolladores
Rodolfo Finochietti
 

Was ist angesagt? (20)

Visual studio 2015 and .net core 5 – get ready to rumble
Visual studio 2015 and .net core 5  – get ready to rumbleVisual studio 2015 and .net core 5  – get ready to rumble
Visual studio 2015 and .net core 5 – get ready to rumble
 
C/C++ Remote Development Overview
C/C++ Remote Development OverviewC/C++ Remote Development Overview
C/C++ Remote Development Overview
 
Managing Plone Projects with Perl and Subversion
Managing Plone Projects with Perl and SubversionManaging Plone Projects with Perl and Subversion
Managing Plone Projects with Perl and Subversion
 
Code Quality Control in a PHP project. GeekTalks, Cherkassy 2020
Code Quality Control in a PHP project. GeekTalks, Cherkassy 2020Code Quality Control in a PHP project. GeekTalks, Cherkassy 2020
Code Quality Control in a PHP project. GeekTalks, Cherkassy 2020
 
Introduction to ASP.NET 5
Introduction to ASP.NET 5Introduction to ASP.NET 5
Introduction to ASP.NET 5
 
Future of Mobile Automation, Appium Steals it
Future of Mobile Automation, Appium Steals itFuture of Mobile Automation, Appium Steals it
Future of Mobile Automation, Appium Steals it
 
Code Generation with TypeScript
Code Generation with TypeScriptCode Generation with TypeScript
Code Generation with TypeScript
 
PyQt: rapid application development
PyQt: rapid application developmentPyQt: rapid application development
PyQt: rapid application development
 
TypeScript - Javascript done right
TypeScript - Javascript done rightTypeScript - Javascript done right
TypeScript - Javascript done right
 
ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°: Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...
ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°:  Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°:  Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...
ĐĐœĐ°ŃŃ‚Đ°ŃĐžŃ Đ’ĐŸĐčŃ‚ĐŸĐČĐ°: Đ—ĐŽĐŸŃ€ĐŸĐČая ĐżŃĐžŃ…ĐŸĐ»ĐŸĐłĐžŃ‡Đ”ŃĐșая Đ°Ń‚ĐŒĐŸŃŃ„Đ”Ń€Đ° ĐČ Đ¶ĐžĐ·ĐœĐž Ń€Đ°Đ·Ń€Đ°Đ±ĐŸŃ‚Ń‡ĐžĐșĐ°, ...
 
ASP.NET Core 101
ASP.NET Core 101ASP.NET Core 101
ASP.NET Core 101
 
Electron
ElectronElectron
Electron
 
New Release of KioWare for Windows 8.5 Kiosk Software
New Release of KioWare for Windows 8.5 Kiosk SoftwareNew Release of KioWare for Windows 8.5 Kiosk Software
New Release of KioWare for Windows 8.5 Kiosk Software
 
Developing apps with Kivy
Developing apps with KivyDeveloping apps with Kivy
Developing apps with Kivy
 
OpenAPI and gRPC Side by-Side
OpenAPI and gRPC Side by-SideOpenAPI and gRPC Side by-Side
OpenAPI and gRPC Side by-Side
 
Nh php may 2014 - composer
Nh php   may 2014 - composerNh php   may 2014 - composer
Nh php may 2014 - composer
 
PHP - Programming language war, does it matter
PHP - Programming language war, does it matterPHP - Programming language war, does it matter
PHP - Programming language war, does it matter
 
Que hay de nuevo en 2013 en la plataforma Microsoft para desarrolladores
Que hay de nuevo en 2013 en la plataforma Microsoft para desarrolladoresQue hay de nuevo en 2013 en la plataforma Microsoft para desarrolladores
Que hay de nuevo en 2013 en la plataforma Microsoft para desarrolladores
 
Build and deploy scientific Python Applications
Build and deploy scientific Python Applications  Build and deploy scientific Python Applications
Build and deploy scientific Python Applications
 
Academy PRO: .NET Core intro
Academy PRO: .NET Core introAcademy PRO: .NET Core intro
Academy PRO: .NET Core intro
 

Andere mochten auch

Andere mochten auch (20)

Overview of razor syntax
Overview of razor syntaxOverview of razor syntax
Overview of razor syntax
 
Asp.net web forms new shiny things part 1
Asp.net web forms new shiny things   part 1Asp.net web forms new shiny things   part 1
Asp.net web forms new shiny things part 1
 
Introduction to asp.net mvc
Introduction to asp.net mvcIntroduction to asp.net mvc
Introduction to asp.net mvc
 
Testing Mobile Applications With Telerik Platform
Testing Mobile Applications With Telerik PlatformTesting Mobile Applications With Telerik Platform
Testing Mobile Applications With Telerik Platform
 
Solving Enteprise Mobility Considerations with Telerik Mobile Platform
Solving Enteprise Mobility Considerations with Telerik Mobile PlatformSolving Enteprise Mobility Considerations with Telerik Mobile Platform
Solving Enteprise Mobility Considerations with Telerik Mobile Platform
 
Build Hybrid Mobile Applications for Nokia Lumia Devices
Build Hybrid Mobile Applications for Nokia Lumia DevicesBuild Hybrid Mobile Applications for Nokia Lumia Devices
Build Hybrid Mobile Applications for Nokia Lumia Devices
 
Connecting your .Net Applications to NoSQL Databases - MongoDB & Cassandra
Connecting your .Net Applications to NoSQL Databases - MongoDB & CassandraConnecting your .Net Applications to NoSQL Databases - MongoDB & Cassandra
Connecting your .Net Applications to NoSQL Databases - MongoDB & Cassandra
 
Angular JS 2.0 & React with Kendo UI
Angular JS 2.0 & React with Kendo UIAngular JS 2.0 & React with Kendo UI
Angular JS 2.0 & React with Kendo UI
 
Porting Hybrid Apps to Native Apps
Porting Hybrid Apps to Native AppsPorting Hybrid Apps to Native Apps
Porting Hybrid Apps to Native Apps
 
Kendo UI Wrappers in ASP.NET Core
Kendo UI Wrappers in ASP.NET CoreKendo UI Wrappers in ASP.NET Core
Kendo UI Wrappers in ASP.NET Core
 
Introduction to React JS
Introduction to React JSIntroduction to React JS
Introduction to React JS
 
The Bleeding Edge - Whats New in Angular 2
The Bleeding Edge - Whats New in Angular 2The Bleeding Edge - Whats New in Angular 2
The Bleeding Edge - Whats New in Angular 2
 
JavaScript Task Runners - Gulp & Grunt
JavaScript Task Runners - Gulp & GruntJavaScript Task Runners - Gulp & Grunt
JavaScript Task Runners - Gulp & Grunt
 
Even Quicker Development with Xamarin Forms Using Telerik UI for Xamarin
Even Quicker Development with Xamarin Forms Using Telerik UI for XamarinEven Quicker Development with Xamarin Forms Using Telerik UI for Xamarin
Even Quicker Development with Xamarin Forms Using Telerik UI for Xamarin
 
Building Web Apps & APIs With Node JS
Building Web Apps & APIs With Node JSBuilding Web Apps & APIs With Node JS
Building Web Apps & APIs With Node JS
 
Lap Around ASP.NET MVC 5
Lap Around ASP.NET MVC 5Lap Around ASP.NET MVC 5
Lap Around ASP.NET MVC 5
 
Visual Studio 2015 - Whats New ?
Visual Studio 2015 - Whats New ?Visual Studio 2015 - Whats New ?
Visual Studio 2015 - Whats New ?
 
You Know Angular 2, You Know Native Mobile App Development
You Know Angular 2, You Know Native Mobile App DevelopmentYou Know Angular 2, You Know Native Mobile App Development
You Know Angular 2, You Know Native Mobile App Development
 
Online Spreadsheet for your Web Applications using Kendo UI
Online Spreadsheet for your Web Applications using Kendo UIOnline Spreadsheet for your Web Applications using Kendo UI
Online Spreadsheet for your Web Applications using Kendo UI
 
Introduction to UWP - Universal Windows Platform Application Development
Introduction to UWP - Universal Windows Platform Application DevelopmentIntroduction to UWP - Universal Windows Platform Application Development
Introduction to UWP - Universal Windows Platform Application Development
 

Ähnlich wie Build Leaner, Faster Web Applications with ASP.NET

NET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptxNET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptx
NishitPatel409228
 

Ähnlich wie Build Leaner, Faster Web Applications with ASP.NET (20)

Future of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows PlatformsFuture of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows Platforms
 
NET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptxNET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptx
 
A Whirldwind Tour of ASP.NET 5
A Whirldwind Tour of ASP.NET 5A Whirldwind Tour of ASP.NET 5
A Whirldwind Tour of ASP.NET 5
 
1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)1..Net Framework Architecture-(c#)
1..Net Framework Architecture-(c#)
 
.NET MeetUp Amsterdam 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Amsterdam 2017 - .NET Standard -- Karel Zikmund.NET MeetUp Amsterdam 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Amsterdam 2017 - .NET Standard -- Karel Zikmund
 
Dive into .Net Core framework
Dive into .Net Core framework Dive into .Net Core framework
Dive into .Net Core framework
 
Net Framework vs .Net Core A Complete Comparison.pdf
Net Framework vs  .Net Core  A Complete Comparison.pdfNet Framework vs  .Net Core  A Complete Comparison.pdf
Net Framework vs .Net Core A Complete Comparison.pdf
 
Introduction to .NET Framework
Introduction to .NET FrameworkIntroduction to .NET Framework
Introduction to .NET Framework
 
ASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bitsASP.NET Core: The best of the new bits
ASP.NET Core: The best of the new bits
 
.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions.Net introduction by Quontra Solutions
.Net introduction by Quontra Solutions
 
Deploy a Website in Azure using ARM Templates
Deploy a Website in Azure using ARM TemplatesDeploy a Website in Azure using ARM Templates
Deploy a Website in Azure using ARM Templates
 
.Net overview
.Net overview.Net overview
.Net overview
 
.Net Overview
.Net Overview.Net Overview
.Net Overview
 
Introduction to .net
Introduction to .netIntroduction to .net
Introduction to .net
 
.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
.NET MeetUp Prague 2017 - .NET Standard -- Karel Zikmund
 
Tutorial c#
Tutorial c#Tutorial c#
Tutorial c#
 
Overview of microsoft dot net platforms
Overview of microsoft dot net platformsOverview of microsoft dot net platforms
Overview of microsoft dot net platforms
 
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
The how-dare-you-call-me-an-idiot’s guide to the .NET Standard (NDC London 2017)
 
Dotnet Frameworks Version History
Dotnet Frameworks Version HistoryDotnet Frameworks Version History
Dotnet Frameworks Version History
 
.NET Core, ASP.NET Core Course, Session 1
.NET Core, ASP.NET Core Course, Session 1.NET Core, ASP.NET Core Course, Session 1
.NET Core, ASP.NET Core Course, Session 1
 

Mehr von Lohith Goudagere Nagaraj

Mehr von Lohith Goudagere Nagaraj (15)

Hybrid Mobile App Development With Cordova
Hybrid Mobile App Development With CordovaHybrid Mobile App Development With Cordova
Hybrid Mobile App Development With Cordova
 
Seamless Access to Data from BI Tools using DataDirect Cloud
Seamless Access to Data from BI Tools using DataDirect CloudSeamless Access to Data from BI Tools using DataDirect Cloud
Seamless Access to Data from BI Tools using DataDirect Cloud
 
NativeScript + Push Notifications
NativeScript + Push NotificationsNativeScript + Push Notifications
NativeScript + Push Notifications
 
10 Useful New Features of ECMA Script 6
10 Useful New Features of ECMA Script 610 Useful New Features of ECMA Script 6
10 Useful New Features of ECMA Script 6
 
New Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik PlatformNew Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik Platform
 
Creating Custom HTML Helpers in ASP.NET MVC
Creating Custom HTML Helpers in ASP.NET MVCCreating Custom HTML Helpers in ASP.NET MVC
Creating Custom HTML Helpers in ASP.NET MVC
 
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
Building and Delivering Reports from your Web and Mobile Apps with Telerik Re...
 
Preparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with EasylPreparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with Easyl
 
Introduction to NativeScript - BuildTruly Native Apps using JavaScript
Introduction to NativeScript - BuildTruly Native Apps using JavaScriptIntroduction to NativeScript - BuildTruly Native Apps using JavaScript
Introduction to NativeScript - BuildTruly Native Apps using JavaScript
 
Native Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile AppsNative Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile Apps
 
Ember JS - Why Ember Matches My Wavelength
Ember JS - Why Ember Matches My WavelengthEmber JS - Why Ember Matches My Wavelength
Ember JS - Why Ember Matches My Wavelength
 
Creating Custom HTML Helpers In ASP.NET MVC
Creating Custom HTML Helpers In ASP.NET MVCCreating Custom HTML Helpers In ASP.NET MVC
Creating Custom HTML Helpers In ASP.NET MVC
 
ASP.NET MVC - Latest & Greatest So Far
ASP.NET MVC - Latest & Greatest So FarASP.NET MVC - Latest & Greatest So Far
ASP.NET MVC - Latest & Greatest So Far
 
Server Side Responsive Layouts for ASP.NET WebForms using Telerik UI for ASP....
Server Side Responsive Layouts for ASP.NET WebForms using Telerik UI for ASP....Server Side Responsive Layouts for ASP.NET WebForms using Telerik UI for ASP....
Server Side Responsive Layouts for ASP.NET WebForms using Telerik UI for ASP....
 
Getting Started with ASP.NET vNext
Getting Started with ASP.NET vNextGetting Started with ASP.NET vNext
Getting Started with ASP.NET vNext
 

KĂŒrzlich hochgeladen

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

KĂŒrzlich hochgeladen (20)

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Build Leaner, Faster Web Applications with ASP.NET

Hinweis der Redaktion

  1. Description. ASP.NET 5 is a lean and composable framework for building web and cloud applications. ASP.NET 5 is fully open source and available on GitHub. In this session we’ll put it all into context, answering questions such as what does that ASP.NET 5 mean for compatibility? What powerful new cloud scenarios does ASP.NET 5 enable? Etc. We’ll cover it all both inside and outside of Visual Studio, including support for Mac and Linux.
  2. [Start with Customer evidence] Running on 4/5 machines (efficient) We’re working on having ASP.NET 5 Customer evidence for connect, we’ll update this deck when done. You can contact davidsb after Nov 23 for an update. https://customers.microsoft.com/Pages/CustomerStory.aspx?recid=14667 Case Study: https://customers.microsoft.com/Pages/Download.aspx?id=14668 [Additional customer stories] http://www.asp.net/get-started
  3. Key message: There is certain fragmentation that we’ve to tackle, and be more systematic about how we focus on specific workloads Transition: Today, we can talk about just 2 different versions When we originally shipped the .NET Framework in 2002 there was only a single framework. Shortly after, we released the .NET Compact Framework which was a subset of the .NET Framework that fit within the footprint of smaller devices, specifically the old Windows Mobile. The compact framework was a separate code base from the .NET Framework. It included the entire vertical: a runtime, a framework, and an application model on top. Since then, we’ve repeated this sub-setting exercise many times: Silverlight, Windows Phone and most recently for Windows Store. This yields to fragmentation because the .NET Platform isn’t a single entity but a set of platforms, owned by different teams, and maintained independently. Of course, there is nothing wrong with offering specialized features in order to cater to a particular need. But it becomes a problem if there is no systematic approach and specialization happens at every layer with little to no regards for corresponding layers in other verticals. The outcome is a set of platforms that only share APIs by the fact that they started off from a common code base. Over time this causes more divergence unless explicit (and expensive) measures are taken to converge APIs. What is the problem with fragmentation? If you only target a single vertical then there really isn’t any problem. You’re provided with an API set that is optimized for your vertical. The problem arises as soon as you want to target the horizontal, that is multiple verticals. Now you have to reason about the availability of APIs and come up with a way to produce assets that work across the verticals you want to target. Today it’s extremely common to have applications that span devices: there is virtually always a back end that runs on the web server, there is often an administrative front end that uses the Windows desktop, and a set of mobile applications that are exposed to the consumer, available for multiple devices. Thus, it’s critical to support developers in building components that can span all the .NET verticals.
  4. Key message: Differentiate the purpose and scenarios between .NET Framework and .NET Core. They Key point on .NET Core is that it’s self-contained and specialized on specific workloads. Make sure that we make the point that BOTH are valid. There is no decrease in investment on the .NET Framework side. Transition. There is a common shared layer to these 2 pieces
  5. Key Message: Compilers, certain runtime components, libraries
. Are shared across and any improvement on these will impact on both frameworks, for instance ‘Roslyn’ Transition: With these pieces we enable/serve different application models
  6. Key messages: Briefly comment on these, YES Windows Forms is there, as well as Web forms, we’ll talk more about it later, and YES ASP.NET Core works both in .NET Framework 4.6 and .NET Core Transition: We’re going to focus on the ASP.NET pieces
  7. Transition: Let’s talk about the fundamental differences between these 2 options
  8. An alternative visualization, more focused on the relationship between ASP.NET versions and .NET versions
  9. Reference– Damian Edwards on NDC: https://vimeo.com/131191236 Column in the middle represents the stack, an application stack that we’re used to do. Left side represents what asp.net has been until recently, and on the right hand we have at the bottom, Windows:Linux and OS X. This is one of the reasons that determines that we have so many differences Highlights Operating system [Traditional] [New] Runtime loader. [Traditional] Something that loads my runtime. On Windows there is a flag, that boots the CLR and then runs your application, a little bit different on web applications we’ve the native component WebEngine4 that loads the CLR . [New] Runtime [New] Dotnetcore CLR helps us satisfy the cross plat need
 and we also have mono, not on this slide, but available Platform libraries [Traditional] BCL [New] still have that if we run in .net crl, if we run .net core, then we use packages. Nuget packages . Application host [Traditional] [New] DNX appears in multiple layers, it has different components Web Server [Traditional] [New] http.sys (selfhost), Kestrel is based on libuv (same abstraction layer than node.js). And btw you can use kestrel on windows Application Frameworks [Traditional] [New] Nuget is an essential part, we even ship the runtime on nuget Libraries [Traditional] [New] Application [Traditional] [New] And most of the new things are open source. Transition. It’s also slightly different how the project is structure, let’s see the key differences
  10. Goal of the demo – Create a new ASP.NET 5 project on Visual Studio 2015 and walk the audience by the key differences at the project level + some nugget context Check https://channel9.msdn.com/events/Ignite/2015/BRK3714 for context As well as a new runtime, ASP.NET 5 projects get a new project system. Instead of using Visual Studio’s usual .csproj or .vbproj files, ASP.NET 5 projects put everything in various JSON files. This is partly because Visual Studio is not technically required. But it also offers some benefits—it’s easier to control some aspects of your project because Visual Studio offers autocompletion for the various JSON files, making them much easier to edit directly than the old-style project files. (You can still do most things in Solution Explorer if you want though.) (UWP app projects do the same, incidentally, although you do need Visual Studio to write those.) One notable improvement that comes from the new project system is its new compilation model (which relies on the new ‘Rosyln’ C# and VB.NET compilers that ship with Visual Studio 2015). It makes it unnecessary to fully compile your project each time you want to change some code. You can just save it, and then see the effect of that immediately by refreshing the browser. You no longer have to wait 10 seconds or more for the code to compile first. ASP.NET 5 projects make a clear distinction between the content that is to be deployed to your site, and all other files. (For example, important though your C# or VB.NET source files are to the operation of your site, you don’t want users to be able to download your source over HTTP.) This is increasingly important with modern web development now that a lot of the artifacts that make it into the server such as CSS and JavaScript are processed in some way. For example, you could use languages such as SASS and LESS which are converted into CSS to be consumed by the browser, and it’s that CSS output that needs to go onto the web server, not the SASS or LESS source. Likewise, you’ll often want to minify JavaScript files before deploying them. Before ASP.NET 5, there wasn’t a great way to deal with these issues, but now the project structure is set up to support it directly. Nuget In an ASP.NET project, NuGet is now the main way to refer to external libraries. Although you can add a reference directly to a DLL from an ASP.NET 5 project, this only works when you’re building against the full .NET Framework – DLLs added this way will be unavailable if you build for .NET Core. Likewise, you can add references to framework components in the conventional way, but again, you cannot use DLLs this way when targeting .NET Core. But using NuGet (for either.NET Framework class library types or other libraries) works for both .NET Core and full .NET. This means you are likely to depend on a lot more packages than you would have done in the past. Fortunately, ASP.NET 5 introduces a change in how NuGet packages are handled that helps a great deal here: indirect references are handled automatically. For example, if you use a package that depends on a particular framework package (e.g. System.IO) you do not need to add a reference to that framework package explicitly—Visual Studio will infer the dependency automatically. This is a big improvement on how NuGet has worked in the past—in general, any project that depends on some package also needed to add dependencies to anything that package depended on. And while the NuGet dialogs would automatically add those for you, keeping them up to date could become problematic over time. Now, since your dependency list only contains the components on which your project depends directly, updating is much simpler. You can manage dependencies through the NuGet package manager, which you reach by right-clicking on the References node as has always been the case (although the package manager now looks substantially different.) Alternatively, you can edit the project.json file manually. Visual Studio will provide IntelliSense if you do that. Transition. ASP.NET 5 is just one of the available options on the .NET stack for web development
  11. Option 1 – ASP.NET 4.6 + .NET Framework 4.6. There are a ton of websites built on top of the full .NET Framework and it’s a perfectly valid solution, either you choose the productivity of webforms or you prefer to work with MVC for a more granular option Option 2 – Create ASP.NET Core sites and services and run them on top of the full .NET framework, a slightly different application model that you can choose, but leveraging (if you want) all the BCL classes. Option 3 – Cloud-optimized option. Due to the ability of configuring the pipeline and the different modules of both the application platform and the underlying .NET Core you can optimize for performance and benefit from the side-by-side running benefits. Transition. Different options that you can choose from to develop the so called modern web applications Read: https://weblogs.asp.net/scottgu/introducing-asp-net-5 Transition: We’re working on options and investing on enabling the platforms and tools for modern development web needs
  12. 
 and how easy or difficult is for a developer, to ideate, develop, design, deploy, debug
 web applications. [References] Lap Around VS2015 as Web IDE - https://channel9.msdn.com/Shows/Web+Camps+TV/Modern-Web-Development-Tools-in-Visual-Studio-2015-with-Mads-Kristensen Updates for ASP.NET 4.6 Blog post - http://blogs.msdn.com/b/webdev/archive/2015/04/30/updates-for-asp-net-4-6-web-forms-mvc-5-web-api-2.aspx Web Forms 4.6 - https://channel9.msdn.com/Events/Visual-Studio/Connect-event-2014/812 Info about HTTP/2 - http://http2.github.io/
  13. 
 and how easy or difficult is for a developer, to ideate, develop, design, deploy, debug
 web applications. [References] Lap Around VS2015 as Web IDE - https://channel9.msdn.com/Shows/Web+Camps+TV/Modern-Web-Development-Tools-in-Visual-Studio-2015-with-Mads-Kristensen Updates for ASP.NET 4.6 Blog post - http://blogs.msdn.com/b/webdev/archive/2015/04/30/updates-for-asp-net-4-6-web-forms-mvc-5-web-api-2.aspx Web Forms 4.6 - https://channel9.msdn.com/Events/Visual-Studio/Connect-event-2014/812 Info about HTTP/2 - http://http2.github.io/
  14. Watch https://channel9.msdn.com/Events/dotnetConf/2015/Introduction-to-ASPNET5 0:25 Transition: When we talk about speed, about being fast, we should also take into consideration the developer productivity
  15. Tour around the repo, show collaborations, how to use gitter
  16. Techempower
  17. [References] Updates for ASP.NET 4.6 Blog post - http://blogs.msdn.com/b/webdev/archive/2015/04/30/updates-for-asp-net-4-6-web-forms-mvc-5-web-api-2.aspx Web Forms 4.6 - https://channel9.msdn.com/Events/Visual-Studio/Connect-event-2014/812 Info about HTTP/2 - http://http2.github.io/
  18. [References] Docker - https://channel9.msdn.com/Series/Docker-for-NET-Developers/Docker-Overview-for-NET-Developers Diagnostics Run/Debug in Cloud Tracing/Logging without re-deploy Open Source https://github.com/aspnet Cross-Platform Entity Framework Entity Framework 6.x Evolution of current EF Runs on .NET Framework 4.6 Entity Framework 7 LINQ and EF skills re-use, easy to move most existing apps Cloud optimized (small memory footprint and high throughput) Device optimized (lightweight, works with SQLite) Supports relational and non-relational stores Runs on .NET Core 5 and .NET Framework 4.6 Cross-platform ready (based on .NET Core 5) Design for disconnected/web scenarios Both versions are OPEN SOURCE! Entity Framework narrative As with ASP.NET 5, the rewriting of Entity Framework 7 hasn’t meant that it is unrecognizable: many core concepts remain in place. For example, there is still a class called DbContext that is your main point of entry to your data source, and collections of entities are still represented by a class called DbSet. Any investment in earlier versions of the Entity Framework remains valuable—developers will be able to apply their existing knowledge to this new version. Some features have been removed. In some cases, these are areas that had already been superseded, and which only remained in v6.1 for backwards compatibility reasons. For example, the old ObjectContext class was long ago replaced by DbContext. Since EF7 does not provide full backwards compatibility, this hangover from very early versions can finally be removed. Also, certain features which are not widely used (either because they proved unpopular, or because better new alternatives exist) have been removed. For example, some complex type mappings which were rarely used have gone. And the ‘multiple entity sets per type’ (MEST) feature’s capabilities are now better supported through inheritance, so that has gone too. There are also some features which have disappeared, but which are expected to return in later releases. A full rewrite required substantial effort, and there wasn’t time to get everything from previous versions into this release. The most notable absence is Lazy Loading, a feature that the Entity Framework team plan to put back in the future. This new version also adds some new functionality. For example, it now supports some non-relational data sources such as Azure Table Storage. And there is new functionality for traditional relational storage too, such as the ability to perform batched updates, or for a model to specify unique constraints besides keys. Also, in keeping with the lightweight spirit of .NET Core, the framework has been refactored into multiple subcomponents, making it possible to use only those parts you actually want, rather than having an all-or-nothing heavyweight framework.
  19. http://www.hanselman.com/blog/PublishingAnASPNET5AppToDockerOnLinuxWithVisualStudio.aspx
  20. Entity Framework Entity Framework 6.x Evolution of current EF Runs on .NET Framework 4.6 Entity Framework 7 LINQ and EF skills re-use, easy to move most existing apps Cloud optimized (small memory footprint and high throughput) Device optimized (lightweight, works with SQLite) Supports relational and non-relational stores Runs on .NET Core 5 and .NET Framework 4.6 Cross-platform ready (based on .NET Core 5) Design for disconnected/web scenarios Both versions are OPEN SOURCE! Entity Framework narrative As with ASP.NET 5, the rewriting of Entity Framework 7 hasn’t meant that it is unrecognizable: many core concepts remain in place. For example, there is still a class called DbContext that is your main point of entry to your data source, and collections of entities are still represented by a class called DbSet. Any investment in earlier versions of the Entity Framework remains valuable—developers will be able to apply their existing knowledge to this new version. Some features have been removed. In some cases, these are areas that had already been superseded, and which only remained in v6.1 for backwards compatibility reasons. For example, the old ObjectContext class was long ago replaced by DbContext. Since EF7 does not provide full backwards compatibility, this hangover from very early versions can finally be removed. Also, certain features which are not widely used (either because they proved unpopular, or because better new alternatives exist) have been removed. For example, some complex type mappings which were rarely used have gone. And the ‘multiple entity sets per type’ (MEST) feature’s capabilities are now better supported through inheritance, so that has gone too. There are also some features which have disappeared, but which are expected to return in later releases. A full rewrite required substantial effort, and there wasn’t time to get everything from previous versions into this release. The most notable absence is Lazy Loading, a feature that the Entity Framework team plan to put back in the future. This new version also adds some new functionality. For example, it now supports some non-relational data sources such as Azure Table Storage. And there is new functionality for traditional relational storage too, such as the ability to perform batched updates, or for a model to specify unique constraints besides keys. Also, in keeping with the lightweight spirit of .NET Core, the framework has been refactored into multiple subcomponents, making it possible to use only those parts you actually want, rather than having an all-or-nothing heavyweight framework. SIGNALR NARRATIVE SignalR is another important framework to get an update to support .NET Core. In case you’re not familiar with it, SignalR is a framework for providing push notifications. It makes it possible for the server to send messages to web or mobile clients. This is a tricky problem to solve, because the basic architecture of the web has clients deciding when everything happens. HTTP is designed to have servers respond to client-originated requests. (And the ubiquity of firewalls essentially rules out the possibility of clients hosting their own local HTTP servers in order to support communication in the other direction.) This does not work especially well for applications that need to update the UI in response to live events. For example, if you want to build a chat application, client-side code has no way of knowing when other users in the system have typed in new messages. Or consider an application that needs to show real time alerts—again, the client has no way of knowing when it should make a request, because it has no way of knowing when the underlying event that should trigger an alert has actually happened. Modern web browsers support the recently-introduced Web Sockets standard, which can solve these problems. However, this is by no means ubiquitous (and even where browsers support it, there may be IT infrastructure issues making it difficult to support), so there are a few well established tricks that abuse HTTP in creative ways to enable server-triggered operations. SignalR provides a straightforward API that handles all of this for you. It will work out whether web sockets are available, and use them if possible, falling back to the standard hacks where required, but you don’t need to worry about this because you can use the same API in either case. It also supports a range of scales. It provides a relatively simple implementation that can run in your web server by default, but if you need to scale out your web farm either to support large numbers of concurrent users, or for availability reasons, this simple implementation is unsuitable. So SignalR is also able to work on top of Azure’s Service Bus to support multiple web servers. That requires a bit more work to set up, but the API for using it remains the same. So by using SignalR, you get the option to scale out if you need it, without being forced into setting up something complex when you have more modest requirements. All of this was true for SignalR 2, which has been available for some time on ASP.NET 4. But that wouldn’t run on .NET Core. Version 3 fixes that. Unlike ASP.NET and Entity Framework, this new version doesn’t make substantial changes. This is just a port of v2 that is able to run on .NET Core. So if you have been using SignalR V2, V3 will look more or less identical.
  21. Option 1 – ASP.NET 4.6 + .NET Framework 4.6. There are a ton of websites built on top of the full .NET Framework and it’s a perfectly valid solution, either you choose the productivity of webforms or you prefer to work with MVC for a more granular option Option 2 – Create ASP.NET 5 sites and services and run them on top of the full .NET framework, a slightly different application model that you can choose, but leveraging (if you want) all the BCL classes. Option 3 – Cloud-optimized option. Due to the ability of configuring the pipeline and the different modules of both the application platform and the underlying .NET Core you can optimize for performance and benefit from the side-by-side running benefits. Transition. Different options that you can choose from to develop the so called modern web applications Read: https://weblogs.asp.net/scottgu/introducing-asp-net-5 Transition: We’re working on options and investing on enabling the platforms and tools for modern development web needs
  22. Introduction to ASP.NET 5 MVA Course https://www.microsoftvirtualacademy.com/en-us/training-courses/introduction-to-aspnet-5-13786?l=PvSZtxoXB_5101937557
  23. Introduction to ASP.NET 5 MVA Course https://www.microsoftvirtualacademy.com/en-us/training-courses/introduction-to-aspnet-5-13786?l=PvSZtxoXB_5101937557