SlideShare a Scribd company logo
1 of 52
Steeltoe and the
Open Source .NET Renaissance
Dave Tillman
Lead Engineer - Steeltoe, Pivotal
Zach Brown - @moredeploys
Product Strategy & Marketing, Pivotal
Beth Massi - @BethMassi
Product Marketing Manager .NET Platform, Microsoft
1
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Outline
ā€¢ Welcome to the .NET Renaissance
ā€¢ Steeltoe Overview
ā€¢ Why is Steeltoe?
ā€¢ Whatā€™s in Steeltoe?
ā€¢ Demo and Deep Dive
ā€¢ Roadmap & Resources
2
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Be engaged!
Join the dialogue
Share your thoughts, opinions and photos
...even if you disagree
3
Beth Massi
@BethMassi
Steeltoe Project
@SteeltoeOSS
Zach Brown
@moredeploys
#springone
Welcome to the
.NET Renaissance
Happy 15th Birthday, .NET!
Born February 13, 2002
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
.NET Standard allows
sharing code, binaries and
skills between .NET client,
server and all of its flavors.
.NET Standard provides a
specification for any
platform to implement
APIs in .NET Standard 2.0
THREADING Threads ā€¢ Thread Pool ā€¢ Tasks
IO Files ā€¢ Compression ā€¢ MMF
DATA DataSet ā€¢ DataTable ā€¢ SQLClient
APIs in .NET Standard 2.0
THREADING Threads ā€¢ Thread Pool ā€¢ Tasks
IO Files ā€¢ Compression ā€¢ MMF
DATA DataSet ā€¢ DataTable ā€¢ SQLClient
https://github.com/dotnet/standard
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
.NET Languages Innovation
C#
- Innovate aggressively and responsibly bringing latest language trends to
enable modern applications
- C# 7.2 just released ā€“ bring features in quicker with dot releases
- C# 8.0 preview ā€“ Null reference types
F#
- Be the most productive functional language with full integration and
interoperability with .NET
Span<T> implemented
- Safe access to continuous regions of memory
- Brings performance improvements up and down the stack
https://github.com/dotnet/csharplang/
0
200
400
600
800
1000
1200
Oct-13
Jan-14
Apr-14
Jul-14
Oct-14
Jan-15
Apr-15
Jul-15
Oct-15
Jan-16
Apr-16
Jul-16
Oct-16
Jan-17
Apr-17
Jul-17
Community Accepted PRs ā€œSamsung is embracing .NET because it is a
completely open source project.ā€ ā€” Samsung
".NET is open source; that allows us to contribute
back to it if we have any performance issues which
Microsoft review and together we make a better
product.ā€œ ā€” Illyriad Games
25,000+ Community Contributions from 1700+ Companies outside Microsoft
Top 30
Highest
Velocity
OSS
Projects
https://www.cncf.io/blog/2017/06/05/30-highest-velocity-open-source-projects/
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Performance improvements in .NET Core 2.0
Base class libraries (CoreFX)
ā€¢ The community has submitted many of these performance improvements
RyuJIT ā€“ Just-in-time IL compiler
ā€¢ Benefits all .NET implementations
Profile-guided optimization (PGO)
ā€¢ Improvements to generate better optimized code for native components
ā€œUsing the same-size server, we were able to go from 1,000 requests per
second per node with Node.js to 20,000 requests per second with .NET Core.ā€œ
ā€” Raygun
https://www.microsoft.com/net/customers
From TechEmpower Round 13 Plaintext Tests
Modern Relevance
Growth in popularity on Hacker
News and Reddit since going open
and cross platform
Job market
#2 demanded primary technology
(LinkedIn)
Development frameworks on Reddit &
Hacker News
Java
Node.js
.NET
Community Momentum
.NET is loved
.NET Core debuts at #3 most loved Framework on
Stack Overflow Technology Survey 2017
Source: http://stackoverflow.com/insights/survey/2017
C# is #3 most popular language for desktop and web
developers on Stack Overflow Technology Survey 2017
www.dot.net/architecture
RayGun
"Using the same-size server, we were able to go from 1,000 requests per second
per node with Node.js to 20,000 requests per second with .NET Core."
- John-Daniel Trask, CEO and Co-Founder
AstroReality, Quantum Technologies
"We think .NET Core is mature, very powerful, and a great choice for
advanced modern apps."
- Zerlot Ma, Cofounder and CEO
Jet.com Inc.
"The event-driven, microservices paradigm eliminated a lot of the
overhead that comes with a service-oriented architecture."
- Mike Hanrahan, CTO
Tencent
ā€œThe cross-platform capabilities of .NET Core were very important to us. Also,
Microsoft designed .NET Core with a microservice architecture in mind, and
that fits right in with our redesign plans.ā€
- Shanyou Zhang: Senior Software Architect
Age of Ascent, Illyriad Games
"Our game microservices are built using ASP.NET Core which gives us
superior performance. ASP.NET is open source, that allows us to
contribute back to it if we have any performance issues which Microsoft
review and together we make a better product."
- Ben Adams, CTO and Co-founder
NetEase
".NET Core doesn't just help us get to market faster, it also enables our
developers to focus on the core logic and what really matters, our players'
experience. They don't have to deal with the communication gap and different
ways of implementing the algorithm on the back and front end. They can just
work on finding better ways to implement their ideas."
- Feng Zhou, Product Director
United Parcel Service (UPS)
"Xamarin allowed us to develop a single code base in C# and deploy the
application to two completely different mobile phone ecosystems."
- Scott Hildebrand, Application Development Manager
GoDaddy
ā€œServices can be developed more quickly, perform faster in production, and
scale better if theyā€™re written using .NET Core with C#.ā€
- Jeremiah Gowdy: Principal Software Architect
microsoft.com/net/customers
Steeltoe
DotNetNuke
SourceLink
nUnit
MvvmCross
IronPython
ILMerge
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Welcome Steeltoe to .NET Foundation!
Resilient .NET microservices
Cloud-native Security
Data Connectors
Service discovery with Netflix Eureka
Circuit breakers with Netflix Hystrix
Shared config with Spring Cloud Configuration Server
Integration with Cloud Foundry
Plus Management tools for production microservices
http://steeltoe.io/
Steeltoe Overview
Why is Steeltoe?
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
- 12 Factor App principles (https://12factor.net/)
- Configuration stored in environment variables
- Out of process session state
- No r/w to registry, GAC, Local file system
- Loosely coupled backing services (i.e. RDBMS)
ā€œTodayā€™s best practices are tomorrowā€™s anti-patterns.ā€
Cloud-Native .NET
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Benefits of Microservices Architectures
- Quickly iterate and release frequently
- Easy for new devs to join and be productive
- Increased developer velocity
- Shorter test cycles
- Polyglot becomes reality
- Independently scalable components
Microservices
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Microservices = Distributed Systems = Way more complexity
- How to troubleshoot microservices?
- How to set global configuration across
the whole application?
- How to look up the dynamic addresses
of services you consume?
- What do you do when a service you
depend on stops responding?
But Microservices are hard
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
There are some great OSS solutions already available
and
But until now theyā€™ve been focused on Java
and not very accessible to .NET devsā€¦
The good news isā€¦
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
To help you build
Cloud native .NET applications
and leverage Spring Cloud tooling for
resilient microservices
So thatā€™s why we built Steeltoe
Whatā€™s in Steeltoe?
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Connectors for common data services
- MySQL
- Postgres
- Redis
- RabbitMQ
- OAuth2
- MS SQL Server
Cloud-Native .NET
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Security Providers
- OAuth2 SSO Provider
- JWT resource protection
- Redis-backed Key Ring Repository
Cloud-Native .NET
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Management Endpoints
- /info
arbitrary app info, e.g. git build tag
- /health
application health information
- /trace
circular buffer of last 100 http requests/responses
- /loggers
shows and modifies configuration of loggers down to the class level
Cloud-Native .NET
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Configuration Providers
Cloud Foundry
ā€¢ VCAP_APPLICATION, VCAP_SERVICES, CF_*
Config Server
ā€¢ Access config stored in Spring Cloud Config Server
(backed by Git, Vault, local filesystem)
ā€¢ Across all instances, all apps, all environments
Cloud-Native .NET
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Spring Cloud Config Server
Cloud-Native .NET
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Service Discovery with Eureka
- .NET Client for Netflix Eureka
- Dynamically discover and call
registered services
- Supports direct addressing
Resilient Microservices
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Circuit Breaker
- .NET implementation of Netflix Hystrix
- Bypass failing services with
elegant fall-back behavior
(so your users donā€™t see nasty error messages)
- Rich metrics and monitoring
Resilient Microservices
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Netflix Hystrix
Resilient Microservices
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Steeltoe works...
with .NET Core and with the .NET Framework
on Windows and on Linux
standalone and running on Cloud Foundry
Open and Flexible
ā€¦and now itā€™s part of the
Demo
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store
browse
music
add item
to cart
place
order
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Config
Server
config
servergit
config
config
config
config
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Connectors
config
servergit
redis
connector
mysql
connector
mysql
connector
mysql
connector
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Discovery
config
servergit
browse
music
add item
to cart
place
order
eureka
server
service
addresses
register
services
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Management
config
servergit
eureka
server
/info
/health
/trace
/loggers
/info
/health
/trace
/loggers
/info
/health
/trace
/loggers
apps
manager
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
MusicUI
OrderProcessin
g
MusicStore
ShoppingCart
mySQL
redis
mySQL
mySQL
session
cache
GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore
ASP.NET Music Store w/Steeltoe + Circuit
Breakers
config
servergit
eureka
server
hystrix
dashboard
circuit
breakers
metrics
apps
manager
Roadmap & Resources
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Steeltoe Roadmap
2.0-rc1 December 2017
ā€¢ Full ANC 2.0 support
ā€¢ CredHub support
ā€¢ MS SQL Server Connector
>2.0
ā€¢ New Management Endpoints ā€“ (Thread Dump, Heap Dump)
ā€¢ Zipkin
ā€¢ Netflix Ribbon
Looking for something else? Tell us at https://slack.steeltoe.io or submit a PR
48
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Learn more ā†’ https://steeltoe.io
Clone a sample ā†’ https://github.com/SteeltoeOSS/Samples
Get the packages ā†’ https://www.nuget.org/profiles/steeltoe
Talk to us ā†’ https://slack.steeltoe.io/
Tell your friends ā†’ @SteeltoeOSS
How to get started
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
.NET Resources at SpringOne
ā€¢ Pivotal Demo Lounge
ā€¢ Build .NET Framework, .NET Core and polyglot (Java + .NET) apps and
push them to Cloud Foundry
ā€¢ Recommended sessions
ā€¢ Migrating .NET and .NET Core to PCF (CapGemini)
Tues. 4:20pm Room 2012
ā€¢ Tech Modernization: A Cloud Migration (Charles Schwab)
Tues. 5:00pm Room 2010
ā€¢ Ensuring Platform Security w/Windows BOSH Add-ons & Runtime
Config at Boeing
Wed. 2pm Room 2024
50
Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a
Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Now itā€™s your turn to share
Cloud Foundry Summit North America 2018
April 18-20, 2018 ā€“ Boston
New track: ā€œCloud-Native .NETā€
Call for Papers Deadline: 12/8/2017
https://www.cloudfoundry.org/event_subpages/cfna18-cfp/
51
Learn More. Stay Connected.
52
#springone@s1p
http://www.dot.net @dotnet
http://steeltoe.io @SteeltoeOSS

More Related Content

What's hot

What's hot (20)

Des ops101 : Overview - RH CoP UI/UX 9nov2018
Des ops101 : Overview - RH  CoP UI/UX 9nov2018Des ops101 : Overview - RH  CoP UI/UX 9nov2018
Des ops101 : Overview - RH CoP UI/UX 9nov2018
Ā 
How we made jenkins community
How we made jenkins communityHow we made jenkins community
How we made jenkins community
Ā 
La montĆ©e en puissance de lā€™infrastructure ouverte
La montĆ©e en puissance de lā€™infrastructure ouverteLa montĆ©e en puissance de lā€™infrastructure ouverte
La montĆ©e en puissance de lā€™infrastructure ouverte
Ā 
Open Source Building Career and Competency
Open Source Building Career and CompetencyOpen Source Building Career and Competency
Open Source Building Career and Competency
Ā 
The Story of Project Sputnik - Client to cloud solution
The Story of Project Sputnik - Client to cloud solutionThe Story of Project Sputnik - Client to cloud solution
The Story of Project Sputnik - Client to cloud solution
Ā 
Publishing your research results with an open source foundation
Publishing your research results with an open source foundationPublishing your research results with an open source foundation
Publishing your research results with an open source foundation
Ā 
React Native - Build Native Mobile App
React Native - Build Native Mobile AppReact Native - Build Native Mobile App
React Native - Build Native Mobile App
Ā 
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
"IBMs Open Source Strategy" by Adam Jollans @ eLiberatica 2009
Ā 
Ruby on Rails Development Ecosystem
Ruby on Rails Development EcosystemRuby on Rails Development Ecosystem
Ruby on Rails Development Ecosystem
Ā 
DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20
Ā 
Spring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application ServiceSpring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application Service
Ā 
Best Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for CompaniesBest Practices in Starting an Open Source Project for Companies
Best Practices in Starting an Open Source Project for Companies
Ā 
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web SimulatorOSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
Ā 
Asf icfoss-mentoring
Asf icfoss-mentoringAsf icfoss-mentoring
Asf icfoss-mentoring
Ā 
Internet (Intelligence) of Things (IOT) with Drupal
Internet (Intelligence) of Things (IOT) with DrupalInternet (Intelligence) of Things (IOT) with Drupal
Internet (Intelligence) of Things (IOT) with Drupal
Ā 
The Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGoThe Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGo
Ā 
5/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'165/ GitHub Inner Source @ OPEN'16
5/ GitHub Inner Source @ OPEN'16
Ā 
Productivity Gains Using Open Source products
Productivity Gains Using Open Source productsProductivity Gains Using Open Source products
Productivity Gains Using Open Source products
Ā 
Microservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They MatterMicroservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They Matter
Ā 
Lean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building ExperiencesLean Engineering. Applying Lean Principles to Building Experiences
Lean Engineering. Applying Lean Principles to Building Experiences
Ā 

Similar to Steeltoe and the Open Source .NET Renaissance

Asp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTDAsp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTD
Tasnim Jahan
Ā 

Similar to Steeltoe and the Open Source .NET Renaissance (20)

What is dotnet (.NET) ?
What is dotnet (.NET) ?What is dotnet (.NET) ?
What is dotnet (.NET) ?
Ā 
New Capabilities and Product Strategy for .NET on PCF
New Capabilities and Product Strategy for .NET on PCF New Capabilities and Product Strategy for .NET on PCF
New Capabilities and Product Strategy for .NET on PCF
Ā 
Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?Reasons Why .NET framework is Most Demanding in 2023?
Reasons Why .NET framework is Most Demanding in 2023?
Ā 
Enterprise serverless
Enterprise serverlessEnterprise serverless
Enterprise serverless
Ā 
Why do Companies Use .Net for Enterprise App Development?
Why do Companies Use .Net for Enterprise App Development?Why do Companies Use .Net for Enterprise App Development?
Why do Companies Use .Net for Enterprise App Development?
Ā 
ASP.Net Core Development Services in Sydney, Australia | Techcronus
ASP.Net Core Development Services in Sydney, Australia | TechcronusASP.Net Core Development Services in Sydney, Australia | Techcronus
ASP.Net Core Development Services in Sydney, Australia | Techcronus
Ā 
Service oriented cloud computing
Service oriented cloud computingService oriented cloud computing
Service oriented cloud computing
Ā 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!
Ā 
NET vs Java Which Technology Is Better for Website Development
NET vs Java Which Technology Is Better for Website DevelopmentNET vs Java Which Technology Is Better for Website Development
NET vs Java Which Technology Is Better for Website Development
Ā 
Top Reasons to Use Node.JS Development for Your Next Project
Top Reasons to Use Node.JS Development for Your Next ProjectTop Reasons to Use Node.JS Development for Your Next Project
Top Reasons to Use Node.JS Development for Your Next Project
Ā 
WeblineIndia's .NET 8 Software Development Services for Business
WeblineIndia's .NET 8 Software Development Services for BusinessWeblineIndia's .NET 8 Software Development Services for Business
WeblineIndia's .NET 8 Software Development Services for Business
Ā 
Srikanth.Mulesoft
Srikanth.MulesoftSrikanth.Mulesoft
Srikanth.Mulesoft
Ā 
Top Things to Know about .NET 6
Top Things to Know about .NET 6Top Things to Know about .NET 6
Top Things to Know about .NET 6
Ā 
All-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdfAll-inclusive insights on Building JavaScript microservices with Node!.pdf
All-inclusive insights on Building JavaScript microservices with Node!.pdf
Ā 
Azure for gaming
Azure for gamingAzure for gaming
Azure for gaming
Ā 
Ten compelling reasons to learn .net framework
Ten compelling reasons to learn .net frameworkTen compelling reasons to learn .net framework
Ten compelling reasons to learn .net framework
Ā 
Why Do Big Business Enterprises Prefer ASP.NET Development.pdf
Why Do Big Business Enterprises Prefer ASP.NET Development.pdfWhy Do Big Business Enterprises Prefer ASP.NET Development.pdf
Why Do Big Business Enterprises Prefer ASP.NET Development.pdf
Ā 
Asp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTDAsp.net Web Development | SEO Expert Bangladesh LTD
Asp.net Web Development | SEO Expert Bangladesh LTD
Ā 
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWSIOT311_Customer Stories of Things, Cloud, and Analytics on AWS
IOT311_Customer Stories of Things, Cloud, and Analytics on AWS
Ā 
What is .NET Chinese ver
What is .NET Chinese verWhat is .NET Chinese ver
What is .NET Chinese ver
Ā 

More from VMware Tanzu

More from VMware Tanzu (20)

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
Ā 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Ā 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
Ā 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
Ā 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
Ā 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
Ā 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
Ā 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Ā 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Ā 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Ā 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
Ā 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
Ā 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
Ā 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
Ā 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
Ā 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Ā 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
Ā 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
Ā 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
Ā 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
Ā 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
Ā 
+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@
Ā 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
Ā 
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
Ā 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
Ā 

Recently uploaded (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Ā 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Ā 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
Ā 
Mcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot Model
Ā 
Elevate Developer Efficiency & build GenAI Application with Amazon Qā€‹
Elevate Developer Efficiency & build GenAI Application with Amazon Qā€‹Elevate Developer Efficiency & build GenAI Application with Amazon Qā€‹
Elevate Developer Efficiency & build GenAI Application with Amazon Qā€‹
Ā 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Ā 
+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...
Ā 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Ā 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Ā 
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
Ā 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
Ā 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Ā 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
Ā 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
Ā 
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
Ā 
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
Ā 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
Ā 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
Ā 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
Ā 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
Ā 

Steeltoe and the Open Source .NET Renaissance

  • 1. Steeltoe and the Open Source .NET Renaissance Dave Tillman Lead Engineer - Steeltoe, Pivotal Zach Brown - @moredeploys Product Strategy & Marketing, Pivotal Beth Massi - @BethMassi Product Marketing Manager .NET Platform, Microsoft 1
  • 2. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Outline ā€¢ Welcome to the .NET Renaissance ā€¢ Steeltoe Overview ā€¢ Why is Steeltoe? ā€¢ Whatā€™s in Steeltoe? ā€¢ Demo and Deep Dive ā€¢ Roadmap & Resources 2
  • 3. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Be engaged! Join the dialogue Share your thoughts, opinions and photos ...even if you disagree 3 Beth Massi @BethMassi Steeltoe Project @SteeltoeOSS Zach Brown @moredeploys #springone
  • 4. Welcome to the .NET Renaissance
  • 5. Happy 15th Birthday, .NET! Born February 13, 2002
  • 8. LIBRARIES INFRASTRUCTURE .NET STANDARD .NET Standard allows sharing code, binaries and skills between .NET client, server and all of its flavors. .NET Standard provides a specification for any platform to implement
  • 9. APIs in .NET Standard 2.0 THREADING Threads ā€¢ Thread Pool ā€¢ Tasks IO Files ā€¢ Compression ā€¢ MMF DATA DataSet ā€¢ DataTable ā€¢ SQLClient
  • 10. APIs in .NET Standard 2.0 THREADING Threads ā€¢ Thread Pool ā€¢ Tasks IO Files ā€¢ Compression ā€¢ MMF DATA DataSet ā€¢ DataTable ā€¢ SQLClient https://github.com/dotnet/standard
  • 11. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ .NET Languages Innovation C# - Innovate aggressively and responsibly bringing latest language trends to enable modern applications - C# 7.2 just released ā€“ bring features in quicker with dot releases - C# 8.0 preview ā€“ Null reference types F# - Be the most productive functional language with full integration and interoperability with .NET Span<T> implemented - Safe access to continuous regions of memory - Brings performance improvements up and down the stack https://github.com/dotnet/csharplang/
  • 12.
  • 13. 0 200 400 600 800 1000 1200 Oct-13 Jan-14 Apr-14 Jul-14 Oct-14 Jan-15 Apr-15 Jul-15 Oct-15 Jan-16 Apr-16 Jul-16 Oct-16 Jan-17 Apr-17 Jul-17 Community Accepted PRs ā€œSamsung is embracing .NET because it is a completely open source project.ā€ ā€” Samsung ".NET is open source; that allows us to contribute back to it if we have any performance issues which Microsoft review and together we make a better product.ā€œ ā€” Illyriad Games 25,000+ Community Contributions from 1700+ Companies outside Microsoft
  • 15. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Performance improvements in .NET Core 2.0 Base class libraries (CoreFX) ā€¢ The community has submitted many of these performance improvements RyuJIT ā€“ Just-in-time IL compiler ā€¢ Benefits all .NET implementations Profile-guided optimization (PGO) ā€¢ Improvements to generate better optimized code for native components ā€œUsing the same-size server, we were able to go from 1,000 requests per second per node with Node.js to 20,000 requests per second with .NET Core.ā€œ ā€” Raygun https://www.microsoft.com/net/customers
  • 16. From TechEmpower Round 13 Plaintext Tests
  • 17. Modern Relevance Growth in popularity on Hacker News and Reddit since going open and cross platform Job market #2 demanded primary technology (LinkedIn) Development frameworks on Reddit & Hacker News Java Node.js .NET Community Momentum
  • 18. .NET is loved .NET Core debuts at #3 most loved Framework on Stack Overflow Technology Survey 2017 Source: http://stackoverflow.com/insights/survey/2017 C# is #3 most popular language for desktop and web developers on Stack Overflow Technology Survey 2017
  • 20. RayGun "Using the same-size server, we were able to go from 1,000 requests per second per node with Node.js to 20,000 requests per second with .NET Core." - John-Daniel Trask, CEO and Co-Founder AstroReality, Quantum Technologies "We think .NET Core is mature, very powerful, and a great choice for advanced modern apps." - Zerlot Ma, Cofounder and CEO Jet.com Inc. "The event-driven, microservices paradigm eliminated a lot of the overhead that comes with a service-oriented architecture." - Mike Hanrahan, CTO Tencent ā€œThe cross-platform capabilities of .NET Core were very important to us. Also, Microsoft designed .NET Core with a microservice architecture in mind, and that fits right in with our redesign plans.ā€ - Shanyou Zhang: Senior Software Architect Age of Ascent, Illyriad Games "Our game microservices are built using ASP.NET Core which gives us superior performance. ASP.NET is open source, that allows us to contribute back to it if we have any performance issues which Microsoft review and together we make a better product." - Ben Adams, CTO and Co-founder NetEase ".NET Core doesn't just help us get to market faster, it also enables our developers to focus on the core logic and what really matters, our players' experience. They don't have to deal with the communication gap and different ways of implementing the algorithm on the back and front end. They can just work on finding better ways to implement their ideas." - Feng Zhou, Product Director United Parcel Service (UPS) "Xamarin allowed us to develop a single code base in C# and deploy the application to two completely different mobile phone ecosystems." - Scott Hildebrand, Application Development Manager GoDaddy ā€œServices can be developed more quickly, perform faster in production, and scale better if theyā€™re written using .NET Core with C#.ā€ - Jeremiah Gowdy: Principal Software Architect microsoft.com/net/customers
  • 22. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Welcome Steeltoe to .NET Foundation! Resilient .NET microservices Cloud-native Security Data Connectors Service discovery with Netflix Eureka Circuit breakers with Netflix Hystrix Shared config with Spring Cloud Configuration Server Integration with Cloud Foundry Plus Management tools for production microservices http://steeltoe.io/
  • 25. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ - 12 Factor App principles (https://12factor.net/) - Configuration stored in environment variables - Out of process session state - No r/w to registry, GAC, Local file system - Loosely coupled backing services (i.e. RDBMS) ā€œTodayā€™s best practices are tomorrowā€™s anti-patterns.ā€ Cloud-Native .NET
  • 26. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Benefits of Microservices Architectures - Quickly iterate and release frequently - Easy for new devs to join and be productive - Increased developer velocity - Shorter test cycles - Polyglot becomes reality - Independently scalable components Microservices
  • 27. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Microservices = Distributed Systems = Way more complexity - How to troubleshoot microservices? - How to set global configuration across the whole application? - How to look up the dynamic addresses of services you consume? - What do you do when a service you depend on stops responding? But Microservices are hard
  • 28. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ There are some great OSS solutions already available and But until now theyā€™ve been focused on Java and not very accessible to .NET devsā€¦ The good news isā€¦
  • 29. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ To help you build Cloud native .NET applications and leverage Spring Cloud tooling for resilient microservices So thatā€™s why we built Steeltoe
  • 31. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Connectors for common data services - MySQL - Postgres - Redis - RabbitMQ - OAuth2 - MS SQL Server Cloud-Native .NET
  • 32. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Security Providers - OAuth2 SSO Provider - JWT resource protection - Redis-backed Key Ring Repository Cloud-Native .NET
  • 33. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Management Endpoints - /info arbitrary app info, e.g. git build tag - /health application health information - /trace circular buffer of last 100 http requests/responses - /loggers shows and modifies configuration of loggers down to the class level Cloud-Native .NET
  • 34. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Configuration Providers Cloud Foundry ā€¢ VCAP_APPLICATION, VCAP_SERVICES, CF_* Config Server ā€¢ Access config stored in Spring Cloud Config Server (backed by Git, Vault, local filesystem) ā€¢ Across all instances, all apps, all environments Cloud-Native .NET
  • 35. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Spring Cloud Config Server Cloud-Native .NET
  • 36. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Service Discovery with Eureka - .NET Client for Netflix Eureka - Dynamically discover and call registered services - Supports direct addressing Resilient Microservices
  • 37. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Circuit Breaker - .NET implementation of Netflix Hystrix - Bypass failing services with elegant fall-back behavior (so your users donā€™t see nasty error messages) - Rich metrics and monitoring Resilient Microservices
  • 38. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Netflix Hystrix Resilient Microservices
  • 39. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Steeltoe works... with .NET Core and with the .NET Framework on Windows and on Linux standalone and running on Cloud Foundry Open and Flexible ā€¦and now itā€™s part of the
  • 40. Demo
  • 41. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store browse music add item to cart place order
  • 42. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Config Server config servergit config config config config
  • 43. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Connectors config servergit redis connector mysql connector mysql connector mysql connector
  • 44. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Discovery config servergit browse music add item to cart place order eureka server service addresses register services
  • 45. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Management config servergit eureka server /info /health /trace /loggers /info /health /trace /loggers /info /health /trace /loggers apps manager
  • 46. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ MusicUI OrderProcessin g MusicStore ShoppingCart mySQL redis mySQL mySQL session cache GitHub repo: https://github.com/SteeltoeOSS/Samples/tree/master/MusicStore ASP.NET Music Store w/Steeltoe + Circuit Breakers config servergit eureka server hystrix dashboard circuit breakers metrics apps manager
  • 48. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Steeltoe Roadmap 2.0-rc1 December 2017 ā€¢ Full ANC 2.0 support ā€¢ CredHub support ā€¢ MS SQL Server Connector >2.0 ā€¢ New Management Endpoints ā€“ (Thread Dump, Heap Dump) ā€¢ Zipkin ā€¢ Netflix Ribbon Looking for something else? Tell us at https://slack.steeltoe.io or submit a PR 48
  • 49. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Learn more ā†’ https://steeltoe.io Clone a sample ā†’ https://github.com/SteeltoeOSS/Samples Get the packages ā†’ https://www.nuget.org/profiles/steeltoe Talk to us ā†’ https://slack.steeltoe.io/ Tell your friends ā†’ @SteeltoeOSS How to get started
  • 50. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ .NET Resources at SpringOne ā€¢ Pivotal Demo Lounge ā€¢ Build .NET Framework, .NET Core and polyglot (Java + .NET) apps and push them to Cloud Foundry ā€¢ Recommended sessions ā€¢ Migrating .NET and .NET Core to PCF (CapGemini) Tues. 4:20pm Room 2012 ā€¢ Tech Modernization: A Cloud Migration (Charles Schwab) Tues. 5:00pm Room 2010 ā€¢ Ensuring Platform Security w/Windows BOSH Add-ons & Runtime Config at Boeing Wed. 2pm Room 2024 50
  • 51. Unless otherwise indicated, these slides are Ā© 2013 -2017 Piv otal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Now itā€™s your turn to share Cloud Foundry Summit North America 2018 April 18-20, 2018 ā€“ Boston New track: ā€œCloud-Native .NETā€ Call for Papers Deadline: 12/8/2017 https://www.cloudfoundry.org/event_subpages/cfna18-cfp/ 51
  • 52. Learn More. Stay Connected. 52 #springone@s1p http://www.dot.net @dotnet http://steeltoe.io @SteeltoeOSS