-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Added getting started to documentation #5500
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
Changes from 1 commit
067de08
debcdec
464ce21
096b91c
d6dcfd5
f2f5e39
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
--- | ||
uid: tutorial-overview | ||
Aaronontheweb marked this conversation as resolved.
Show resolved
Hide resolved
|
||
title: Tutorial Overview | ||
--- | ||
# Tutorial Overview | ||
|
||
In this and the following chapters, we will build a sample Akka.NET application | ||
to introduce you to the language of actors and how solutions can be formulated | ||
with them. It is a common hurdle for beginners to translate their project into | ||
actors even though they don't understand what they do on the high-level. We will | ||
build the core logic of a small application and this will serve as a guide for | ||
common patterns that will help to kickstart Akka.NET projects. | ||
|
||
The application we aim to write will be a simplified IoT system where devices, | ||
installed at the home of users, can report temperature data from sensors. Users | ||
will be able to query the current state of these sensors. To keep things simple, | ||
we will not actually expose the application via HTTP or any other external API, | ||
we will, instead, concentrate only on the core logic. However, we will write | ||
tests for the pieces of the application to get comfortable and proficient with | ||
testing actors early on. | ||
|
||
## Our Goals for the IoT System | ||
|
||
We will build a simple IoT application with the bare essentials to demonstrate | ||
designing an Akka.NET-based system. The application will consist of two main | ||
components: | ||
|
||
* **Device data collection:** This component has the responsibility to maintain | ||
a local representation of the otherwise remote devices. The devices will be | ||
organized into device groups, grouping together sensors belonging to a home. | ||
* **User dashboards:** This component has the responsibility to periodically | ||
collect data from the devices for a logged in user and present the results as | ||
a report. | ||
|
||
For simplicity, we will only collect temperature data for the devices, but in a | ||
real application our local representations for a remote device, which we will | ||
model as an actor, would have many more responsibilities. Among others; reading | ||
the configuration of the device, changing the configuration, checking if the | ||
devices are unresponsive, etc. We leave these complexities for now as they can | ||
be easily added as an exercise. | ||
|
||
We will also not address the means by which the remote devices communicate with | ||
the local representations (actors). Instead, we just build an actor based API | ||
that such a network protocol could use. We will use tests for our API everywhere | ||
though. | ||
|
||
The architecture of the application will look like this: | ||
|
||
 | ||
|
||
This tutorial is divided into four parts: | ||
|
||
* **<a href="../getting-started/tutorial-1.html">Part 1: Top-level Architecture</a>** | ||
* **<a href="../getting-started/tutorial-2.html">Part 2. The Device Actor</a>** | ||
* **<a href="../getting-started/tutorial-3.html">Part 3. Device Groups and Manager</a>** | ||
* **<a href="../getting-started/tutorial-4.html">Part 4. Querying a Group of Devices</a>** | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<title>Part 1. Top-level Architecture</title> | ||
<meta http-equiv = "refresh" content="1;url=../intro/getting-started/tutorial-1.html" /> | ||
</head> | ||
<body> | ||
<p>This page has been moved to <a href="../intro/getting-started/tutorial-1.html">Part 1. Top-level Architecture</a>.</p> | ||
</body> | ||
</html> | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. For this and the rest, this is for backward compatibility. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<title>Part 2. The Device Actor</title> | ||
<meta http-equiv = "refresh" content="1;url=../intro/getting-started/tutorial-2.html" /> | ||
</head> | ||
<body> | ||
<p>This page has been moved to <a href="../intro/getting-started/tutorial-2.html">Part 2. The Device Actor</a>.</p> | ||
</body> | ||
</html> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<title>Part 3. Device Groups and Manager</title> | ||
<meta http-equiv = "refresh" content="1;url=../intro/getting-started/tutorial-3.html" /> | ||
</head> | ||
<body> | ||
<p>This page has been moved to <a href="../intro/getting-started/tutorial-3.html">Part 3. Device Groups and Manager</a>.</p> | ||
</body> | ||
</html> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<title>Part 4. Querying a Group of Devices</title> | ||
<meta http-equiv = "refresh" content="1;url=../intro/getting-started/tutorial-4.html" /> | ||
</head> | ||
<body> | ||
<p>This page has been moved to <a href="../intro/getting-started/tutorial-4.html">Part 4. Querying a Group of Devices</a>.</p> | ||
</body> | ||
</html> |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,18 +6,22 @@ | |
href: intro/what-problems-does-actor-model-solve.md | ||
- name: Akka.NET Libraries and Modules | ||
href: intro/modules.md | ||
- name: Part 1. Top-level Architecture | ||
href: intro/tutorial-1.md | ||
- name: Part 2. The Device Actor | ||
href: intro/tutorial-2.md | ||
- name: Part 3. Device Groups and Manager | ||
href: intro/tutorial-3.md | ||
- name: Part 4. Querying a Group of Devices | ||
href: intro/tutorial-4.md | ||
- name: Use-case and Deployment Scenarios | ||
href: intro/use-case-and-deployment-scenarios.md | ||
- name: Production Users and Use Cases for Akka.NET | ||
href: intro/akka-users.md | ||
- name: Getting Started | ||
|
||
items: | ||
- name: Tutorial Overview | ||
href: intro/getting-started/tutorial-overview.md | ||
- name: Part 1. Top-level Architecture | ||
href: intro/getting-started/tutorial-1.md | ||
- name: Part 2. The Device Actor | ||
href: intro/getting-started/tutorial-2.md | ||
- name: Part 3. Device Groups and Manager | ||
href: intro/getting-started/tutorial-3.md | ||
- name: Part 4. Querying a Group of Devices | ||
href: intro/getting-started/tutorial-4.md | ||
- name: Concepts | ||
items: | ||
- name: Terminology, Concepts | ||
|
Uh oh!
There was an error while loading. Please reload this page.