github.com/jbking/gohan@v0.0.0-20151217002006-b41ccf1c2a96/docs/source/intro.rst (about)

     1  ==============
     2  Introduction
     3  ==============
     4  
     5  Gohan is a REST-based api server to evolve your cloud service very rapidly and enable painless operation
     6  
     7  Gohan makes your system architeture simple
     8  
     9  Gohan enables you to create / modify new service very rapidly with minimum coding
    10  
    11  Gohan can be easiliy integrated to your system using sync layer and custom extension
    12  
    13  SINGLE PROCESS for REST based microservices
    14  --------------------------------------------
    15  
    16  Traditional “fat” services are difficult to manage: subsystems become tightly coupled making it hard to introduce changes. Micro-service based architectures are meant to solve this issue; however they come with additional problems such as process management and orchestration.
    17  
    18  Gohan enables you to define microservices within single unified process, so that you can keep your system architecture and deployment model simple. Moreover, Gohan supports transactional management for microservices orchestration.
    19  
    20  SCHEMA-DRIVEN Service Develoment
    21  --------------------------------------------
    22  
    23  Similar structure code everywhere.
    24  Typical Schema-driven development tools reduces number of code lines by automatic code generation. Down side of the code generation method is adding complexity to the code management.
    25  
    26  In Gohan project, we are challenging to have powerful schema-driven development without those complexity.
    27  
    28  SINGLE PLACE to keep Service related poilcy, config and code
    29  --------------------------------------------
    30  
    31  Cloud service management is not simple.
    32  Typical cloud architecutre has three layers, i.e. Controller, Communication and Agent layer. When you develop a new service on this archtecutre, configurations and codes will be distributed across three layers. This makes hard to diagnose issue and manage services.
    33  
    34  In Gohan, each layer can understand service definition file, so that you can unify service related configuraion and code on one place.