Git Product home page Git Product logo

repose's Introduction

 ______     ______     ______   ______     ______     ______    
/\  == \   /\  ___\   /\  == \ /\  __ \   /\  ___\   /\  ___\ 
\ \  __/   \ \  __\   \ \  _-/ \ \ \/\ \  \ \___  \  \ \  __\
 \ \_\ \_\  \ \_____\  \ \_\    \ \_____\  \/\_____\  \ \_____\ 
  \/_/ /_/   \/_____/   \/_/     \/_____/   \/_____/   \/_____/
  

                    .'.-:-.`.
                    .'  :  `.
                    '   :   '   /
                 .------:--.   /
               .'           `./
        ,.    /            0  \
        \ ' _/                 )
~~~~~~~~~\. __________________/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#REPOSE - The REstful PrOxy Service Engine#

Repose is an open-source platform that you can use to build stacks of reusable software components. These components can be leveraged by service developers to perform common API processing tasks. By using Repose's components rather than creating their own, service developers can focus on the unique features of their services.

Repose can be run as a standalone application (either as a Linux service or using the JAR directly), or it can be deployed as a WAR file in a servlet container alongside your origin service. Repose can be run on the same server or on a different server, and it can be run across multiple servers for horizontal scaling. At its core, Repose is a proxy that allows services to use Enterprise Integration Patterns (EIP).

For more information, check out our Getting Started with Repose guide.

##Benefits##

##Repose Components##

Repose includes several filters and services out of the box. These include:

Repose also makes it easy to create your own custom components. Check out our example custom filter for more details.

##Installation## You can install Repose using the following methods:

Configuration##

Repose will search for configuration files in the user specified directory.

  • The configuration root directory must be user readable.
  • The configuration files should be user readable and writable.

Setting the Configuration Root Directory.

  • If using the Valve deployment, simply pass the configuration directory to the Java process using the "-c" option.
  • If using the WAR deployment, include the following in the $CONTAINER_HOME/conf/context.xml file:
    <Context docBase="ROOT.war">
      <Parameter name="powerapi-config-directory" value="/etc/repose" override="false"/>
      <Parameter name="repose-cluster-id" value="repose"/>
      <Parameter name="repose-node-id" value="repose_node1"/>
    </Context>
  • As an alternative, the web.xml file within the war itself can be modified to include the following:
    <context-param>
        <param-name>repose-config-directory</param-name>
        <param-value>/etc/repose</param-value>
    </context-param>
    <context-param>
        <param-name>repose-cluster-id</param-name>
        <param-value>repose</param-value>
    </context-param>
    <context-param>
        <param-name>repose-node-id</param-name>
        <param-value>repose_node1</param-value>
    </context-param>

##Licensing##

Original files contained with this distribution of Repose are licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0).

You must agree to the terms of this license and abide by them before using, modifying, or distributing Repose or the Repose source code contained within this distribution.

Some dependencies are under other licenses.

By using, modifying, or distributing Repose you may also be subject to the terms of those licenses.

See the full list of dependencies in DEPENDENCIES.txt.

By contributing to this project, you agree to abide to the terms and conditions outlined in CONTRIBUTORS.txt.

repose's People

Contributors

adrianjgeorge avatar amelia-lopez avatar beccasalinas avatar carlosmarin avatar coderlisa avatar coreywright avatar dddaley avatar dimtruck avatar dkowis avatar dmnjohns avatar ephur avatar forcewhisperer avatar fsargent avatar izrik avatar jennyvo avatar joelrizner avatar katiejots avatar kushala2012 avatar mhawrylczak avatar mknocke avatar reneerendon avatar repose-bot avatar sethbrayman avatar sharwell avatar tylerroyal avatar wdschei avatar zinic-test avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.