Guidelines

These guidelines should be applied to the creation of any new functionality developed by Great Ideaz for the TRELLIS architectural framework. We would recommend that any organization adopting DaaS should take and adapt these guidelines for their own development team.

General
Data at Rest
Data Presentation
Data in Motion

Minimum functionality Web APIs will be exposed to support integration with other applications.

Data in Action

Minimum functionality Web APIs will be exposed to support automated workflows.

Disaster Recovery

Production infrastructure will be deployed across two separate physical data centers separated by at least 300km. Servers will either be maintained in Hot, Warm or Cold posture:

The network would typically be preconfigured at the secondary site and use the same IP address mapping where possible. Azure Site Recovery would be used to back up VMs to the DR location (if running in Azure).

Design for connectivity failure

Integrations increasingly depend upon some form of network connectivity between services. Solutions should be developed that can handle a failure of the connection. For many services, implementation of an internal Message Buffer is a recommended practice. Most message traffic is not time sensitive, so a temporary failure of the connection merely increases the size of the message queue which can be recovered when the connection is restored.

Design for hardware failure

Cloud platform services still ultimately sit on physical hardware. Although the cloud service provider will have redundancy built in, it is still recommended to build in high availability to the virtual environment. For Azure cloud recommended practices see load balanced infrastructure and use of availability sets.

Design of geographically distributed services

Solutions should consider location latency and user experience performance impacts. Data travels quickly and, for short distances, can appear instantaneous. As solutions are moved from local data centers to cloud, the physical separation of the user and data may be thousands of kilometers, which can introduce small delays that cause major performance impacts.