What Is .NET Aspire? The Insane Future of .NET!

  Рет қаралды 255,331

Nick Chapsas

Nick Chapsas

6 ай бұрын

Use code BLACKFRIDAY23 and get 40% off any course and 20% off any bundle on Dometrain: dometrain.com/courses?coupon_...
Get the source code: mailchi.mp/dometrain/ns9vo74scv
Become a Patreon and get special perks: / nickchapsas
Hello everybody, I'm Nick, and in this video, I will showcase .NET Aspire, which was announced in .NET 8's .NET Conf. It is a fantastic stack for building cloud-native distributed applications, and there is a lot to cover, so let's jump into it.
Workshops: bit.ly/nickworkshops
Don't forget to comment, like and subscribe :)
Social Media:
Follow me on GitHub: github.com/Elfocrash
Follow me on Twitter: / nickchapsas
Connect on LinkedIn: / nick-chapsas
Keep coding merch: keepcoding.shop
#csharp #dotnet #dotnetconf

Пікірлер: 409
@johnnyirish9852
@johnnyirish9852 6 ай бұрын
This is fantastic, please make a series and take this to the limits. Can we have different components like workers that consume service bus messages, how does one del with connection strings and so on. What aspire packages are there, and what do they offer. I am dealing with microservices, and bringing up the local environment means running this and that container, storage and service bus in Azure (storage could be also in the emulator), and running other parts in VS to do debugging, and then command line to fire up tests against this setup. it is really a pain everytime I want to debug
@modernkennnern
@modernkennnern 6 ай бұрын
I've never tried distributed applications before because they are so overwhelming. Maybe this will be the start of something new.
@2u1u
@2u1u 6 ай бұрын
Aspire looks pretty good and I'm excited to see where it goes. Your example is nice if everything is under one solution but we all know that's not how we dev in reality. What I'd like to know Nick is; how do wire up aspire when your frontend projects and APIs are in separate solutions?
@2u1u
@2u1u 6 ай бұрын
I'd like to add, does everything need to be on dotnet 8 for aspire to work?
@RaZziaN1
@RaZziaN1 6 ай бұрын
aspire template is only in latest preview version of vs, so looks like yes@@2u1u
@daniaalnadir
@daniaalnadir 6 ай бұрын
Came to say this. In reality all our projects are in separate repos. I’m struggling to see how Aspire can be used with that structure. It seems like it’s only good for multiple projects in one solution ?
@apr0l
@apr0l 6 ай бұрын
Use nuget packages maybe? Idk if it'll work like that tho
@2u1u
@2u1u 6 ай бұрын
​@@apr0lI've been looking at the Aspire documentation from Microsoft to see if there is examples of the above use case and I don't see anything that's black and white. I think you'd have to use its service discovery option to find services and there is mention of k8s or azure containers discovery. I've not attempted to play around yet. I'm hoping nick or someone's done the hard graft and will provide a nice short overview soon
@harezalex
@harezalex 6 ай бұрын
I'm skeptical. How would it work for heterogenous systems (here I mean systems with components created using different programming languages/technologies)? Let's say I have a FE written in js/ts and not blazor? Or I have a BE component(s) written in go/ruby/rust/python/anything else? Also, as mentioned here multiple times, it will work painlessly only for monorepos.
@qj0n
@qj0n 6 ай бұрын
As for heterogenous systems - they include in repo an example for NodeJS. It looks like this: builder.AddNpmApp("frontend", "../NodeFrontend", "watch") So I assume, they allow to extend this builder with other commands, essentially allowing to connect anything As for monorepo - maybe as a fan of monorepos I'm a bit biased, but I'd say all issues with it in polyrepos are frequent issues with polyrepos in general. The 'defaults' project can be shared via some package - you have to keep track of versions, but that's the point of polyrepo. The 'host' project is used for 2 things: running all locally and generating the manifest file for deployment. So in polyrepo you'll probably have one for each deployment units (probably one per repo).
@adambickford8720
@adambickford8720 6 ай бұрын
I'd assume it's essentially just .net lifecycle hooks integrated into dev containers. For 'foreign' tech stacks you'll likely have to specify whatever's needed for the entrypoint of those apps.
@jegtugado3743
@jegtugado3743 6 ай бұрын
If you explore the web app with react js template then it is just a matter of configuration. Probably don’t have to touch Aspire because the config links the frontend and the web app
@thiagomatu
@thiagomatu 6 ай бұрын
This is huge. We use AWS cdk in our company and that is a pain in the neck. If this works for aws in the future, will be a big win
@davidfowl
@davidfowl 6 ай бұрын
That’s the hope!
@Dustyy01
@Dustyy01 6 ай бұрын
I was so hyped when seeing this!🎉 Can you please make a video on how to deploy that on azure and aws? And even perhaps on self hosted vServers? A lot people would benefit from this❤
@petropzqi
@petropzqi 6 ай бұрын
Self-hosted would be awesome
@ayotundeayoko5861
@ayotundeayoko5861 6 ай бұрын
@@petropzqi yep -I suspect it would be possible on self-hosted. Would be awesome for my org.
@OliverRivettCarnac
@OliverRivettCarnac 6 ай бұрын
I'd live to see a helm deployment example of those to eks or aks
@user-vk8mz3wv3c
@user-vk8mz3wv3c 6 ай бұрын
Great intro video Nick, thanks for sharing it. MS documentation is also pretty sufficient to this point (e.g. I was wandering whether someone would still need Dapr and is answered in MS Aspire FAQs). I just wander if Aspire is tight to Blazor or you can have solutions with different frontend technologies.
@Rajeshsingh-ws5th
@Rajeshsingh-ws5th 6 ай бұрын
Great work by MS, and thanks Nick for bringing it up in very elegant way.
@daniildoronkin2959
@daniildoronkin2959 6 ай бұрын
It's pretty cool. I usually add a docker-compose file to manage a fairly similar flow, including otel-collector and grafana stack images. It's much easier with Aspire. It would be great to learn how to use an Aspire based approach in a production environment. I'm guessing this will be supported out of the box for Azure, but not sure about Kubernetes and other cloud platforms. Thanks for sharing, lots of useful and inspiring content!
@davidfowl
@davidfowl 6 ай бұрын
The orchestrator doesn’t run in production. The assumption is that we can model the local environment when you are deployed. So for deployment we can setup your cluster in a way to preserves the experience when you run on k8s (or azure or aws).
@kaisersolo76
@kaisersolo76 6 ай бұрын
This is so cool. look forward to more on this.
@user-nv4sh1ie7m
@user-nv4sh1ie7m 5 ай бұрын
This has to be one of the best thing coming out of .Net in a while. Hopefully they release a stable version.
@inzyster
@inzyster 6 ай бұрын
This looks interesting, I’d love to see some follow up with practical use cases. I guess that’s a Dometrain course in the making 😂
@dorlg6655
@dorlg6655 6 ай бұрын
thats kind of an internal docker compose seems cool for fullstack devolpment using blazor, but do you see aspire useful for backend devs as well? btw, that dashboard is nice, is it available also without using the aspire builder?
@matthewwatts6281
@matthewwatts6281 6 ай бұрын
This is a brilliant addition. It has the power of Azure Service Fabric without all the overhead and complexity. Nicely explained by Nick.
@ihnatklimchuk1018
@ihnatklimchuk1018 6 ай бұрын
You named the reason why it won't be popular.
@richardc215
@richardc215 5 ай бұрын
Great Video. Thanks. Looking forward to learning more.
@maksymkyian4920
@maksymkyian4920 6 ай бұрын
Looks awesome, looking forward to the new videos about it.
@stassss2011
@stassss2011 6 ай бұрын
This is really cool project! Thanks for sharing!
@calvinwilson3617
@calvinwilson3617 6 ай бұрын
Really appreciate the black friday deals. Money has been tight and ive been wanting to check out the logging class so finally picked it up!
@romka2009
@romka2009 6 ай бұрын
Look very cool. This is definitely something to deep into. Thanks!
@GersonDias1812
@GersonDias1812 6 ай бұрын
An export to k8s yaml or at least to docker compose is a must. A can see that deployments been handled to the DevOps guys and the dev team like "I did the aspire thing"
@lasksoriful3455
@lasksoriful3455 6 ай бұрын
A
@manwatermelon
@manwatermelon 6 ай бұрын
Immediately thought of Project Orleans (and DAPR too). Use-case might slightly differ, but they solve most of the problems + introduce "actor" framework that is designed to solve async problems in distributed systems
@kocot.
@kocot. 6 ай бұрын
I'd be careful using DAPR for big scale, production scenarios, the component bindings have unfortunately still a way to go, and many pieces are still missing or only entering preview. The same applies for mentioned projet tye, if it's even still alive. And all that makes me feel this is going to end up the same - sounding too good to be true at first, then for ages still not yet production ready, and then not anymore alive...
@colebq
@colebq 6 ай бұрын
@@kocot. Hi. People seem to use Dapr in production. What are the specific problems you are referring to?
@kocot.
@kocot. 6 ай бұрын
@@colebq we had multiple, mostly with EH and Cosmos bindings, but also with resiliency not implemneted, with app health checks not respected, etc It should be coming soon but it wasn't there yet
@daveanderson8348
@daveanderson8348 6 ай бұрын
Totally agree regarding Microsoft Orleans. In my opinion, MS Orleans solves most problems of a distributed system natively without any extra fuss. Unfortunately, it has never received the necessary attention from Microsoft itself because it makes many Azure products and services redundant and Microsoft would sell fewer Azure services.
@user-ji2yk7wu4n
@user-ji2yk7wu4n 5 ай бұрын
​​​​@@kocot. Bs. Dapr is already used in production for sometime now. Even big companies like NASA is using it
@noelfrancisco5778
@noelfrancisco5778 6 ай бұрын
This is a good feature for monitoring, thanks for sharing :)
@Stig12
@Stig12 6 ай бұрын
@nickchapsas can you make a video on how we can create our own Aspire Components? I would like to use it to run containers locally for databases/services not currently offered.
@Silky987
@Silky987 6 ай бұрын
This is such a cool advancement, can't wait to give it a try
@renynzea
@renynzea 6 ай бұрын
I could see this as being pretty useful where I work. Just wonder if there is a way to have it load an app into a browser tab by default and focus it, so when testing you don’t have to click the link in the portal to start testing your main project, but can still switch to the portal if you want.
@Zutraxi
@Zutraxi 6 ай бұрын
As with many things I wish this was present when I started working on the setup I am currently working on... So much effort to change.
@GlassScissors
@GlassScissors 3 ай бұрын
Hey Nick, thank you for this Aspiring ;) demonstration. I am very interested in an example on how one can deploy an aspire application with containers. Where would the containers be hosted, how will they be deployed etc. Thanks!
@soucianceeqdamrashti8175
@soucianceeqdamrashti8175 6 ай бұрын
Awesome! Will make writing code for distributed apps way easier!
@FraserMcLean81
@FraserMcLean81 6 ай бұрын
This is really cool, and I love your enthusiasm! I would be keen to understand more about how to take this from local development to cloud deployment (I use Azure)
@AJax2012
@AJax2012 6 ай бұрын
Super excited for this! Looks amazing. Can you do a video on how would set this up for micro services? I'm a little confused how you would get other solutions to recognize the app host unless you would publish it as a nuget package or something.
@_codewithlima
@_codewithlima 6 ай бұрын
Same here, I'm also curious to know how this works with projects running in different solutions.
@timur2887
@timur2887 6 ай бұрын
+1 we should look deeper into this
@TheKoneko1312
@TheKoneko1312 6 ай бұрын
I love this, but i really wants to see what it looks like with a lot of microservices in a fully fledged application. Also, we're gonna have to wait for extra tooling to bring none dotnet based web pages to aspire (because i'd love to monitor my react to the same interface while debugging). I also don't mind containers and apis to be different pages. There's other UIs choices (like the metrics filters being unreadable) that are more important to tackle first IMO
@MrGTFOplz
@MrGTFOplz 6 ай бұрын
Might be useful for smaller, new projects that are tightly integrated to .NET. One fundamental issue I see is that it seems completely tied to monolith repos. How is it supposed to work in a microserviced architecture without having annoying git submodules all over the place?
@AldoInza
@AldoInza 6 ай бұрын
Nuget?
@BarbarosYurttagul
@BarbarosYurttagul 6 ай бұрын
maybe, have an aspire repo that submodules all the microservices / apps
@MrGTFOplz
@MrGTFOplz 6 ай бұрын
@@BarbarosYurttagul sounds like a pain in the ass to maintain tbh. You'll have to update the submodule every time something changes
@gavinlangley8411
@gavinlangley8411 6 ай бұрын
Yes very good point and also how to split across dev/code and a built/running environment. It often not possible to run everything locally and you want to point at share dev services that are already running.
@Denominus
@Denominus 6 ай бұрын
It doesn't. It will only work for smaller projects with not too many services/moving parts. The idea that you can run an entire large distributed system on your dev machine is fundamentally flawed, so there is a hard ceiling with how far you can go with this.
@adomovic323
@adomovic323 6 ай бұрын
wow, thank you. This is great, will make managing micro-services more easier
@epiphaner
@epiphaner 6 ай бұрын
This is seriously cool! Just wish I had access to this a year ago when I was setting up a distributed application 😄
@FernandoTakeshiSato
@FernandoTakeshiSato 6 ай бұрын
now THAT seems pretty damn cool, can't wait for this to mature!
@EldonElledge
@EldonElledge 5 ай бұрын
Simply AWESOME
@cn-ml
@cn-ml 5 ай бұрын
This seems like it could be really powerful. From what I understand from your video, this is similar to creating a docker compose project.
@dcuccia
@dcuccia 6 ай бұрын
This is very cool. I look forward to your next videos. I'll have to check the .NET Conf content, but the three things that I'd like to know about are: 1) what's the auth story? can we set up and mock client apps to delegate to a provider like Entra or Google? 2) what's the best practice for protecting the API with token-based auth? roll-your-own with filters, or is there something out of the box in Aspire? 3) what's the native client story? anything that works for Blazor webassembly that wouldn't translate to Blazor hybrid (MAUI/WPF/WinForms)? interested in that answer for both auth, and just in general.
@davidfowl
@davidfowl 6 ай бұрын
There's no new auth story outside of what already exists.
@buni1510
@buni1510 5 ай бұрын
this is amazing
@akcartoons4357
@akcartoons4357 6 ай бұрын
Thanks a lot.
@GianlucaIselli
@GianlucaIselli 6 ай бұрын
Is there a way to have it multirepo? Since we're speaking about microservices would be great to have services divided in different git repositories (without submodules) but it doesn't seams so easy. I mean, you need references for all the projects in that AppHost
@Dustyy01
@Dustyy01 6 ай бұрын
Monorepo would be the best solution
@GianlucaIselli
@GianlucaIselli 6 ай бұрын
I really hope Microsoft has something in mind. It's been said its done for big projects as well, and have it in one huge monorepo is not ideal
@zwatotem
@zwatotem 6 ай бұрын
Git submodules perhaps?
@BarbarosYurttagul
@BarbarosYurttagul 6 ай бұрын
maybe, have an aspire repo that submodules all the microservices / apps
@davidfowl
@davidfowl 6 ай бұрын
​@@GianlucaIselli How do you run today? Are you coupled to other projects to run your slice of Microservices?
@vmakharashvili
@vmakharashvili 6 ай бұрын
Amazing! This is so coooool!
@YungDeiza
@YungDeiza 6 ай бұрын
This is beautiful
@hippopotamuswheatnix
@hippopotamuswheatnix 6 ай бұрын
@nickchapsas, thanks for the video! I’d love to see your thoughts on Dapr someday.
@mischa_i
@mischa_i 6 ай бұрын
this is awesome!
@cheebadigga4092
@cheebadigga4092 6 ай бұрын
awesome! thanks
@renebu2204
@renebu2204 6 ай бұрын
Sounds awesome 👍 But do you think you should use this already like in the example for an api and frontend or only for more complex structures?
@AndrewBabbitt
@AndrewBabbitt 6 ай бұрын
Aspire can be useful no matter how big or small your app is, the dashboard in particular provides a lot of great details during development that could be useful to anyone developing a .NET app.
@davidfowl
@davidfowl 6 ай бұрын
Yep. It’s “cloud native” but the tech is pretty general purpose. A single app with dependencies also works.
@davidtaylor3771
@davidtaylor3771 6 ай бұрын
Thanks Nick and this is awesome. I don't know why people are getting upset about any slight overlap with Docker/K8S. A big part of this is simplifying configuration of multiple projects running locally, including configuring everything so all the various nuget packages used (SQL, Redis, etc) and logs, metrics, configuration are all visible in a simple console and easy to work with. How does docker help me wire up my nuget packages with such best practices to see this type of telemetry locally?
@todorkatsarski7487
@todorkatsarski7487 6 ай бұрын
Am I the only person who hates configuring Docker compose? For me it's tedious and error prone, it never works the first time, it's time consuming and hard to debug when it doesn't work. Of course Docker is necessary and I have to live with it, but would be so much nicer if there is a way to achieve similar and more in a strict language, with Api with intelisense, with compiler and even unit tests! I hope Aspire becomes a thing and fixes all of Docker compose's issues.
@vorontsovru270895
@vorontsovru270895 6 ай бұрын
To be honest, starting in the middle of the video, I just sat with my mouth open in surprise and admiration. This deserves every imaginable and unimaginable ovation towards the developers of this product! Bravo! Nick, need more information/tutorials on working with this project!
@ilyashtefan7985
@ilyashtefan7985 6 ай бұрын
A lot of microservices I want to have option to add projects from different repos, is there any way to handle this? Thank you very much for content!!
@ndimlo2906
@ndimlo2906 6 ай бұрын
hi Nick, you are, in my view, one of the most reliable and resourceful mentor for many developers currently. May i suggest however, that you slow your speech down so that your videos speak to us, rather than hurrying to get to the end. I think many do not mind sitting to your 2 hour videos, so the length doesnt throw us off...pretty please
@AkashPrakash-zj4bx
@AkashPrakash-zj4bx 4 ай бұрын
Whether it can be used to react (frontend) and core (backend) project?
@darren780
@darren780 6 ай бұрын
Thanks
@sachinbarthwal8251
@sachinbarthwal8251 13 күн бұрын
Amazing!
@TomasJansson
@TomasJansson 6 ай бұрын
Great introduction. From my perspective it feels like Aspire tries to solve.a problem where teams have a lot of distributed applications... but is the solution really another tool, or maybe it should be to consolidate some of the applications? With that said, I do think it is good that they are pushing more good defaults with otel and also makes it easy to connect things locally. I also wonder how, and if, it is possible to include something like a nextjs application into this world? I mean, create API in .NET, use docker for redis, and what do I do with an "external" thing like a nextjs application?
@kocot.
@kocot. 6 ай бұрын
I was thinking this same, I wish they focused on completing the OTEL support or better cover typical scenarios in the default SDKs so it needs less boilerplate and hacks, other than trying to come up with just another layer on top of those. It's quite amazing for example how poorly EventHubs work with both OTEL and AppInsights out of box -> fix that. Or how much work you need to for proper batching or alerting in the EH SDK. But no, instead we get another abstraction layer that looks all cool and fancy, but which no one will use in a serious project, cause he'll hit a wall sooner or later.
@davidfowl
@davidfowl 4 ай бұрын
@@kocot.This isn't an abstraction layer. This isn't tied to Azure. We're working with SDK teams in the general ecosystem to make OTEL better so that the dashboard *is* more useful.
@djenning90
@djenning90 6 ай бұрын
I love this!
@DiomedesDominguez
@DiomedesDominguez 6 ай бұрын
Can you please extend the usage of Aspire with Identity for example, and how to keep all the authorization and authentication separate from the frontend?
@codeheaven559
@codeheaven559 5 ай бұрын
Can we use this in frontend spa apps like react, nextjs, angular?
@CubiqleSystems
@CubiqleSystems 5 ай бұрын
Can i use Aspire on project running multiple solutions?
@cedricvereecke6108
@cedricvereecke6108 6 ай бұрын
this is exciting
@hyporia_
@hyporia_ 6 ай бұрын
Does it work only with blazer frontend? What about other frontend frameworks: Angular, React, Vue?
@clashclan4739
@clashclan4739 6 ай бұрын
how scaling works? how deployments done on different cloud provider? how it will work on Kubernetes cluster? how it will work on on-prem server farms?
@elack08
@elack08 6 ай бұрын
I’m curious, can you step debug between different projects with aspire now?
@spuriousGeek
@spuriousGeek 5 ай бұрын
what is the terminal that you are using? Looks very nice :)
@lordicemaniac
@lordicemaniac 6 ай бұрын
is it possible to stop, edit and start one of those sub projects while others are running? having few projects like api, some micro services that it uses and FE and needing to fix some bug in only one of them, it would take too much time to stop everything and then start again after change
@davidfowl
@davidfowl 6 ай бұрын
There's no explicit restart in the dashboard today, we definitely need to add that (there's an issue). You can run dotnet watch and change individual services and it'll auto restart. You can also hot reload, or ctrl + f5 in VS and rebuild individual services. We need to improve this though.
@TornTech1
@TornTech1 5 ай бұрын
My architect always says "microservices is not a technical implementation per-se, it is a team management implementation" (Before anyone comments, i know there are additional technical benefits to microservices!) We moved away from Monolithic applications because 20 developers all working on the same project step on each others toes... so we will break our application up into services, now each team could own a service or whatever.... but now my application is not a SLN with 30 services(and each "service" could have 2-3 CSPROJ projects!) but separate repo's with their own commit lifecycle and release lifecycle.. We are shipping individual services to production 2-3 times a day.... not sure how this will overcome that..
@davidfowl
@davidfowl 5 ай бұрын
I don't think it's supposed to. Physical services != logical services, so you could have each team working in their own aspire universe (this is what people are doing today with docker compose). If you do need to call another service, there are a couple options, but it shouldn't fundamentally change what you are doing today.
@johnsuckher3037
@johnsuckher3037 6 ай бұрын
cool I didn't understand at first from launch post is it kubernetes in IDE. Though this video upload schedule made me check calendar in case I haven't been missing a workday
@flibbertigibbet6324
@flibbertigibbet6324 6 ай бұрын
Ha! I had not thought of describing Aspire like this but I get your point. Azure Container Apps could be described as Kubernetes-Easy and now Aspire can be thought of as Azure Container Apps Easy. There is a wonderful IDE to Cloud Architecture continuum taking shape here.
@modernkennnern
@modernkennnern 6 ай бұрын
I remember reading about them adding the workload commands to the dotnet CLI earlier this year, but I feel like it wasn't described why. I guess it was added because of Aspire, and Aspire was still on the down low. Fair enough
@sebastianbusek2087
@sebastianbusek2087 6 ай бұрын
What's the purpose of this tool? Is it supposed to be use in production or in development? Is it going replace Application Insights and/or Elastic APM?
@distinguishedmoments2277
@distinguishedmoments2277 5 ай бұрын
Wow. Neat.
@phreakadelle
@phreakadelle 6 ай бұрын
Put out the "way more Aspire content"! NOW! This looks awesome! And: When will Aspire be out of preview?
@FilipFranik
@FilipFranik 6 ай бұрын
Can I use this to do end-to-end testing?
@tyronestephen4263
@tyronestephen4263 5 ай бұрын
Does the API need to be in .net 8? Or can I use dotnet 7?
@paarma1752
@paarma1752 6 ай бұрын
What if I want to run only some of our microservices locally and not everything? I want the locally running microservices to be "connected" to the ones running in our dev env in Azure and also to databases in Azure using my VS or Az CLI identity. Is that possible today? If not, then as of today Aspire is good only for developing distributed monoliths, I guess..
@KonradGM
@KonradGM 11 күн бұрын
what is this commandline highlighting that you have here?
@talwald1680
@talwald1680 6 ай бұрын
Looks really cool! How would this work with multi platform/language orchesration?
@Bliss467
@Bliss467 6 ай бұрын
This is my primary question. Does it have the power to simplify things when you’re using, say, an Angular front-end. My expectations are quite low, but if aspire turns out to be a hit, they’ll probably start adding those kinds of features, since it’s far easier to be language agnostic on the backend these days than the frontend.
@talwald1680
@talwald1680 6 ай бұрын
@@Bliss467 I totally agree, and if this simplifies integrating multiple dotnet projects in a deployment of multiple technology stacks, that could just mean less burden on devops, by having less to worry about.
@qj0n
@qj0n 6 ай бұрын
apparently it supports it - in their examples I found integration with NPM Node backend app: builder.AddNpmApp("frontend", "../NodeFrontend", "watch") I guess they can wrap any app you can run with a command, so it shouldn't be a problem
@ardavaztterterian1211
@ardavaztterterian1211 6 ай бұрын
Can you still use this when you don't have all your microservices under one project? What if I have 2-3 seperated distribution microservices on different projects, but I still want to tun them using Aspire as a single unit? Is that possible to do?
@BarbarosYurttagul
@BarbarosYurttagul 6 ай бұрын
maybe, have an aspire repo that submodules all the microservices / apps
@peymanebrahimi7756
@peymanebrahimi7756 6 ай бұрын
Amazing.
@SuperLabeled
@SuperLabeled 4 ай бұрын
I don't see a Node.js component available (for now?). It would be great to see how this could integrate with Node.js projects.
@caunt.official
@caunt.official 6 ай бұрын
So how is it distributed? It’s running on your single PC. How do we use it in kubernetes?
@flibbertigibbet6324
@flibbertigibbet6324 6 ай бұрын
When running an Aspire solution locally does the Aspire tooling build multiple Linux containers and launch them? Half way through Nick's video I was expecting him to switch to Docker Desktop and show the solution services running as containers under Windows Subsystem for Linux (WSL). Neither Nick's video or the Microsoft .Net Conf 23 presentations did this, so what is the local runtime model?
@flibbertigibbet6324
@flibbertigibbet6324 6 ай бұрын
After upgrading to the latest VS2022 ( called preview ) and testing Aspire I can answer my own question. The Aspire tooling does not use Docker containers for regular C# projects when running locally. The Aspire dashboard shows the process ID of each project and for Blazor and WebAPI projects the process IDs seem to map to regular Windows .exe's. The launch time of the demo Aspire 3-project solution is impressive and much faster than Dapr which is container based even for local development. When an Aspire solution is first run VS2022 shows a prompt that suggests running Docker, this is optional and must be a default suggestion just in case a solution does include a container based service such as Redis. I assume that Aspire is capable of launching a hybrid solution comprised of both regular Windows projects and container based services with automatic network mapping between the Windows o/s localhost and container VNets within Docker Desktop.
@davidfowl
@davidfowl 5 ай бұрын
It's using docker to run containers, but the orchestrator runs both containers *and* executables. Your projects do not run in containers.
@flibbertigibbet6324
@flibbertigibbet6324 5 ай бұрын
@@davidfowl This is the answer I was hoping for. I had previously spent a few months working on a C# Dapr project and found that its container based build/deployment model did not result in an efficient development "inner loop". I am beginning to foresee a complementary set of technologies emerging for distributed system deployment in the Cloud namely Aspire > Dapr > Radius. My smaller pure C# solution (2 x Blazor UI, 5 MicroServices and 6 going on 10 to 15 Azure Durable functions) looks like a perfect fit for Aspire + Azure Container Apps) though I understand why larger orgs would deploy to a Dapr architecture and adopt Radius for higher level cloud architecture conformance.
@alexandreribeirosilva550
@alexandreribeirosilva550 6 ай бұрын
In the traces, how does It work for database queries ? For example, If the backend runs a entity framework query, Will the trace show the query and How much time takes to run ?
@davidfowl
@davidfowl 6 ай бұрын
Yes it will and it uses open telemetry to do so.
@footballaipredictions
@footballaipredictions 6 ай бұрын
Can you do this say with an api in one solution and a frontend in another? (Without just putting them in the same solution)
@zenluiz
@zenluiz 6 ай бұрын
Amazing
@candinhosilveira2047
@candinhosilveira2047 6 ай бұрын
can i use api and wpf for client?
@npozh
@npozh 6 ай бұрын
Can it be build in docker image?
@VadimKhalatryan
@VadimKhalatryan 6 ай бұрын
In your given example, all the projects are in the same solution. May I ask you, please, to give such an example in which web projects will be in different solutions. I mean how aspire will work in such a structure.
@ayoubdkhissi
@ayoubdkhissi 6 ай бұрын
Intressting!
@keletsoa.botsalano4531
@keletsoa.botsalano4531 6 ай бұрын
Hi Nick, I had so much hope for Project Tye but it got discontinued. Do we know if Microsoft intends to continue with Aspire or will we get bitten again? 😅
@nothingisreal6345
@nothingisreal6345 6 ай бұрын
Aspire is the best that happend since a long time!
@HassanAhmed-wk2ci
@HassanAhmed-wk2ci 6 ай бұрын
What that is really insane dealing with all that will be tricky but reaching docker is crazy thing this is going to be the Futcher of distributed systems
@mtsmithtube
@mtsmithtube 3 ай бұрын
That's a LOT of rope! Newbie bootcamp developer can now create an entire distributed system in a few hours and once deployed can accidentally rack up tens of thousands of dollars worth of compute time in a matter of seconds. Genius Microsoft :)
@EzequielRegaldo
@EzequielRegaldo 6 ай бұрын
Looks amazing, can i scale horizontally with this ? For example put everything inside docker and distribute my app among nodes
@davidfowl
@davidfowl 6 ай бұрын
You would use a cloud or kubernetes to scale horizontally.
@EzequielRegaldo
@EzequielRegaldo 6 ай бұрын
@@davidfowl of course and ill use aspire a lot because we're migrating bare metal to kubernetes, its a breeze!
@jagadishwarballa
@jagadishwarballa 5 ай бұрын
Does it work with javascript frontend?
@jakobschultheis7886
@jakobschultheis7886 6 ай бұрын
How does this work in a multi-repo environment, where theses components/projects live in their own code repository?
@G41headache
@G41headache 6 ай бұрын
So, what if I want to compile/run non .NET projects? Normally, I would just run a published docker image? How would this work with aspire? As far as I can see, it only has support for .NET right?
@davidfowl
@davidfowl 5 ай бұрын
You can run any executable or container image as part of orchestration.
@GambitVil
@GambitVil 6 ай бұрын
It looks nice for starters. But would be good to see how it: 1. Could be used with FE as React/Next.js application. 2. How it could be deployed on Azure?
@BRelding92
@BRelding92 6 ай бұрын
Very cool, what do you think the future of this will look like? Will it stick around?
@k-ravndal
@k-ravndal 6 ай бұрын
Really cool, but what about solutions that are spread across teams, not sharing repos or solutions file?
@332glenn
@332glenn 6 ай бұрын
This is actually cool, will make building micro services architecture alot easier... wiring it all up. Would like to know how to deploy such a project with a dependency on a docker container.
@Demonata1223
@Demonata1223 6 ай бұрын
I don't know about that. Microservices are supposed to be independently deployable and independent of each other. Having to reference each service defeats the purpose I think
@gkato
@gkato 6 ай бұрын
@@Demonata1223 Yeah I find it a little bit weird. I wonder if we can export that manifest.json with enough data for other people to get the docker images configured with all the variables and run in their system without depending on my repo. It also seems to be more specific for http workflows. Not sure about the benefits of using Aspire with the Rabbitmq package.
@332glenn
@332glenn 6 ай бұрын
@@Demonata1223 Ah, I was more looking at it from an easy wiring it all up to each other, I was under the understanding you can still independently deploy it from each other...
@Demonata1223
@Demonata1223 6 ай бұрын
@332glenn Each service has to have a reference to each other. Which means each service is deployed together.
@332glenn
@332glenn 6 ай бұрын
@@Demonata1223 Good point 👍👍
Getting Started with Event Sourcing in .NET
37:07
Nick Chapsas
Рет қаралды 23 М.
"Stop Using Async Await in .NET to Save Threads" | Code Cop #018
14:05
didn't want to let me in #tiktok
00:20
Анастасия Тарасова
Рет қаралды 12 МЛН
I MADE A CARDBOARD SWING!#asmr
00:40
HAYATAKU はやたく
Рет қаралды 32 МЛН
Разбудила маму🙀@KOTVITSKY TG:👉🏼great_hustle
00:11
Why I think .NET Aspire is Overhyped
21:16
Raw Coding
Рет қаралды 12 М.
Why Startups Hate .NET and C#
10:38
Nick Chapsas
Рет қаралды 239 М.
Why Developers Already Hate .NET 9
10:12
Nick Chapsas
Рет қаралды 70 М.
Is Blazor Better than React?
14:25
Gavin Lon
Рет қаралды 38 М.
Swagger is Going Away in .NET 9!
10:48
Nick Chapsas
Рет қаралды 64 М.
Microsoft FINALLY killed it
6:45
Alex Ziskind
Рет қаралды 528 М.
Forget Grafana And Prometheus! Start With This.
10:51
Nick Chapsas
Рет қаралды 39 М.
The Ultimate .NET Developer Roadmap in 2024
11:09
Nick Chapsas
Рет қаралды 129 М.
Await Async Tasks Are Getting Awesome in .NET 9!
9:24
Nick Chapsas
Рет қаралды 82 М.
didn't want to let me in #tiktok
00:20
Анастасия Тарасова
Рет қаралды 12 МЛН