GC Enterprise Architecture/Standards/Technology Architecture

From wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.


<<Application Architecture

Security Architecture>>

4. Technology Architecture


This is a definition for GC Technology Enterprise Architecture

Use Cloud first

  • Adopt the Use of the GC Accelerators to ensure proper Security and Access Controls - Azure, AWS
    • These accelerators provide templates for deploying systems that have been review by ???
    • For the Azure Accelerators, both the ARM (Azure Resource Manager) and Terraform formats are provided
  • Enforce this order of preference: Software as a Service (SaaS) first, then Platform as a Service (PaaS), and lastly Infrastructure as a Service (IaaS)
    • SaaS offers a managed service ...
    • PaaS offers ...
    • IaaS offers quick scalability compared to running your own servers, but leaves it up to you to patch an configure your infrastructure.
  • Enforce this order of preference: Public cloud first, then Hybrid cloud, then Private cloud, and lastly non-cloud (on-premises) solutions
    • Public cloud provides ...
    • Hybrid cloud provides ...
    • Private cloud provides ...
    • On-Premises provides ...
  • Design for cloud mobility and develop an exit strategy to avoid vendor lock-in
    • SaaS and PaaS remove the overhead of maintaining your own infrastructure, but can

Design for Performance, Availability, and Scalability

  • Design for resiliency
  • Ensure response times meet user needs, and critical services are highly available
    • https://royal.pingdom.com/page-load-time-really-affect-bounce-rate/
  • Support zero-downtime deployments for planned and unplanned maintenance
    • As your applications attract additional consumers, being able to introduce changes and patching without negotiating outages becomes more important
    • Green Blue deployment
  • Use distributed architectures, assume failure will happen, handle errors gracefully, and monitor actively
    • Today much of the distributed architectures rely on the Kubernetes (k8s) architectures
    • https://opentracing.io/
  • Establish architectures that supports new technology insertion with minimal disruption to existing programs and services
    • API Gateways???
    • General SOA???
  • Control Technical Diversity - design systems based on technologies and platforms already in use.
    • Technical Debt
    • Best in breed vs. suite?