Collapse AllExpand All

2. Definitions

In order to further understand the xTupleCommerce stack, see below for definitions of the various components:

Web Browser

To view the xTupleCommerce portal, users will use a web browser. The most common web browsers include Google Chrome, Mozilla Firefox, and Apple Safari.

Nginx Web Server

Nginx, pronounced "engine x," is a high-performance web server primarily responsible for running the PHP scripts to serve up web pages.

Drupal

Drupal is the content management system (CMS) used to power the xTupleCommerce portal. Drupal is an easy-to-use system for managing content and many back-end aspects of an xTupleCommerce portal.

Caching Layer

As a database grows, the operations can slow down due to bottle-necking. Caching helps speed things back up by storing frequently accessed data in a faster storage system.

Drupal Postgres Database

Postgres is an object-relational database. The Drupal Postgres database stores the Drupal-related data for the xTupleCommerce portal. The ERP-related data is stored in a separate Postgres database.

xDruple PHP Library

This PHP library provides a collection of interfaces and classes that are meant to solve common problems when working with xTuple ERP business objects, such as contacts, addresses and sales orders.

Nginx Proxy Server

The HTTP proxying capabilities of Nginx allow it to pass requests off to back-end HTTP servers and other services for further processing.

REST API

REST (representational state transfer) is an open standard for defining web services. The REST API (application programming interface) uses HTTP requests to get, put, post, and delete data. When you combine all that together you have the ability to "translate" information between two servers.

Node.js Layer

The Node.js layer acts as a web server for the REST API, does authentication and authorization of requests, takes incoming HTTP requests, and translates them into SQL database queries.

ERP Postgres Database

Postgres is an object-relational database. The ERP Postgres database stores the xTuple ERP data and enforces ERP business logic. The Drupal-related data is stored in a separate Postgres database.

xTuple ERP Desktop Client

The program on your desktop or laptop computer for working with your ERP system.