[Introduction to Etch of Apache]

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.

Apache Etch is a cross-platform, language- and transport-method independent framework for building and consuming web services. The Etch toolset includes a web service description language, a compiler, and various language binding libraries. Etch is also transmission mode independent, allowing different transmission modes to be used according to requirements. The goal of Etch is to simply define small, centralized services that are easy to access, combine, and deploy.



 

 

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:

1)support one-way and two-way, real-time communication

2)high performance and scalability

3)support clients and servers written in different languages

4)support clients/servers running in a wide range of contexts (such as thin web client, embedded device, PC application, or server)

5)support anyone adding new language bindings and new transports

6)be fast and small, while still being flexible enough to satisfy requirements

7)finally, it must be easy to use for developers both implementing and/or consuming the service.

 

In order to provide a concise and formal description of client and server information exchange, Etch provides the following powerful functions:

1) Support one-way and two-way real-time communication

2) With high performance and high scalability

3) Support client and server to write in different languages

4) Environments that support client/server mode operation (such as thin Web clients, embedded devices, PC applications, server applications)

5) Support adding new languages ​​and new transmission methods

6) The performance should be fast and lightweight, and it must also be flexible enough to meet different needs

7) It is convenient for developers to access and build various services

 

 

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

Javascript - alpha

Python - alpha

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326563406&siteId=291194637