Important: The GCConnex decommission will not affect GCCollab or GCWiki. Thank you and happy collaborating!
GC Enterprise Architecture/Standards/Technology Architecture
Jump to navigation
Jump to search
This page is a work in progress. We welcome your feedback. Please use the discussion page for suggestions and comments. When the page is approved and finalized, we will send it for translation. |
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?