Révision | 9ec6ed10322298a515413dfa36e86589821b75b0 (tree) |
---|---|
l'heure | 2020-03-19 19:04:20 |
Auteur | Albert Mietus < albert AT mietus DOT nl > |
Commiter | Albert Mietus < albert AT mietus DOT nl > |
Pub/Sub: lead done
@@ -0,0 +1,62 @@ | ||
1 | +.. Copyright (C) 2020: ALbert Mietus. | |
2 | + | |
3 | +.. _PubSub: | |
4 | + | |
5 | +============= | |
6 | +**Pub**/*Sub* | |
7 | +============= | |
8 | + | |
9 | +.. sidebar:: **HighTech** vs *Gooogling* | |
10 | + | |
11 | + When you search for `Pub/Sub`, you will find over 312M hits! Mostly about cloud-computing, and on how servers exchange | |
12 | + messages via a *‘broker’*. | |
13 | + |BR| | |
14 | + Often it is infrastructure engenering based. | |
15 | + | |
16 | + This workshop isn’t about that. We focus on *Modern, Embedded Software Systems*: How can an (HighTech) Software Engineer use | |
17 | + this pattern to create better software. | |
18 | + | |
19 | + | |
20 | +.. post:: | |
21 | + :tags: DesignWorkShops | |
22 | + :category: practice | |
23 | + :location: ehv | |
24 | + :language: en | |
25 | + | |
26 | + :practice-time: 2 * 1 hour | |
27 | + | |
28 | + The publish-subscribe *architecture*-**pattern** is very popular to route messages, according to `WikiPedia | |
29 | + <https://en.wikipedia.org/wiki/Publish–subscribe_pattern>`_. It is used much more generic, however. This workshop shows how | |
30 | + to use it in an embedded application; or another single process application. | |
31 | + |BR| | |
32 | + Then it becomes a HighTech (embedded) software **design pattern**. | |
33 | + | |
34 | + We start with a simple implementation of **Pub**/*Sub*. You can experiment with that (Python) code and/or port it to your | |
35 | + favorite language. Then, you are asked to **design** a cached, distributed version. Which is a bit more ambitious. And even | |
36 | + though the result is probably *pointless*, it’s a great Design-Exercise and a lot of fun! | |
37 | + | |
38 | + It will help you to understand Pub/Sub, help you to use it in embedded software. Eventually, you may need Pub/Sub in a | |
39 | + distributed environment. Then, it is better to use one of the existing ones, like `DDS | |
40 | + <https://en.wikipedia.org/wiki/Data_Distribution_Service>`_ (Data Distribution Service); which more efficient and even | |
41 | + RealTime! | |
42 | + |BR| | |
43 | + But, by knowing how to implement it and are able to design it, will help you to use it for the better | |
44 | + | |
45 | + | |
46 | + | |
47 | +.. toctree:: | |
48 | + :glob: | |
49 | + | |
50 | + * | |
51 | + */index | |
52 | + | |
53 | + | |
54 | + | |
55 | +------------------------ | |
56 | + | |
57 | + | |
58 | +.. _PubSub_links: | |
59 | + | |
60 | +.. seealso:: | |
61 | + | |
62 | + * ... |
@@ -9,4 +9,5 @@ | ||
9 | 9 | :glob: |
10 | 10 | :maxdepth: 2 |
11 | 11 | |
12 | - */index | |
12 | + TPE/index | |
13 | + PubSub/index |
@@ -54,3 +54,4 @@ | ||
54 | 54 | '**': [ 'recentposts.html', 'tagcloud.html', 'postcardHeader.html'], |
55 | 55 | } |
56 | 56 | |
57 | +html_static_path.append('_static') |