Skip to content

Latest commit

 

History

History
108 lines (83 loc) · 3.81 KB

Configuration.md

File metadata and controls

108 lines (83 loc) · 3.81 KB

Configuration Guide
PurchaseOrders service Microservice

Cluster microservice configuration structure follows the standard configuration structure.

Persistence

The microservice supports three types of persistence: in-memory, flat files or MongoDB. In-memory and flat files are great for development and testing, while MongoDB is a good option with outstanding performance and scalability, suitable for demanding production installations. You can choose and configure the option that suits your needs.

For more information on this section read Pip.Services Configuration Guide

Memory

Memory persistence has the following configuration properties:

  • options: object - Misc configuration options
    • max_page_size: number - Maximum number of items per page (default: 100)

Example:

- descriptor: "service-purchaseorders:persistence:memory:default:1.0"
  options:
    max_page_size: 100

File

Flat file persistence has the following configuration properties:

  • path: string - file path where PurchaseOrderV1 objects are stored. The object are written into the file in JSON format.
  • options: object - Misc configuration options
    • max_page_size: number - Maximum number of items per page (default: 100)

Example:

- descriptor: "service-purchaseorders:persistence:file:default:1.0"
  path: "./data/purchase_orders.json"

MongoDB

MongoDB persistence has the following configuration properties:

  • connection(s): object - MongoDB connection properties
  • options: object - (optional) MongoDB connection options. See: http://mongoosejs.com/docs/connections.html for more details.
  • debug: boolean - (optional) Enables or disables connection debugging

Example:

- descriptor: "service-purchaseorders:persistence:file:default:1.0"
  collection: "purchase_orders"
  connection:
    uri: "mongodb://localhost/pipservicestest"
    host: "localhost"
    port: 27017
    database: "app"
  credential:
    username: "user_db"
    password: "passwd_db"

Controller

The controller component containes the core business logic of the microservice. Besides component descriptor it doesn't expect configuration options.

Example:

- descriptor: "service-purchaseorders:controller:default:default:1.0"

Services

The service components (also called endpoints) expose external microservice API for the consumers. Each microservice can expose multiple APIs (HTTP/REST, Thrift or Seneca) and multiple versions of the same API type. At least one service is required for the microservice to run successfully.

Http

HTTP/REST service has the following configuration properties:

  • connection: object - HTTP transport configuration options
    • protocol: string - HTTP protocol - 'http' or 'https' (default is 'http')
    • host: string - IP address/hostname binding (default is '0.0.0.0')
    • port: number - HTTP port number

A detailed description of HTTP protocol version 1 can be found here

Example:

- descriptor: "service-purchaseorders:service:http:default:1.0"
  connection:
    protocol: "http"
    host: "0.0.0.0"
    port: 8080

For more information on this section read Pip.Services Configuration Guide