SlideShare una empresa de Scribd logo
1 de 25
Descargar para leer sin conexión
Rail Control System:
Hochverfügbare
Anwendungen für die
Bahnproduktion
E. Wernli / M. Hoffmann
Rail Control System: Hochverfügbare Anwendungen
für die Bahnproduktion
2
Die Schweizerischen Bundesbahnen betreiben eines der weltweit dichtest befahrenen
Bahnnetze der Welt. Zur Überwachung und Steuerung ist seit nunmehr 10 Jahren das
eigenentwickelte Rail Control System (RCS) im Einsatz und wird laufend weiterentwickelt.
In dieser Präsentation stellen wir die auf Event-Verarbeitung basierenden
Lösungsansätze vor, welche die hohen Anforderungen bezüglich Latenz und
Hochverfügbarkeit für Systeme der Bahnproduktion adressieren
Erwann Wernli
Leadarchitekt RCS
@wrnli
Marc Hoffmann
Softwarearchitekt RCS
@marcandsweep
AGENDA
• Problemstellung
▪ Fachlicher Kontext
▪ Hochverfügbarkeit und Disaster Recovery
▪ Technologiestack
• Mechanismen
• Kommunikationsinfrastruktur
• Hochverfügbarkeitsmechanismen
• Verarbeitungsmuster
• Datenhaltung
• Disaster Recovery
• Herausforderung Zukunft
3
Problemstellung
Von der Planung bis zur Zugfahrt
Langfristplanung
Jahresfahrplan
Tagesfahrplan
Disposition
Lenkung
Jahre
Tage
Minuten
Sekunden
Hochverfügbar
> 1000 Msg/s
< 1s Latenz
5
Netzweite
Disposition
Netzweite
Prognose
Echtzeit
Betriebslage
Gleis-/Signal-
genau
➔ Bessere Auslastung des Netzes
➔ Höhere Pünktlichkeit
Regelkreis im System Bahn
Disposition
Optimierung
Prognose
Betriebsabbild Lenkung
7
ClientPersistenz & Caching
Messaging
Runtime
RCS Technologie-Stack
Java 8 OSGi / Equinox
Tibco Rendezvous
Coherence
Oracle DB
Hibernate
Eclipse RCP
8
Definition: Hochverfügbarkeit
9
Aspekte
NFR Kein spürbarere Ausfall auf Service Level
Management Vollautomatisch
Use Cases • Partielle, physische Ausfälle
• Ausfall einzelner Nodes
• Absturz einzelner Services
• (Service Upgrade)
Strategien • Hardware Redundanz
• Logische Redundanz von Services und State
• Evtl. Location Redundanz
https://de.wikipedia.org/wiki/Hochverf%C3%BCgbarkeit
Definition: Disaster Recovery
10
Aspekte
NFR Durch den Business Case gegeben:
• Recovery Time Objective (RTO)
• Recovery Point Objective (RPO)
Management Manueller Eingriff nach bewusster Entscheidung
Use Cases • Physischer Totalverlust (Brand, Naturkatastrophen,
…)
• Vollständiger Stromausfall oder Netzwerkunterbruch
• Fehlmanipulationen
• Bugs
• Kaputter Release ("botched")
Strategien • Standortredundanz
• Vollständige logische Separation
• Restore
https://de.wikipedia.org/wiki/Disaster_Recovery
Verfügbarkeitsanforderungen bei RCS
 Quality Key Attributes
• Verfügbarkeit inkl. Wartungsfenster 99.8%
• Failover Server 20 s
• Disaster Recovery 15 min
• Wartungsfenster (max. 6 pro Jahr) 1 h
→ Mit 99.8% Verfügbarkeit inkl. 6 Wartungsfenster à 1 h verbleiben
11.5 h pro Jahr
11
Mechanismen
RCS Verarbeitungsmodel
• 40+ Prozessgruppen
• 200+ Prozess-Instanzen
• Asynchrone Kommunikation
• Choreographie ohne zentrale Koordination
ClientProzesseProzessorenVerar-beiterVear-beiter
Dispo
Umsysteme
Support Prozesse
D
Br
RT-EXADL HOT
Infr
a
FahrplanIEIST
Taxi CIS FOS
CIS
IProz
FOS Proz
ZLR
LTA+
Obj
Mgr
ZDS
Imp
Pro
g
Prog
CP
IST
DQ
IE
DQ
Fpl
DQ
PSS Proz
(BLS/SBB)
PSS ILTIS
Form
Ver
Hot
Mon
GEMS
Msg
Sche
FEG
Sup
visor
Cli
Prox
Reg
Serv
TW M
Ansc
Rec
Taxi
Ver
Taxi
Proz
GEM
Proz
Adm
Adm
Task
Bta
Proc
(BLS/SBB)
I
DQ
In H
Prox
In H
PT
ALEA
KVZ
Archiv
ZLD
BTA
Zabr
DQ
EMS
Proz
PAIP
RTX
Core
Data
Imp
DiBr
ExIm
UNO
Hot
Opt
nKet
Rech
UNO
Imp
Afi
Ad
IE
Ver
ZLR
FZeit
Last
Mon
Cac
Load
TZD
Gen
Dis
Ver
Fpl
Ver
BL KernVTief Prog
M
Dir
Ses
Mgr
Mgm
Afi
DiBr
ExIm
Lta Proz
Synt Proz
CBT
Prox
GBT
Prox
PAIP
Int
ZN Term
Znt Prox
RV
Prox PTS
Proz
ZKE
ZKE
Int
HOT
ZLV
13
ClientSubnetzServerSubnetz
Hochverfügbarkeit auf Kommunikationsebene
Verteilte Architektur
RVRD
RVRD
RVRD
RVRD
RVD
RVD
RVD
TCP/IP
Queue
TCP/IP
Filtering
Betriebslage
RVD
RVD
Multicast
Zentrale Architektur
Multicast
Tibco Rendez-Vous
(very to many)
(one to few)
14
Hochverfügbarkeit auf Prozess-Ebene
Distributed Queue
DQ
Prozess
A
DQ
Prozess
DQ
Prozess
B C
FT
Prozess
Fault Tolerant Group
FT
Prozess
A
B
C
A
B
C
aktiv
passiv
Redundanz kritischer
Komponenten
Fehlertolerantes
Verhalten
Voraussetzungen für
Hochverfügbarkeit
FT-Prozesse und Statehandling
Non Recoverable State Recoverable
DB, Cache, …
1Deterministische Verarbeitung
garantiert fachlich Äquivalenz
1
Failover
2
3
Failover
2
16
Verarbeitungsmuster
Es gibt zwei primäre Muster in RCS
17
Event-getriebene
Verarbeitungen
Kontinuierliche
Verarbeitungen
Datensicht Local Global
HA DQ FT
Beispiele Dispositionen
Client Requests
Datentransformationen
…
Prognose
Optimierungen
Statehandling Cache / Datenbank In-Memory
Typen von Events
Notification: A Notification of change in the domain
• Zugstandortmeldung
• Fahrempfehlung
• Import completed
• …
Event-Carried State Transfer: Replication of state
• Fahrplanupdate
• Prognose
• …
18
Siehe https://martinfowler.com/articles/201701-event-driven.html
Daten und Temporalität
19
Uni-temporal Bi-temporal
Datenhaltung
Typ Interessen-
bereich
Eigenschaften
In-Memory
Store
[0, +90 M] • In-Process Heap
• Keine Serialisierung
• Volume: GBs / pro Prozess
Distributed
Cache
[-1 H, +4 H] • Verteilter Cache mit
Replication
• Object Serialisierung
• Volume: mehrere GBs
Datenbank [-5 T, + 27 H] • Oracle RAC
• Object-Relational Mapping
• Volume: mehrere GBs
20
Zeit
jetzt
Disaster Recovery
21
Aktive Produktion
Standort A
Passive Produktion
Standort B
Tibco
Router
Dispo Bridge
Umsysteme
>400 RCS-Arbeitsplätze
Herausforderung Zukunft
Steigende Automatisierung
• Verstärkte Abhängigkeit von Softwarelösungen
➔ Grosse Auswirkungen bei Ausfällen
• Umfassende Optimierungen
➔ Hohe Anforderungen an Datengenauigkeit
➔ Steigende Datenmengen und Rechenbedarf
• Feedbackloops mit dem System Bahn
➔ Anspruchsvolle Integrationstests
23
Hochverfügbarkeit und Cloud
Pro
• Flexible und schnelle Entwicklung durch moderne
Deploymentverfahren
• Hohe Skalierbarkeit – wenn die Applikation dafür entwickelt ist
Contra
• Gegenseitige Beeinflussung von Anwendungen auf geteilten
Plattformen
• Unzuverlässige Netzwerkanbindung externer Clouds
• Zu schwache SLAs
• Behandlung von zustandsbehafteten Services
24
Viele Dank!
Fragen?
25
jobs.sbb.ch
Erwann Wernli
Leadarchitekt RCS
@wrnli
Marc Hoffmann
Softwarearchitekt RCS
@marcandsweep

Más contenido relacionado

Similar a batbern43 Rail Control System: hochverfügbare Anwendungen für die Bahnproduktion

Mobile Service Manager V4 07 Möbel
Mobile Service Manager V4 07 MöbelMobile Service Manager V4 07 Möbel
Mobile Service Manager V4 07 Möbel
mobicomms
 

Similar a batbern43 Rail Control System: hochverfügbare Anwendungen für die Bahnproduktion (20)

Fische im Rechenzentrum – Was genau ist eigentlich dieses Redfish und wozu br...
Fische im Rechenzentrum – Was genau ist eigentlich dieses Redfish und wozu br...Fische im Rechenzentrum – Was genau ist eigentlich dieses Redfish und wozu br...
Fische im Rechenzentrum – Was genau ist eigentlich dieses Redfish und wozu br...
 
Fördertechnik in SAP
Fördertechnik in SAPFördertechnik in SAP
Fördertechnik in SAP
 
Thomas Mühlehner (automationX)
Thomas Mühlehner (automationX)Thomas Mühlehner (automationX)
Thomas Mühlehner (automationX)
 
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
OSMC 2013 | Enterprise Platforms Monitoring at s IT Solutions AT by Johannes ...
 
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
 
Mobile Service Manager V4 07 Möbel
Mobile Service Manager V4 07 MöbelMobile Service Manager V4 07 Möbel
Mobile Service Manager V4 07 Möbel
 
Produktblatt TRANSCONNECT - DE | SQL Projekt AG
Produktblatt TRANSCONNECT - DE | SQL Projekt AGProduktblatt TRANSCONNECT - DE | SQL Projekt AG
Produktblatt TRANSCONNECT - DE | SQL Projekt AG
 
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText BasisAnwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
Anwender-Case Karl Storz GmbH & Co. KG auf OpenText Basis
 
Testen hoch 10 - Für den Bahnverkehr der Zukunft
Testen hoch 10 - Für den Bahnverkehr der ZukunftTesten hoch 10 - Für den Bahnverkehr der Zukunft
Testen hoch 10 - Für den Bahnverkehr der Zukunft
 
Innovative Methoden zur Erhebung der Strassengüterverkehrsstatistik
Innovative Methoden zur Erhebung der StrassengüterverkehrsstatistikInnovative Methoden zur Erhebung der Strassengüterverkehrsstatistik
Innovative Methoden zur Erhebung der Strassengüterverkehrsstatistik
 
BPM-Systeme für ein optimiertes Angebots- und Auftragsmanagement
BPM-Systeme für ein optimiertes Angebots-  und AuftragsmanagementBPM-Systeme für ein optimiertes Angebots-  und Auftragsmanagement
BPM-Systeme für ein optimiertes Angebots- und Auftragsmanagement
 
VIT 3-2014
VIT 3-2014VIT 3-2014
VIT 3-2014
 
Der Roboter als Cyberphysisches System
Der Roboter als Cyberphysisches SystemDer Roboter als Cyberphysisches System
Der Roboter als Cyberphysisches System
 
Mit TRANSCONNECT® in die Cloud – Anwendungsbeispiele bei der DuMont Mediengru...
Mit TRANSCONNECT® in die Cloud – Anwendungsbeispiele bei der DuMont Mediengru...Mit TRANSCONNECT® in die Cloud – Anwendungsbeispiele bei der DuMont Mediengru...
Mit TRANSCONNECT® in die Cloud – Anwendungsbeispiele bei der DuMont Mediengru...
 
Oracle Open World 2009 Review V1.6
Oracle Open World 2009 Review V1.6Oracle Open World 2009 Review V1.6
Oracle Open World 2009 Review V1.6
 
Enterprise Content Management - Grundlagen und Praxis
Enterprise Content Management - Grundlagen und PraxisEnterprise Content Management - Grundlagen und Praxis
Enterprise Content Management - Grundlagen und Praxis
 
Echtzeitanwendungen aus der Cloud - Partnervortrag vom AWS Summit
Echtzeitanwendungen aus der Cloud - Partnervortrag vom AWS SummitEchtzeitanwendungen aus der Cloud - Partnervortrag vom AWS Summit
Echtzeitanwendungen aus der Cloud - Partnervortrag vom AWS Summit
 
Service Mesh - Kilometer 30 im Microservices-Marathon
Service Mesh - Kilometer 30 im Microservices-MarathonService Mesh - Kilometer 30 im Microservices-Marathon
Service Mesh - Kilometer 30 im Microservices-Marathon
 
57649_MESTagung201404JKMesseAG_[Schreibgeschue.pdf
57649_MESTagung201404JKMesseAG_[Schreibgeschue.pdf57649_MESTagung201404JKMesseAG_[Schreibgeschue.pdf
57649_MESTagung201404JKMesseAG_[Schreibgeschue.pdf
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)
 

Más de BATbern

From Ideation to Production in 7 days: The Scoring Factory at Raiffeisen
From Ideation to Production in 7 days: The Scoring Factory at RaiffeisenFrom Ideation to Production in 7 days: The Scoring Factory at Raiffeisen
From Ideation to Production in 7 days: The Scoring Factory at Raiffeisen
BATbern
 

Más de BATbern (20)

BATbern52 Moderation Berner Architekten Treffen zu Data Mesh
BATbern52 Moderation Berner Architekten Treffen zu Data MeshBATbern52 Moderation Berner Architekten Treffen zu Data Mesh
BATbern52 Moderation Berner Architekten Treffen zu Data Mesh
 
BATbern52 Swisscom's Journey into Data Mesh
BATbern52 Swisscom's Journey into Data MeshBATbern52 Swisscom's Journey into Data Mesh
BATbern52 Swisscom's Journey into Data Mesh
 
BATbern52 SBB zu Data Products und Knacknüsse
BATbern52 SBB zu Data Products und KnacknüsseBATbern52 SBB zu Data Products und Knacknüsse
BATbern52 SBB zu Data Products und Knacknüsse
 
BATbern52 Mobiliar zu Skalierte Datenprodukte mit Data Mesh
BATbern52 Mobiliar zu Skalierte Datenprodukte mit Data MeshBATbern52 Mobiliar zu Skalierte Datenprodukte mit Data Mesh
BATbern52 Mobiliar zu Skalierte Datenprodukte mit Data Mesh
 
BATbern52 InnoQ on Data Mesh 2019 2023 2024++
BATbern52 InnoQ on Data Mesh 2019 2023 2024++BATbern52 InnoQ on Data Mesh 2019 2023 2024++
BATbern52 InnoQ on Data Mesh 2019 2023 2024++
 
Embracing Serverless: reengineering a real-estate digital marketplace
Embracing Serverless: reengineering a real-estate digital marketplaceEmbracing Serverless: reengineering a real-estate digital marketplace
Embracing Serverless: reengineering a real-estate digital marketplace
 
Serverless und Event-Driven Architecture
Serverless und Event-Driven ArchitectureServerless und Event-Driven Architecture
Serverless und Event-Driven Architecture
 
Serverless Dev(Ops) in der Praxis
Serverless Dev(Ops) in der PraxisServerless Dev(Ops) in der Praxis
Serverless Dev(Ops) in der Praxis
 
Serverless at Lifestage
Serverless at LifestageServerless at Lifestage
Serverless at Lifestage
 
Keynote Gregor Hohpe - Serverless Architectures
Keynote Gregor Hohpe - Serverless ArchitecturesKeynote Gregor Hohpe - Serverless Architectures
Keynote Gregor Hohpe - Serverless Architectures
 
BATbern51 Serverless?!
BATbern51 Serverless?!BATbern51 Serverless?!
BATbern51 Serverless?!
 
Ein Rückblick anlässlich des 50. BAT aus Sicht eines treuen Partners
Ein Rückblick anlässlich des 50. BAT aus Sicht eines treuen PartnersEin Rückblick anlässlich des 50. BAT aus Sicht eines treuen Partners
Ein Rückblick anlässlich des 50. BAT aus Sicht eines treuen Partners
 
MLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
MLOps journey at Swisscom: AI Use Cases, Architecture and Future VisionMLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
MLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
 
From Ideation to Production in 7 days: The Scoring Factory at Raiffeisen
From Ideation to Production in 7 days: The Scoring Factory at RaiffeisenFrom Ideation to Production in 7 days: The Scoring Factory at Raiffeisen
From Ideation to Production in 7 days: The Scoring Factory at Raiffeisen
 
The Future of Coaching in Sport with AI/ML
The Future of Coaching in Sport with AI/MLThe Future of Coaching in Sport with AI/ML
The Future of Coaching in Sport with AI/ML
 
Klassifizierung von Versicherungsschäden – AI und MLOps bei der Mobiliar
Klassifizierung von Versicherungsschäden – AI und MLOps bei der MobiliarKlassifizierung von Versicherungsschäden – AI und MLOps bei der Mobiliar
Klassifizierung von Versicherungsschäden – AI und MLOps bei der Mobiliar
 
BATbern48_ZeroTrust-Konzept und Realität.pdf
BATbern48_ZeroTrust-Konzept und Realität.pdfBATbern48_ZeroTrust-Konzept und Realität.pdf
BATbern48_ZeroTrust-Konzept und Realität.pdf
 
BATbern48_How Zero Trust can help your organisation keep safe.pdf
BATbern48_How Zero Trust can help your organisation keep safe.pdfBATbern48_How Zero Trust can help your organisation keep safe.pdf
BATbern48_How Zero Trust can help your organisation keep safe.pdf
 
BATbern48_Zero Trust Architektur des ISC-EJPD.pdf
BATbern48_Zero Trust Architektur des ISC-EJPD.pdfBATbern48_Zero Trust Architektur des ISC-EJPD.pdf
BATbern48_Zero Trust Architektur des ISC-EJPD.pdf
 
Why did the shift-left end up in the cloud for Bank Julius Baer?
Why did the shift-left end up in the cloud for Bank Julius Baer?Why did the shift-left end up in the cloud for Bank Julius Baer?
Why did the shift-left end up in the cloud for Bank Julius Baer?
 

batbern43 Rail Control System: hochverfügbare Anwendungen für die Bahnproduktion

  • 1. Rail Control System: Hochverfügbare Anwendungen für die Bahnproduktion E. Wernli / M. Hoffmann
  • 2. Rail Control System: Hochverfügbare Anwendungen für die Bahnproduktion 2 Die Schweizerischen Bundesbahnen betreiben eines der weltweit dichtest befahrenen Bahnnetze der Welt. Zur Überwachung und Steuerung ist seit nunmehr 10 Jahren das eigenentwickelte Rail Control System (RCS) im Einsatz und wird laufend weiterentwickelt. In dieser Präsentation stellen wir die auf Event-Verarbeitung basierenden Lösungsansätze vor, welche die hohen Anforderungen bezüglich Latenz und Hochverfügbarkeit für Systeme der Bahnproduktion adressieren Erwann Wernli Leadarchitekt RCS @wrnli Marc Hoffmann Softwarearchitekt RCS @marcandsweep
  • 3. AGENDA • Problemstellung ▪ Fachlicher Kontext ▪ Hochverfügbarkeit und Disaster Recovery ▪ Technologiestack • Mechanismen • Kommunikationsinfrastruktur • Hochverfügbarkeitsmechanismen • Verarbeitungsmuster • Datenhaltung • Disaster Recovery • Herausforderung Zukunft 3
  • 5. Von der Planung bis zur Zugfahrt Langfristplanung Jahresfahrplan Tagesfahrplan Disposition Lenkung Jahre Tage Minuten Sekunden Hochverfügbar > 1000 Msg/s < 1s Latenz 5
  • 7. Regelkreis im System Bahn Disposition Optimierung Prognose Betriebsabbild Lenkung 7
  • 8. ClientPersistenz & Caching Messaging Runtime RCS Technologie-Stack Java 8 OSGi / Equinox Tibco Rendezvous Coherence Oracle DB Hibernate Eclipse RCP 8
  • 9. Definition: Hochverfügbarkeit 9 Aspekte NFR Kein spürbarere Ausfall auf Service Level Management Vollautomatisch Use Cases • Partielle, physische Ausfälle • Ausfall einzelner Nodes • Absturz einzelner Services • (Service Upgrade) Strategien • Hardware Redundanz • Logische Redundanz von Services und State • Evtl. Location Redundanz https://de.wikipedia.org/wiki/Hochverf%C3%BCgbarkeit
  • 10. Definition: Disaster Recovery 10 Aspekte NFR Durch den Business Case gegeben: • Recovery Time Objective (RTO) • Recovery Point Objective (RPO) Management Manueller Eingriff nach bewusster Entscheidung Use Cases • Physischer Totalverlust (Brand, Naturkatastrophen, …) • Vollständiger Stromausfall oder Netzwerkunterbruch • Fehlmanipulationen • Bugs • Kaputter Release ("botched") Strategien • Standortredundanz • Vollständige logische Separation • Restore https://de.wikipedia.org/wiki/Disaster_Recovery
  • 11. Verfügbarkeitsanforderungen bei RCS  Quality Key Attributes • Verfügbarkeit inkl. Wartungsfenster 99.8% • Failover Server 20 s • Disaster Recovery 15 min • Wartungsfenster (max. 6 pro Jahr) 1 h → Mit 99.8% Verfügbarkeit inkl. 6 Wartungsfenster à 1 h verbleiben 11.5 h pro Jahr 11
  • 13. RCS Verarbeitungsmodel • 40+ Prozessgruppen • 200+ Prozess-Instanzen • Asynchrone Kommunikation • Choreographie ohne zentrale Koordination ClientProzesseProzessorenVerar-beiterVear-beiter Dispo Umsysteme Support Prozesse D Br RT-EXADL HOT Infr a FahrplanIEIST Taxi CIS FOS CIS IProz FOS Proz ZLR LTA+ Obj Mgr ZDS Imp Pro g Prog CP IST DQ IE DQ Fpl DQ PSS Proz (BLS/SBB) PSS ILTIS Form Ver Hot Mon GEMS Msg Sche FEG Sup visor Cli Prox Reg Serv TW M Ansc Rec Taxi Ver Taxi Proz GEM Proz Adm Adm Task Bta Proc (BLS/SBB) I DQ In H Prox In H PT ALEA KVZ Archiv ZLD BTA Zabr DQ EMS Proz PAIP RTX Core Data Imp DiBr ExIm UNO Hot Opt nKet Rech UNO Imp Afi Ad IE Ver ZLR FZeit Last Mon Cac Load TZD Gen Dis Ver Fpl Ver BL KernVTief Prog M Dir Ses Mgr Mgm Afi DiBr ExIm Lta Proz Synt Proz CBT Prox GBT Prox PAIP Int ZN Term Znt Prox RV Prox PTS Proz ZKE ZKE Int HOT ZLV 13
  • 14. ClientSubnetzServerSubnetz Hochverfügbarkeit auf Kommunikationsebene Verteilte Architektur RVRD RVRD RVRD RVRD RVD RVD RVD TCP/IP Queue TCP/IP Filtering Betriebslage RVD RVD Multicast Zentrale Architektur Multicast Tibco Rendez-Vous (very to many) (one to few) 14
  • 15. Hochverfügbarkeit auf Prozess-Ebene Distributed Queue DQ Prozess A DQ Prozess DQ Prozess B C FT Prozess Fault Tolerant Group FT Prozess A B C A B C aktiv passiv Redundanz kritischer Komponenten Fehlertolerantes Verhalten Voraussetzungen für Hochverfügbarkeit
  • 16. FT-Prozesse und Statehandling Non Recoverable State Recoverable DB, Cache, … 1Deterministische Verarbeitung garantiert fachlich Äquivalenz 1 Failover 2 3 Failover 2 16
  • 17. Verarbeitungsmuster Es gibt zwei primäre Muster in RCS 17 Event-getriebene Verarbeitungen Kontinuierliche Verarbeitungen Datensicht Local Global HA DQ FT Beispiele Dispositionen Client Requests Datentransformationen … Prognose Optimierungen Statehandling Cache / Datenbank In-Memory
  • 18. Typen von Events Notification: A Notification of change in the domain • Zugstandortmeldung • Fahrempfehlung • Import completed • … Event-Carried State Transfer: Replication of state • Fahrplanupdate • Prognose • … 18 Siehe https://martinfowler.com/articles/201701-event-driven.html
  • 20. Datenhaltung Typ Interessen- bereich Eigenschaften In-Memory Store [0, +90 M] • In-Process Heap • Keine Serialisierung • Volume: GBs / pro Prozess Distributed Cache [-1 H, +4 H] • Verteilter Cache mit Replication • Object Serialisierung • Volume: mehrere GBs Datenbank [-5 T, + 27 H] • Oracle RAC • Object-Relational Mapping • Volume: mehrere GBs 20 Zeit jetzt
  • 21. Disaster Recovery 21 Aktive Produktion Standort A Passive Produktion Standort B Tibco Router Dispo Bridge Umsysteme >400 RCS-Arbeitsplätze
  • 23. Steigende Automatisierung • Verstärkte Abhängigkeit von Softwarelösungen ➔ Grosse Auswirkungen bei Ausfällen • Umfassende Optimierungen ➔ Hohe Anforderungen an Datengenauigkeit ➔ Steigende Datenmengen und Rechenbedarf • Feedbackloops mit dem System Bahn ➔ Anspruchsvolle Integrationstests 23
  • 24. Hochverfügbarkeit und Cloud Pro • Flexible und schnelle Entwicklung durch moderne Deploymentverfahren • Hohe Skalierbarkeit – wenn die Applikation dafür entwickelt ist Contra • Gegenseitige Beeinflussung von Anwendungen auf geteilten Plattformen • Unzuverlässige Netzwerkanbindung externer Clouds • Zu schwache SLAs • Behandlung von zustandsbehafteten Services 24
  • 25. Viele Dank! Fragen? 25 jobs.sbb.ch Erwann Wernli Leadarchitekt RCS @wrnli Marc Hoffmann Softwarearchitekt RCS @marcandsweep