SlideShare ist ein Scribd-Unternehmen logo
1 von 10
Downloaden Sie, um offline zu lesen
Apache Etch.
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
Feb. 2011
Page 1


                  Efficient and feature-rich
                  network services.




                  BMW Car IT GmbH
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 2            What is Etch?

                  framework for building network services

                  Key facts:

                    symmetric
                    sychronous, two-way and
                    asynchronous, one-way
                    error handling
                    timing constraints
                    convenient service description
                    fast & efficient
                    scalable: from phones to backend servers
                    modular architecture
                    language & transport independent
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 3            Network Service Description.
                  module org.apache.etch.demo

                  service helloworld{
                         string hello(string msg)
                  }




                           Node                     Node


                      process

                                                       spawn thread

                         wait                          process request

                                                       terminate thread

                      process
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 4            Symmetric two-way communication.
                  service helloworld{
                         @Direction(server)
                         string hello(string msg)

                        @Direction(client)
                        string askSomething(string question)
                  }



                        Client                      Server




                                 process
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 5            Asynchronous one-way Communication.
                  service helloworld{
                         @Direction(server)
                         @Oneway
                         void hello(string msg)

                           @Direction(client)
                           @Oneway
                           void howdy(string msg)
                  }

                           Client                   Server



                      process

                                                        process




                                       process
                                    asynchronous
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 6            Error handling & user data.
                  service helloworld{
                         struct User ( string name )

                        exception UserUnknownException ( string message )

                        @Timeout(500)
                        void hello(User user, string msg)
                             throws UserUnknownException
                  }
                         Node                     Node
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 7            Non-functional aspects.

                  Programming language independent:
                  Bindings are currently available for
                  - Java
                  - C#
                  - C
                  - Google Go (alpha version), Javascript (alpha version)

                  Transport independent:
                  - default transport is TCP using a binary encoding
                  - adding new transports is simple
                  - XML available e.g. for C#,JavaScript binding

                  Tooling:
                  - Wireshark support
                  - basic Maven integration
                  - Eclipse plugins are underway

                  Efficiency (measured on a desktop system):
                  - ~ 40.000 asynchronous one-way calls per second
                  - ~ 15.000 blocking two-way calls per second
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                   Apache Etch.
Feb. 2011
Page 8             Architecture.

                   fully symmetric, flexible protocol stack for client and server

                               Application                                                   Application

                        Stub                 Remote           generated               Stub                 Remote

                            DeliveryService           call stubs / forward requests      DeliveryService
            Mailbox                                                                                           Mailbox
              Mailbox       MailboxManager            manage requests / responses        MailboxManager         Mailbox
                  Mailbox                                                                                           Mailbox

                               Messagizer                    serialization                   Messagizer

                               Packetizer                  byte[]    Packets                 Packetizer

                               Transport                    e.g. TCP, SSL                    Transport




                                                          Implemented the same way for Java, C#, C, Go
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 9            Roadmap.

                  -   more transports (e.g. UDP, Serial, ...)
                  -   more languages (first steps for JavaScript, Python exist)
                  -   naming service
                  -   discovery
                  -   web service gateway
                  -   more security
                  -   better IDE support
                  -   better maven integration
                  -   message routing, broker
                  -   ...
                               Where do you want to go?
Apache Etch
Grandy/Fitzner
BMW Car IT GmbH
                  Apache Etch.
Feb. 2011
Page 10           Find out more.

                  Website
                  www.incubator.apache.org/etch

                  Mailing Lists
                  etch-dev@incubator.apache.org
                  etch-user@incubator.apache.org

                  Contributors: (initial development done @ Cisco)
                  Rene Barrazza, Seth Call, Scott Comer, James
                  DeCocq, James Dixson, Michael Fitzner, Holger Grandy,
                  J.D. Liau, Youngjin Park, Gaurav Sandhir

                  Speaker contact:
                  Holger.Grandy@bmw-carit.de

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]vaishalisahare123
 
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows AzureCloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows AzureDavid Chou
 
성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택uEngine Solutions
 
TS 4839 - Enterprise Integration Patterns in Practice
TS 4839 - Enterprise Integration Patterns in PracticeTS 4839 - Enterprise Integration Patterns in Practice
TS 4839 - Enterprise Integration Patterns in Practiceaegloff
 
Web changesandasp4 upload
Web changesandasp4 uploadWeb changesandasp4 upload
Web changesandasp4 uploadREADIFY
 
Windows Azure AppFabric
Windows Azure AppFabricWindows Azure AppFabric
Windows Azure AppFabricDavid Chou
 
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, ReadifyASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, ReadifyREADIFY
 
BizTalk Mapping Patterns and Best Practices
BizTalk Mapping Patterns and Best PracticesBizTalk Mapping Patterns and Best Practices
BizTalk Mapping Patterns and Best PracticesBizTalk360
 
Chapter10 web
Chapter10 webChapter10 web
Chapter10 webREADIFY
 
NServicebus WCF Integration 101
NServicebus WCF Integration 101NServicebus WCF Integration 101
NServicebus WCF Integration 101Rich Helton
 
Modern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScriptModern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScriptmartinlippert
 
Azure in Developer Perspective
Azure in Developer PerspectiveAzure in Developer Perspective
Azure in Developer Perspectiverizaon
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentationdimuthu22
 
Asp.net presentation by gajanand bohra
Asp.net presentation by gajanand bohraAsp.net presentation by gajanand bohra
Asp.net presentation by gajanand bohraGajanand Bohra
 
Serverless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud WorkflowsServerless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud WorkflowsMárton Kodok
 
Building multi tenancy enterprise applications
Building multi tenancy enterprise applicationsBuilding multi tenancy enterprise applications
Building multi tenancy enterprise applicationsuEngine Solutions
 
Mike Taulty DevDays 2010 Silverlight MEF
Mike Taulty DevDays 2010 Silverlight MEFMike Taulty DevDays 2010 Silverlight MEF
Mike Taulty DevDays 2010 Silverlight MEFukdpe
 
ENOVIA 3Dcom Architecture
ENOVIA 3Dcom ArchitectureENOVIA 3Dcom Architecture
ENOVIA 3Dcom ArchitecturePalmV
 

Was ist angesagt? (20)

Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]
 
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows AzureCloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
 
성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택성공적인 서비스로의 플랫폼 선택
성공적인 서비스로의 플랫폼 선택
 
TS 4839 - Enterprise Integration Patterns in Practice
TS 4839 - Enterprise Integration Patterns in PracticeTS 4839 - Enterprise Integration Patterns in Practice
TS 4839 - Enterprise Integration Patterns in Practice
 
Web changesandasp4 upload
Web changesandasp4 uploadWeb changesandasp4 upload
Web changesandasp4 upload
 
Windows Azure AppFabric
Windows Azure AppFabricWindows Azure AppFabric
Windows Azure AppFabric
 
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, ReadifyASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
ASP.NET 4 & Web Dev in Visual Studio 2010 - Alex Mackey, Readify
 
BizTalk Mapping Patterns and Best Practices
BizTalk Mapping Patterns and Best PracticesBizTalk Mapping Patterns and Best Practices
BizTalk Mapping Patterns and Best Practices
 
Chapter10 web
Chapter10 webChapter10 web
Chapter10 web
 
NServicebus WCF Integration 101
NServicebus WCF Integration 101NServicebus WCF Integration 101
NServicebus WCF Integration 101
 
Modern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScriptModern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScript
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
Asp.net
Asp.netAsp.net
Asp.net
 
Azure in Developer Perspective
Azure in Developer PerspectiveAzure in Developer Perspective
Azure in Developer Perspective
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Asp.net presentation by gajanand bohra
Asp.net presentation by gajanand bohraAsp.net presentation by gajanand bohra
Asp.net presentation by gajanand bohra
 
Serverless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud WorkflowsServerless orchestration and automation with Cloud Workflows
Serverless orchestration and automation with Cloud Workflows
 
Building multi tenancy enterprise applications
Building multi tenancy enterprise applicationsBuilding multi tenancy enterprise applications
Building multi tenancy enterprise applications
 
Mike Taulty DevDays 2010 Silverlight MEF
Mike Taulty DevDays 2010 Silverlight MEFMike Taulty DevDays 2010 Silverlight MEF
Mike Taulty DevDays 2010 Silverlight MEF
 
ENOVIA 3Dcom Architecture
ENOVIA 3Dcom ArchitectureENOVIA 3Dcom Architecture
ENOVIA 3Dcom Architecture
 

Andere mochten auch

Schemaless Databases
Schemaless DatabasesSchemaless Databases
Schemaless DatabasesDan Gunter
 
PVC Compounding Ingredients Part 1
PVC Compounding Ingredients Part 1PVC Compounding Ingredients Part 1
PVC Compounding Ingredients Part 1Siddhartha Roy
 
PVC volume cost, How to use Fillers judicously
PVC volume cost, How to use Fillers judicouslyPVC volume cost, How to use Fillers judicously
PVC volume cost, How to use Fillers judicouslySiddhartha Roy
 
Pvc formulation perstorp_eng 2014
Pvc formulation perstorp_eng 2014Pvc formulation perstorp_eng 2014
Pvc formulation perstorp_eng 2014Perstorp Group
 
Curling in multilayer films
Curling in multilayer filmsCurling in multilayer films
Curling in multilayer filmsTed Brink
 
Additives in plastics
Additives in plasticsAdditives in plastics
Additives in plasticsVasudev Singh
 
Pvc compounding ingredients, The essential Ingredients
Pvc compounding ingredients, The essential IngredientsPvc compounding ingredients, The essential Ingredients
Pvc compounding ingredients, The essential IngredientsSiddhartha Roy
 
Database Schema Evolution
Database Schema EvolutionDatabase Schema Evolution
Database Schema EvolutionLars Thorup
 
Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013Julien Le Dem
 
Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0Cloudera, Inc.
 
Scada and power system automation
Scada and power system automationScada and power system automation
Scada and power system automationShubham Kapoor
 

Andere mochten auch (15)

ApacheCon09: Avro
ApacheCon09: AvroApacheCon09: Avro
ApacheCon09: Avro
 
Apply etch
Apply etchApply etch
Apply etch
 
Schemaless Databases
Schemaless DatabasesSchemaless Databases
Schemaless Databases
 
PVC Compounding Ingredients Part 1
PVC Compounding Ingredients Part 1PVC Compounding Ingredients Part 1
PVC Compounding Ingredients Part 1
 
PVC volume cost, How to use Fillers judicously
PVC volume cost, How to use Fillers judicouslyPVC volume cost, How to use Fillers judicously
PVC volume cost, How to use Fillers judicously
 
Pvc formulation perstorp_eng 2014
Pvc formulation perstorp_eng 2014Pvc formulation perstorp_eng 2014
Pvc formulation perstorp_eng 2014
 
Curling in multilayer films
Curling in multilayer filmsCurling in multilayer films
Curling in multilayer films
 
Etching
EtchingEtching
Etching
 
Additives in plastics
Additives in plasticsAdditives in plastics
Additives in plastics
 
Pvc compounding ingredients, The essential Ingredients
Pvc compounding ingredients, The essential IngredientsPvc compounding ingredients, The essential Ingredients
Pvc compounding ingredients, The essential Ingredients
 
Database Schema Evolution
Database Schema EvolutionDatabase Schema Evolution
Database Schema Evolution
 
Wet and Dry Etching
Wet and Dry EtchingWet and Dry Etching
Wet and Dry Etching
 
Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013Parquet Strata/Hadoop World, New York 2013
Parquet Strata/Hadoop World, New York 2013
 
Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0Efficient Data Storage for Analytics with Apache Parquet 2.0
Efficient Data Storage for Analytics with Apache Parquet 2.0
 
Scada and power system automation
Scada and power system automationScada and power system automation
Scada and power system automation
 

Ähnlich wie Build efficient network services with Apache Etch

respond_to :voice - the convergence of voice and web interfaces with Rails an...
respond_to :voice - the convergence of voice and web interfaces with Rails an...respond_to :voice - the convergence of voice and web interfaces with Rails an...
respond_to :voice - the convergence of voice and web interfaces with Rails an...jpalley
 
GeeCON Microservices 2015 scaling micro services at gilt
GeeCON Microservices 2015   scaling micro services at giltGeeCON Microservices 2015   scaling micro services at gilt
GeeCON Microservices 2015 scaling micro services at giltAdrian Trenaman
 
Life on the Edge with ESI
Life on the Edge with ESILife on the Edge with ESI
Life on the Edge with ESIKit Chan
 
Windows Azure Interoperability
Windows Azure InteroperabilityWindows Azure Interoperability
Windows Azure InteroperabilityMihai Dan Nadas
 
Adhearsion and Telegraph Framework Presentation
Adhearsion and Telegraph Framework PresentationAdhearsion and Telegraph Framework Presentation
Adhearsion and Telegraph Framework PresentationJustin Grammens
 
The Art of Message Queues - TEKX
The Art of Message Queues - TEKXThe Art of Message Queues - TEKX
The Art of Message Queues - TEKXMike Willbanks
 
SignalR Intro + WPDev
SignalR Intro + WPDevSignalR Intro + WPDev
SignalR Intro + WPDevSam Basu
 
Cloud Computing Best Practices
Cloud Computing Best PracticesCloud Computing Best Practices
Cloud Computing Best PracticesArmor
 
InduSoft Web Studio and DCS Conversion and Integration Webinar
InduSoft Web Studio and DCS Conversion and Integration WebinarInduSoft Web Studio and DCS Conversion and Integration Webinar
InduSoft Web Studio and DCS Conversion and Integration WebinarAVEVA
 
Oem Lead Disposition Vendor Certification V3
Oem Lead Disposition   Vendor Certification V3Oem Lead Disposition   Vendor Certification V3
Oem Lead Disposition Vendor Certification V3Social Media Marketing
 
Amdatu - ApacheCon NA 2011
Amdatu - ApacheCon NA 2011Amdatu - ApacheCon NA 2011
Amdatu - ApacheCon NA 2011Bram de Kruijff
 
Will Web 2.0 applications break the cloud?
Will Web 2.0 applications break the cloud?Will Web 2.0 applications break the cloud?
Will Web 2.0 applications break the cloud?Flaskdata.io
 
Mastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to MicroservicesMastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to MicroservicesJosh Evans
 
Working with Data and Web Services in Microsoft Silverlight 2
Working with Data and Web Services in Microsoft Silverlight 2Working with Data and Web Services in Microsoft Silverlight 2
Working with Data and Web Services in Microsoft Silverlight 2goodfriday
 
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdfQConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdfSimranjyotSuri
 

Ähnlich wie Build efficient network services with Apache Etch (20)

respond_to :voice - the convergence of voice and web interfaces with Rails an...
respond_to :voice - the convergence of voice and web interfaces with Rails an...respond_to :voice - the convergence of voice and web interfaces with Rails an...
respond_to :voice - the convergence of voice and web interfaces with Rails an...
 
GeeCON Microservices 2015 scaling micro services at gilt
GeeCON Microservices 2015   scaling micro services at giltGeeCON Microservices 2015   scaling micro services at gilt
GeeCON Microservices 2015 scaling micro services at gilt
 
Active network
Active networkActive network
Active network
 
Life on the Edge with ESI
Life on the Edge with ESILife on the Edge with ESI
Life on the Edge with ESI
 
Windows Azure Interoperability
Windows Azure InteroperabilityWindows Azure Interoperability
Windows Azure Interoperability
 
Adhearsion and Telegraph Framework Presentation
Adhearsion and Telegraph Framework PresentationAdhearsion and Telegraph Framework Presentation
Adhearsion and Telegraph Framework Presentation
 
Kaazing
KaazingKaazing
Kaazing
 
The Art of Message Queues - TEKX
The Art of Message Queues - TEKXThe Art of Message Queues - TEKX
The Art of Message Queues - TEKX
 
SignalR Intro + WPDev
SignalR Intro + WPDevSignalR Intro + WPDev
SignalR Intro + WPDev
 
Introduction To Cloud Computing
Introduction To Cloud ComputingIntroduction To Cloud Computing
Introduction To Cloud Computing
 
Riding with camel
Riding with camelRiding with camel
Riding with camel
 
Cloud Computing Best Practices
Cloud Computing Best PracticesCloud Computing Best Practices
Cloud Computing Best Practices
 
InduSoft Web Studio and DCS Conversion and Integration Webinar
InduSoft Web Studio and DCS Conversion and Integration WebinarInduSoft Web Studio and DCS Conversion and Integration Webinar
InduSoft Web Studio and DCS Conversion and Integration Webinar
 
Oem Lead Disposition Vendor Certification V3
Oem Lead Disposition   Vendor Certification V3Oem Lead Disposition   Vendor Certification V3
Oem Lead Disposition Vendor Certification V3
 
Amdatu - ApacheCon NA 2011
Amdatu - ApacheCon NA 2011Amdatu - ApacheCon NA 2011
Amdatu - ApacheCon NA 2011
 
Will Web 2.0 applications break the cloud?
Will Web 2.0 applications break the cloud?Will Web 2.0 applications break the cloud?
Will Web 2.0 applications break the cloud?
 
SOA patterns
SOA patterns SOA patterns
SOA patterns
 
Mastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to MicroservicesMastering Chaos - A Netflix Guide to Microservices
Mastering Chaos - A Netflix Guide to Microservices
 
Working with Data and Web Services in Microsoft Silverlight 2
Working with Data and Web Services in Microsoft Silverlight 2Working with Data and Web Services in Microsoft Silverlight 2
Working with Data and Web Services in Microsoft Silverlight 2
 
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdfQConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
 

Build efficient network services with Apache Etch

  • 1. Apache Etch. Apache Etch Grandy/Fitzner BMW Car IT GmbH Feb. 2011 Page 1 Efficient and feature-rich network services. BMW Car IT GmbH
  • 2. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 2 What is Etch? framework for building network services Key facts: symmetric sychronous, two-way and asynchronous, one-way error handling timing constraints convenient service description fast & efficient scalable: from phones to backend servers modular architecture language & transport independent
  • 3. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 3 Network Service Description. module org.apache.etch.demo service helloworld{ string hello(string msg) } Node Node process spawn thread wait process request terminate thread process
  • 4. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 4 Symmetric two-way communication. service helloworld{ @Direction(server) string hello(string msg) @Direction(client) string askSomething(string question) } Client Server process
  • 5. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 5 Asynchronous one-way Communication. service helloworld{ @Direction(server) @Oneway void hello(string msg) @Direction(client) @Oneway void howdy(string msg) } Client Server process process process asynchronous
  • 6. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 6 Error handling & user data. service helloworld{ struct User ( string name ) exception UserUnknownException ( string message ) @Timeout(500) void hello(User user, string msg) throws UserUnknownException } Node Node
  • 7. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 7 Non-functional aspects. Programming language independent: Bindings are currently available for - Java - C# - C - Google Go (alpha version), Javascript (alpha version) Transport independent: - default transport is TCP using a binary encoding - adding new transports is simple - XML available e.g. for C#,JavaScript binding Tooling: - Wireshark support - basic Maven integration - Eclipse plugins are underway Efficiency (measured on a desktop system): - ~ 40.000 asynchronous one-way calls per second - ~ 15.000 blocking two-way calls per second
  • 8. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 8 Architecture. fully symmetric, flexible protocol stack for client and server Application Application Stub Remote generated Stub Remote DeliveryService call stubs / forward requests DeliveryService Mailbox Mailbox Mailbox MailboxManager manage requests / responses MailboxManager Mailbox Mailbox Mailbox Messagizer serialization Messagizer Packetizer byte[] Packets Packetizer Transport e.g. TCP, SSL Transport Implemented the same way for Java, C#, C, Go
  • 9. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 9 Roadmap. - more transports (e.g. UDP, Serial, ...) - more languages (first steps for JavaScript, Python exist) - naming service - discovery - web service gateway - more security - better IDE support - better maven integration - message routing, broker - ... Where do you want to go?
  • 10. Apache Etch Grandy/Fitzner BMW Car IT GmbH Apache Etch. Feb. 2011 Page 10 Find out more. Website www.incubator.apache.org/etch Mailing Lists etch-dev@incubator.apache.org etch-user@incubator.apache.org Contributors: (initial development done @ Cisco) Rene Barrazza, Seth Call, Scott Comer, James DeCocq, James Dixson, Michael Fitzner, Holger Grandy, J.D. Liau, Youngjin Park, Gaurav Sandhir Speaker contact: Holger.Grandy@bmw-carit.de