Welcome to Apache Etch
Etch is a cross-platform, language- and transport-independent framework for building and consuming network services. The Etch toolset includes a network service description language, a compiler, and binding libraries for a variety of programming languages. Etch is also transport-independent, allowing for a variety of different transports to be used based on need and circumstance. The goal of Etch is to make it simple to define small, focused services that can be easily accessed, combined, and deployed in a similar manner. With Etch, service development and consumption becomes no more difficult than library development and consumption.
Etch was started because we wanted to have a way to write a concise, formal description of the message exchange between a client and a server, with that message exchange supporting a hefty set of requirements:
- support one-way and two-way, real-time communication
- high performance and scalability
- support clients and servers written in different languages
- support clients/servers running in a wide range of contexts (such as thin web client, embedded device, PC application, or server)
- support anyone adding new language bindings and new transports
- be fast and small, while still being flexible enough to satisfy requirements
- finally, it must be easy to use for developers both implementing and/or consuming the service.
Etch is an Apache TLP!
We are happy and proud to announce that the Apache Board has decided in its board meeting in January to graduate the Apache Etch project. The "After-Graduation" process is ongoing. Follow us on twitter (@apacheetch) to stay up to date.
Etch C++ Binding alpha version
The Apache Etch team has been working on the C++ Binding for the last few months. Now we are happy to announce that a first working alpha version is now available in the SVN repository. Check it out! For bug reports or feature request please refer to our BugTracker.
Apache Incubator Etch 1.2.0
The Apache Etch development team is really pleased to announce the new stable build Apache Etch 1.2.0-incubating.
The Apache Etch project is permanently in progress. The latest stable version can be downloaded here. The language bindings are currently in different states:
- Java - stable
- C# - stable
- C - stable
- C++ - beta
- Google Go - alpha
- Python - alpha