Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Aspire vs Steeltoe #893

Open
michalsteyn opened this issue Nov 16, 2023 · 4 comments
Open

Aspire vs Steeltoe #893

michalsteyn opened this issue Nov 16, 2023 · 4 comments
Milestone

Comments

@michalsteyn
Copy link

The Aspire Project seems remarkably related to Steeltoe (https://steeltoe.io/)

Given that Steeltoe is mature with over 50 Million downloads, I'm curious if this project was ever considered and why Microsoft decided to rather create a new project.

Are there specific design goals / directions that differ from Steeltoe?

We developed an in-house microservice chassis about 8 years ago, when .Net Core 1 launched. We were just about to rewrite our implementation based on top of Steeltoe when we saw the Aspire announcement.

We now have to decide if we stick to Steeltoe, or whether we should use Aspire (and possibly wait longer until GA).

I think it would be hugely beneficial to the overall developer community to have some clarity from Microsoft's point of view regarding the differences between Aspire and Steeltoe.

@smitpatel smitpatel changed the title Aspre vs Steeltoe Aspire vs Steeltoe Nov 16, 2023
@danmoseley
Copy link
Member

@davidfowl

@davidfowl
Copy link
Member

Several of us were involved very early on when Steeltoe was created and the philosophy at the time was about making sure that shops with both Spring and .NET developers could share assets (config server, and eureka) and concepts from spring as a baseline. Spring lineage bleeds throughout the Steeltoe implementation as a result.

Some similarities and differences:

  1. Orchestration - Steeltoe does not have this. It should be possible to use Steeltoe with the aspire app model.
  2. Components - https://docs.steeltoe.io/api/v3/connectors/ - These are extremely similar. Aspire went a bit further with what get wired up by default.
  3. Service Discovery - https://docs.steeltoe.io/api/v3/discovery/index.html - Their service discovery implementation relies on the eureka server by default (again a spring ism).
  4. Dashboard - Steeltoe works with the https://docs.steeltoe.io/api/v3/management/springbootadmin.html dashboard if you configure the actuator endpoints.

I think their choices made sense for the audience they were going after, but it's not the way we wanted to build a .NET first, cloud native story. I would love to work with the Steeltoe team again to figure out how it evolves in a world where aspire exists, or if it makes sense to collaborate on the remaining gaps.

The aspire local orchestration developer experience is the thing that is unambiguously unique between the 2 projects, and should in theory be decoupled enough to work with Steeltoe.

@Layla-P
Copy link

Layla-P commented Nov 17, 2023

@davidfowl Chris Sterling, PM of Steeltoe, has already connected with Glenn about collaborating :-)

@csterwa
Copy link

csterwa commented Jan 10, 2024

@davidfowl (and others here), the Steeltoe team has made significant progress on getting commitment to engage with the .NET Aspire OSS project. Here is an issue that announces this commitment and also requesting feedback from the existing Steeltoe community:

SteeltoeOSS/Steeltoe#1244

We will be engaging more with .NET Aspire maintainers in the near future so stay tuned for more details on this collaboration.

@davidfowl davidfowl pinned this issue Jan 27, 2024
@davidfowl davidfowl added this to the Backlog milestone Jan 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants