Skip to content
Home
Products
Solutions
Customers Enterprise Community Docs
Support
Live Demo

OpsAny PaaS Architecture

The paas service in the PaaS platform

The paas service provides the developer center and the web workbench of the PaaS platform.

Main responsibilities:

  • Provide SaaS users with the entry point to SaaS applications
  • Provide SaaS developers with the tools to develop and manage SaaS applications
  • Provide platform administrators with the user management entry point

It consists of the web workbench and the developer center:

  • Web workbench: the list of published SaaS applications as the single entry point, along with a set of commonly used links; administrators can also manage users here
  • Developer center: entry points for creating, deploying, and unpublishing SaaS applications; manages server information and third-party service information; also provides the documentation and resource downloads required for SaaS development

Technology stack

  • framework: Django 1.8.11
  • template: mako
  • database: mysql

Dependencies

  • mysql: platform database
  • appengine: calls the appengine API to deploy and unpublish applications
  • login: calls the unified login API to determine the user's login state

The login service in the PaaS platform

login is the unified authentication service.

Main responsibilities: - Provide unified user authentication and single sign-on for the PaaS platform and SaaS applications - Support unified user management and simple authorization - Support federating unified login with an enterprise's internal identity system

It consists of the unified login module and the custom enterprise login module:

  • Unified login module: the user login entry point, user information management, and simple authorization management
  • Custom enterprise login module: federates PaaS unified login with an enterprise's internal identity system so users authenticate with enterprise credentials

Technology stack

  • framework: Django 1.8.11
  • database: mysql

Dependent services

  • mysql: platform database

Appengine in the PaaS platform

The appengine directory contains the source of the backend service module (application engine) that hosts SaaS applications in the PaaS platform.

Main responsibilities:

  • Manage the SaaS application lifecycle — test submission, release, and unpublishing — by interacting with PaaSAgent
  • Manage the third-party services SaaS applications depend on, including service requests and configuration

Technology stack

  • framework: Django 1.8.11
  • database: mysql

Dependencies

  • paasagent: calls the paasagent API to manage the SaaS application lifecycle
  • mysql: platform database

ESB in the PaaS platform

ESB is the API service bus of the PaaS platform. It wraps the interfaces of underlying atomic platforms or third-party systems — either self-service or by coding — into atomic components, and exposes them to upper-layer SaaS applications following a unified cloud API specification. The esb directory contains the API gateway source.

Main responsibilities of the API gateway:

  • Provide APIs to SaaS application developers
  • Let administrators onboard APIs onto the gateway in self-service
  • Provide administrators with a gateway management entry point
  • Provide component development templates so API components can be developed in code and connected to the gateway

Technology stack

  • framework: Django 1.8.11
  • database: mysql
  • cache: redis

Dependencies

  • mysql: platform database
  • redis: cache service
  • login: calls the unified login API to determine the user's login state
  • paas: accesses the PaaS platform database to authenticate SaaS applications
Document