170 likes | 272 Vues
Explore a configurable environment for distributed programming featuring EPDA, component-based models, fault tolerance, and more. Customize your programming experience with built-in tools and methodologies.
E N D
A Tailorable Distributed Programming Environment E. Martel, F.Guerra, J. Miranda University of Las Palmas de G. C. CANARY ISLANDS (SPAIN)
Contents • Configuration Programming • Environment for Programming Distributed Applications (EPDA) • EPDA Features • Modelling Tool • Conclusions and current work A Tailorable Distributed Programming Environment
Configuration Programming • Programming + • Configuration • Hand-made • Configuration language • Graphical utility Distributed Application Environment for Programming Distributed Applications(EPDA) A Tailorable Distributed Programming Environment
EPDA Features • Component-based model • Common tasks in DAE (Distributed Application Engineering) • Software and hardware configuration • Fault Tolerance • Proxies A Tailorable Distributed Programming Environment
Component-based Model • Components, properties and relations • Hierarchic structure • Single components (leaves) • Composite components (non-leaves) • Examples • Remote Procedure Call (RPC): GLADE • Group Communication Service (GCS): Drago A Tailorable Distributed Programming Environment
Channel name filter ... Application name starter boot server location ... Partition name binary location ... Component-based Model (GLADE) * 2 + + Ada Unit A Tailorable Distributed Programming Environment
Application name + * Group Agent + name type name binary location execution location ... Component-based Model (Drago) A Tailorable Distributed Programming Environment
Common Tasks in DAE • Construction • Configuration • Execution • Monitoring • Evolution A Tailorable Distributed Programming Environment
node1 node2 node3 node4 my_pc Software and Hardware Configuration node1 node2 node3 node4 application1 comp1 comp2 comp3 comp4 A Tailorable Distributed Programming Environment
node1 node2 node3 node4 my_pc your_pc his_pc Software and Hardware Configuration node4 node3 node1 node2 application1 comp1 comp2 comp3 comp4 A Tailorable Distributed Programming Environment
EPDA database GUI EPDAserver EPDA client Fault Tolerance (data) A Tailorable Distributed Programming Environment
Fault Tolerance (availability) GUI EPDA client EPDA replicas EPDA server A Tailorable Distributed Programming Environment
EPDA P1 P2 my_pc your_pc P3 P4 her_pc his_pc EPDA proxies Proxies GUI EPDA client EPDA replicas EPDA server A Tailorable Distributed Programming Environment
GUI GLADE EPDA Specific features for GLADE GLADE EPDA client EPDA-core * Channel EPDA-core client Appli. 2 + EPDA-core replica Partition EPDA-core server GLADE EPDA server EPDA-core proxy + Ada Unit properties Proxy run_appli (dat_appli) EPDA-Modeller EPDA-Modeller Tool A Tailorable Distributed Programming Environment
GLADE EPDA GUI (applications) A Tailorable Distributed Programming Environment
GLADE EPDA GUI (nodes) A Tailorable Distributed Programming Environment
Conclusions and Current work • Conclusions • Tailorable robust EPDA • Methodology to customise an EPDA • Common elements (EPDA-Core) • Specific elements • Tool for modelling (EPDA-Modeller) • Current work: • Specific feature collection for EPDAs A Tailorable Distributed Programming Environment