Architektur für Websysteme - Serviceorientierte Architektur, Microservices, Domänengetriebener Entwurf
von: Daniel Takai
Carl Hanser Fachbuchverlag, 2017
ISBN: 9783446452480
Sprache: Deutsch
400 Seiten, Download: 9107 KB
Format: PDF, auch als Online-Lesen
Mehr zum Inhalt
Architektur für Websysteme - Serviceorientierte Architektur, Microservices, Domänengetriebener Entwurf
Inhalt | 6 | ||
Teil I Geschäftssysteme | 12 | ||
1 Einleitung | 14 | ||
1.1 Buchmodell | 14 | ||
1.2 Architektur und Entwurf | 18 | ||
1.3 Serviceorientierte Architektur | 22 | ||
1.4 Microservice-Architektur | 28 | ||
1.5 Domänengetriebener Entwurf | 34 | ||
1.6 Organisation und Kultur | 41 | ||
2 Servicemanagement | 48 | ||
2.1 Service Governance | 48 | ||
2.2 Servicekatalog | 50 | ||
2.3 Entwurfsstandard des Service | 55 | ||
2.4 Entwurfsstandard des Open Host | 62 | ||
2.5 Entwurfsstandard des Service Bus | 67 | ||
3 Systemqualität | 76 | ||
3.1 Qualitätsmodelle | 76 | ||
3.2 Qualitätsszenarien | 84 | ||
Teil II Wartbarkeit | 88 | ||
4 Einleitung | 90 | ||
4.1 Einführung in die Wartbarkeit | 90 | ||
5 Konzeptionelle Integrität | 96 | ||
5.1 Einführung in die Konzeptionelle Integrität | 96 | ||
5.2 Qualitätsszenarien | 100 | ||
5.3 Von der Allgemeinsprache | 101 | ||
5.4 Systemkontext erforschen | 104 | ||
5.5 Stakeholder Management | 107 | ||
5.6 Systemziele bestimmen | 110 | ||
5.7 Anforderungen erheben | 112 | ||
5.8 Anwendungsfälle | 116 | ||
5.9 Geschäftsmodelle implementieren | 121 | ||
5.10 Handshaking mit Implementation Proposals | 123 | ||
5.11 Das Conway-Manöver | 125 | ||
5.12 Prototyping | 127 | ||
6 Konsistenz | 130 | ||
6.1 Einführung in die Konsistenz | 130 | ||
6.2 Qualitätsszenarien | 132 | ||
6.3 Frameworks wählen | 133 | ||
6.4 Programmieren können | 136 | ||
6.5 Ergebnisse kontrollieren | 138 | ||
7 Testbarkeit | 142 | ||
7.1 Einführung in die Testbarkeit | 142 | ||
7.2 Qualitätsszenarien | 146 | ||
7.3 Testmanagement | 148 | ||
7.4 Sandboxing und Teststufen | 153 | ||
7.5 Test Harness entwickeln | 157 | ||
7.6 Test Doubles und Integration planen | 159 | ||
7.7 Testdaten im Griff haben | 162 | ||
7.8 Browsertests durchführen | 164 | ||
8 Analysierbarkeit | 166 | ||
8.1 Einführung in die Analysierbarkeit | 166 | ||
8.2 Qualitätsszenarien | 169 | ||
8.3 Dokumentation erstellen | 170 | ||
8.4 Diagramme zeichnen | 174 | ||
8.5 Statische Analyse | 177 | ||
9 Änderbarkeit | 182 | ||
9.1 Einführung in die Änderbarkeit | 182 | ||
9.2 Qualitätsszenarien | 186 | ||
9.3 Funktionspunkte analysieren | 187 | ||
9.4 Continuous Deployment | 191 | ||
9.5 Regeln für die Versionskontrolle | 195 | ||
9.6 Regeln für das Build-Management | 196 | ||
9.7 Regeln für das Release-Management | 198 | ||
9.8 Regeln für das Lizenzmanagement | 199 | ||
Teil III Performance | 202 | ||
10 Einleitung | 204 | ||
10.1 Einführung in die Performance | 204 | ||
10.2 Qualitätsszenarien | 208 | ||
11 Latenz | 210 | ||
11.1 Einführung in die Latenz | 210 | ||
11.2 Latenz messen | 213 | ||
11.3 Für HTTP/2 planen | 215 | ||
11.4 Content-Delivery-Netzwerke | 220 | ||
11.5 Latenzdiagramme zeichnen | 223 | ||
11.6 HTTP-Cache einsetzen | 225 | ||
12 Service-Performance | 228 | ||
12.1 Einführung in die Service-Performance | 228 | ||
12.2 Metriken definieren | 230 | ||
12.3 Culling | 237 | ||
12.4 Tuning | 238 | ||
12.5 Service-Cache abwägen | 241 | ||
13 Kapazität | 244 | ||
13.1 Einführung in die Kapazität | 244 | ||
13.2 Lastsimulation | 246 | ||
13.3 Speicherkapazität | 251 | ||
13.4 Bottlenecks aufspüren | 255 | ||
14 Skalierbarkeit | 258 | ||
14.1 Einführung in die Skalierbarkeit | 258 | ||
14.2 Geografische Skalierung | 261 | ||
14.3 Storage skalieren | 262 | ||
14.4 Asynchroner Entwurf | 267 | ||
14.5 Cookie Cutter und Microservices | 271 | ||
Teil IV Zuverlässigkeit | 272 | ||
15 Einleitung | 274 | ||
15.1 Einführung in die Zuverlässigkeit | 274 | ||
15.2 Fehlerquellen | 278 | ||
15.3 Qualitätsszenarien | 282 | ||
16 Verfügbarkeit | 284 | ||
16.1 Einführung in die Verfügbarkeit | 284 | ||
16.2 Berechnung der Verfügbarkeit | 288 | ||
16.3 Verfügbarkeit verbessern | 290 | ||
16.4 N+M-Kapazität | 291 | ||
16.5 Lastverteilung | 292 | ||
17 Herstellbarkeit | 294 | ||
17.1 Einführung in die Herstellbarkeit | 294 | ||
17.2 Automation-Service | 297 | ||
17.3 Bootstrapping- und Configuration-Service | 299 | ||
17.4 Backup und Restore | 302 | ||
18 Prüfbarkeit | 308 | ||
18.1 Einführung in Prüfbarkeit und Monitoring | 308 | ||
18.2 Architektur für Prüfbarkeit | 310 | ||
18.3 Architektur für Monitoring | 313 | ||
18.4 Alarm und Eskalation | 317 | ||
19 Resilienz | 320 | ||
19.1 Einführung in die Resilienz | 320 | ||
19.2 Throttling | 327 | ||
19.3 Vor DDoS schützen | 328 | ||
19.4 Canary Deployments | 330 | ||
19.5 Canary Requests | 331 | ||
19.6 Circuit Breaker | 333 | ||
19.7 Graceful Degradation | 335 | ||
Teil V Informationssicherheit | 338 | ||
20 Einleitung | 340 | ||
20.1 Einführung in die Informationssicherheit | 340 | ||
21 Identifizierung | 342 | ||
21.1 Einführung in die Identifizierung | 342 | ||
21.2 Cost per Identity | 344 | ||
21.3 Faktoren der Sicherheit | 345 | ||
21.4 Prozesse der Identifizierung | 346 | ||
21.5 Timer | 347 | ||
21.6 Ablauf der Identifizierung | 348 | ||
21.7 Protokolle | 349 | ||
21.8 Protokoll: Basic Auth | 351 | ||
21.9 Protokoll: Kerberos | 352 | ||
21.10 Protokoll: SAML | 353 | ||
21.11 Protokoll: OAuth | 357 | ||
21.12 Protokoll: OpenID | 358 | ||
22 Authentifizierung als Service | 360 | ||
22.1 Authentifizierung als Service beziehen | 360 | ||
22.2 Service: Azure Active Directory | 363 | ||
22.3 Service: SafeNet Authentication | 364 | ||
22.4 Service: Mobile ID | 365 | ||
23 Autorisierung | 368 | ||
23.1 Einleitung | 368 | ||
23.2 RBAC | 369 | ||
23.3 ABAC | 373 | ||
23.4 RBAC oder ABAC? | 375 | ||
23.5 RABAC und Microservices | 376 | ||
Literatur | 378 | ||
Stichwortverzeichnis | 378 |