Internet, News

Facebook Introduces Open Source Proxygen Framework for Developers

Proxygen On Wednesday, Facebook announced the launch of an open source software framework called Proxygen to build new features early and roll out them into production environments. The framework is a collection of C++ HTTP libraries, including a web server.

The concept was perceived back in 2011, as a software library for developing proxy servers, which can act as an interface between an end user and a server used by Facebook, after being transformed into a bigger framework to add new web performance features in its infrastructure.

Proxygen can also be integrated with Facebook’s different infrastructure services and contains a reusable codebase that allows the company to tackle the latest web technology HTTP/2 and the next generation version of the HTTP web protocol.

Also Read: Facebook Apps Settings Page Gets New Layout

The company also wrote the architecture of the Proxygen in its Blog Post:

The core HTTP layer is split into a four-part abstraction: the session, the codec, the transaction, and the handler. For each connection, a session is created. Each session has a codec, which is a protocol-specific framing object for serializing and de-serializing HTTP messages. The session is responsible for mapping each message from the codec to a particular HTTP transaction. Finally, the user of the library implements a handler that registers for HTTP-specific callbacks from a single transaction. This design has allowed us to support new multiplexing protocols like SPDY and HTTP/2 without having to duplicate code.

CoreProxygenArchitecture Proxygen depends on Facebook’s open source library Thrift and Folly to make distributed applications for the company. It is now available for download at GitHub for developing a new type of networking codebase to speed up the development.

Have ideas to share? Submit a post on iamwire

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>