Phantom is a high performance proxy for accessing distributed services. It is an RPC system with support for different transports and protocols. Phantom is inspired by Twitter Finagle clients and builds on the capabilities of technologies like Netty, Unix Domain Sockets, Netflix Hystrix and Spring. Phantom proxies have been used to serve several hundred million API calls in production deployments at Flipkart.
Release | Date | Description |
---|---|---|
Version 1.3.4-SNAPSHOT | Oct 2014 | Feature enhancement and bug fix release |
Version 1.3.3 | Oct 2014 | Bug fix release |
Version 1.3.2-SNAPSHOT | Sep 2014 | Feature enhancement and bug fix release |
Version 1.3.0-SNAPSHOT | Sep 2014 | Feature enhancement and code clean up |
Version 1.2.9-SNAPSHOT | Aug 2014 | Feature enhancement and bug fix release |
Changelog can be viewed in CHANGELOG.md file (https://github.com/Flipkart/phantom/blob/master/CHANGELOG.md)
Phantom is the "ghost who walks" - an entity whose presence can be felt (in a good way) but its existence need not be acknowledged. The Service Proxies fit this analogy well and therefore earned the moniker "Phantom". Motivation for creating Phantom and design overview is described in this Proxies for resilience and fault tolerance in SOA blog post.
The Getting Started page has "5 minute" examples to help you start using Phantom proxies.
Phantom project modules that start with "sample" - for e.g. sample-http-proxy, sample-task-proxy are example proxy implementations. Documentation is continuously being added to the Wiki page of Phantom (https://github.com/Flipkart/phantom/wiki)
For discussion, help regarding usage, or receiving important announcements, subscribe to the Phantom users mailing list: http://groups.google.com/group/phantom-users
Phantom is licensed under : The Apache Software License, Version 2.0. Here is a copy of the license (http://www.apache.org/licenses/LICENSE-2.0.txt)
- Regunath B (@regunathb)
- Devashish Shankar (@devashishshankar)
- Kartik B Ukhalkar (@kartikssj)
- Arya Ketan (@aryaKetan)
- Amanpreet Singh (@aman_high)