Skip to content

Commit adc4397

Browse files
More updates, including Figure titles.
1 parent 3a586be commit adc4397

File tree

3 files changed

+43
-17
lines changed

3 files changed

+43
-17
lines changed

content/learning-paths/servers-and-cloud-computing/net-aspire/_index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ learning_objectives:
1111
- Modify code on a Windows on Arm development machine.
1212
- Deploy a .NET Aspire application to Arm-powered virtual machines in the Cloud.
1313
prerequisites:
14-
- A Windows on Arm machine, for example [Windows Dev Kit 2023](https://learn.microsoft.com/en-us/windows/arm/dev-kit), or a Lenovo Thinkpad X13s running Windows 11 to build the .NET Aspire project.
14+
- A Windows on Arm machine, for example the [Windows Dev Kit 2023](https://learn.microsoft.com/en-us/windows/arm/dev-kit), or a Lenovo Thinkpad X13s running Windows 11 to build the .NET Aspire project.
1515
- An [Arm-based instance](/learning-paths/servers-and-cloud-computing/csp/) from AWS or GCP.
16-
- Any code editor. [Visual Studio Code for Arm64](https://code.visualstudio.com/docs/?dv=win32arm64user) is suitable.
16+
- Any code editor. [Visual Studio Code for Arm64](https://code.visualstudio.com/docs/?dv=win32arm64user) is an example of a suitable editor.
1717

1818
author_primary: Dawid Borycki
1919

content/learning-paths/servers-and-cloud-computing/net-aspire/project.md

Lines changed: 35 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
2-
title: Create an application
2+
title: Create a project and then an application
33
weight: 3
44

55
### FIXED, DO NOT MODIFY
66
layout: learningpathall
77
---
88

99

10-
## Create a Project
10+
## Create a project
1111

1212
In this section, you will set up the project, which involves installing the Aspire workload.
1313

@@ -34,29 +34,55 @@ Installing Aspire.ProjectTemplates.Msi.arm64 ..... Done
3434
3535
Successfully installed workload(s) aspire.
3636
```
37+
## Create an application
38+
3739
Once the Aspire workload is installed, you can create a new application by executing:
3840

3941
```console
4042
dotnet new aspire-starter -o NetAspire.Arm
4143
```
4244
This command generates a solution with the following structure:
43-
* **NetAspire.Arm.AppHost** - the orchestrator, or coordinator, project serves as the backbone of your distributed application. Its primary responsibilities include defining how services connect to one another, configuring ports and endpoints to ensure seamless communication, managing service discovery to enable efficient interactions between components, and handling container orchestration to streamline the deployment and operation of services within your application.
45+
* **NetAspire.Arm.AppHost** - the orchestrator, or coordinator, project serves as the backbone of your distributed application. Its primary responsibilities include:
46+
47+
- Defining how services connect to one another.
48+
- Configuring ports and endpoints to ensure seamless communication.
49+
- Managing service discovery to enable efficient interactions between components.
50+
- Handling container orchestration to streamline the deployment and operation of services within your application.
51+
52+
* **NetAspire.Arm.ApiService** - the sample REST API service, built with ASP.NET Core, acts as a core component of your application by implementing business logic and managing data access. The default implementation comes preconfigured with essential features, that include:
4453

45-
* **NetAspire.Arm.ApiService** - the sample REST API service, built with ASP.NET Core, acts as a core component of your application by implementing business logic and managing data access. The default implementation comes preconfigured with essential features, including a WeatherForecast endpoint for demonstration purposes, built-in health checks to monitor the service’s status, and telemetry setup to track performance and usage metrics.
54+
* A weatherForecast endpoint for demonstration purposes.
55+
* Built-in health checks to monitor the service’s status
56+
* Telemetry setup to track performance and usage metrics.
4657

47-
* **NetAspire.Arm.Web** - the web frontend application, implemented with Blazor, serves as the user-facing layer of your application. It communicates with the API service to provide an interactive experience. This application includes a user interface for presenting data, client-side logic for handling interactions, and preconfigured patterns for consuming services.
58+
* **NetAspire.Arm.Web** - the web frontend application, implemented with Blazor, serves as the user-facing layer of your application. It communicates with the API service to provide an interactive experience. This application includes:
4859

49-
* **NetAspire.Arm.ServiceDefaults** - the shared library provides a centralized foundation for common service configurations across your application. It includes a default middleware setup, preconfigured telemetry settings for tracking performance, standard health check implementations, and logging configurations to ensure consistent and efficient monitoring and debugging.
60+
* A user interface for presenting data.
61+
* Client-side logic for handling interactions.
62+
* Preconfigured patterns for consuming services.
5063

51-
The structure of this project is designed to enhance efficiency and simplify the development of cloud-native applications. At its core, it incorporates features to ensure seamless service interactions, robust monitoring, and an exceptional development experience.
64+
* **NetAspire.Arm.ServiceDefaults** - the shared library provides a centralized foundation for common service configurations across your application. It includes:
65+
66+
* A default middleware setup.
67+
* Preconfigured telemetry settings for tracking performance.
68+
* Standard health check implementations.
69+
* Logging configurations to ensure consistent and efficient monitoring and debugging.
70+
71+
The structure of this project is designed to enhance efficiency, and simplify the development of cloud-native applications. At its core, it incorporates features to ensure seamless service interactions, robust monitoring, and an exceptional development experience.
5272

5373
One of the foundational elements is service discovery, which enables automatic service registration, dynamic endpoint resolution, and load balancing. These features ensure that services communicate effectively and handle traffic efficiently, even in complex, distributed environments.
5474

5575
For monitoring and telemetry, the architecture integrates tools like built-in health checks, OpenTelemetry for monitoring, and metrics collection with distributed tracing. These features provide developers with deep insights into application performance, helping to maintain reliability and optimize system operations.
5676

5777
Configuration management offers environment-based settings that make deploying applications across different stages straightforward. Secure secrets management safeguards sensitive information, while standardized service-to-service communication simplifies interactions between microservices.
5878

59-
The architecture is also tailored to improve the development experience. Developers can benefit from local debugging support and a powerful monitoring dashboard. This dashboard provides a detailed view of service health, logs, metrics, trace information, resource usage, and service dependencies. Additionally, hot reload capability allows real-time updates during development, and container support ensures consistency across local and production environments.
79+
The architecture is also tailored to improve the development experience. Developers can benefit from local debugging support and a powerful monitoring dashboard. This dashboard provides a detailed view of the following:
80+
81+
* Service health.
82+
* Logs.
83+
* Metrics.
84+
* Trace information.
85+
* Resource usage.
6086

61-
This thoughtfully-crafted architecture embodies microservices best practices, promoting scalability, maintainability, and service isolation. It not only simplifies deployment and monitoring, but also fosters developer productivity by streamlining workflows and providing intuitive tools for building modern, distributed applications.
87+
This thoughtfully-crafted architecture embodies best practices for microservices, and promotes scalability, maintainability, and service isolation. It not only simplifies deployment and monitoring, but also fosters developer productivity by streamlining workflows and providing intuitive tools for building modern, distributed applications.
6288

content/learning-paths/servers-and-cloud-computing/net-aspire/run_app.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ cd .\NetAspire.Arm\
1818
dotnet run --project NetAspire.Arm.AppHost
1919
```
2020

21-
The output will look like below:
21+
The output should look like the text below:
2222
```output
2323
Building...
2424
info: Aspire.Hosting.DistributedApplication[0]
@@ -33,15 +33,15 @@ info: Aspire.Hosting.DistributedApplication[0]
3333
Login to the dashboard at https://localhost:17222/login?t=81f99566c9ec462e66f5eab5aa9307b0
3434
```
3535

36-
Click on the link generated for the dashboard. In this case it is: https://localhost:17222/login?t=81f99566c9ec462e66f5eab5aa9307b0. This will direct you to the application dashboard, as shown below:
36+
Click on the link generated for the dashboard. In this case it is: [https://localhost:17222/login?t=81f99566c9ec462e66f5eab5aa9307b0](https://localhost:17222/login?t=81f99566c9ec462e66f5eab5aa9307b0). This directs you to the application dashboard, as shown in Figure 1:
3737

38-
![fig1](figures/01.png)
38+
![fig1 alt-text#center](figures/01.png "Figure 1: Application Dashboard.")
3939

40-
On the dashboard, locate and click the endpoint link for `NetAspire.Arm.Web`. This will take you to the Blazor based web application. In the Blazor app, navigate to the Weather section to access and display data retrieved from the WeatherForecast API:
40+
On the dashboard, locate and click the endpoint link for `NetAspire.Arm.Web`. This takes you to the Blazor-based web application. In the Blazor app, navigate to the Weather section to access and display data retrieved from the WeatherForecast API:
4141

42-
![fig2](figures/02.png)
42+
![fig2 alt-text#center](figures/02.png "Figure 2: Data Displayed from WeatherForecast API.")
4343

44-
Return to the dashboard and select the Traces option. This section provides detailed telemetry tracing, allowing you to view the flow of requests, track service dependencies, and analyze performance metrics for your application:
44+
Now return to the dashboard, and select the **Traces** option. This section provides detailed telemetry tracing, allowing you to view the flow of requests, track service dependencies, and analyze performance metrics for your application:
4545

4646
![fig3](figures/03.png)
4747

0 commit comments

Comments
 (0)