reference:system-architecture:infrastructure
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| reference:system-architecture:infrastructure [2025/08/26 21:58] – created runarbe | reference:system-architecture:infrastructure [2025/08/26 22:10] (current) – runarbe | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Infrastructure Layer ====== | ||
| - | + | //— A means to ensure availability of addressing data// | |
| - | - | + | |
| - | + | ||
| - | Infrastructure Layer: | + | |
| The database and applications must be run from some server infrastructure. It is assumed that the system at most may have some 120 concurrent users working in 63 different wilayat, municipalities, | The database and applications must be run from some server infrastructure. It is assumed that the system at most may have some 120 concurrent users working in 63 different wilayat, municipalities, | ||
| Line 9: | Line 7: | ||
| On top of that, there may be 1000s of users accessing the data retrieval and query interfaces in the API. The following hardware and networking infrastructure requirements are based on the above assumptions. | On top of that, there may be 1000s of users accessing the data retrieval and query interfaces in the API. The following hardware and networking infrastructure requirements are based on the above assumptions. | ||
| - | - | + | ===== 1. Technical requirements specification for database server |
| - | + | ||
| - | Technical requirements specification for database server | + | |
| To create a robust cloud server capable of efficiently handling a system with the specified requirements, | To create a robust cloud server capable of efficiently handling a system with the specified requirements, | ||
| - | Processor | + | === Processor |
| - | * | + | * CPU Type and Frequency: Select processors optimized for high performance, |
| + | * Number of CPU Cores: An 8-core configuration will provide adequate parallelism to manage concurrent processing demands and database operations effectively. | ||
| - | CPU Type and Frequency: Select processors optimized for high performance, | + | === Memory === |
| - | * | + | * Amount of RAM: At least 32 GB of RAM is advisable. This capacity ensures sufficient memory for handling multiple simultaneous queries and operations over large datasets, enhancing performance. |
| - | Number of CPU Cores: An 8-core configuration will provide adequate parallelism to manage concurrent processing demands and database operations effectively. | + | === Storage === |
| - | Memory | + | * Type of Storage Technology: Utilise Solid State Drives (SSD) due to their low latency and high-speed data retrieval capabilities, |
| + | * Amount of File Storage: Allocate at least 1 TB of SSD storage to accommodate the datasets and any additional application-specific data. | ||
| + | * Optimal File System and Partitioning: | ||
| - | * | + | === System Configuration === |
| - | Amount of RAM: At least 32 GB of RAM is advisable. This capacity ensures sufficient | + | * Network Configuration: Ensure the server |
| + | * Database Configuration Tweaks: Utilise connection pooling and adjust | ||
| + | * Security Considerations: | ||
| - | Storage | + | === Example Cloud Server Types === |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Type of Storage Technology: Utilise Solid State Drives (SSD) due to their low latency and high-speed data retrieval capabilities, | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Amount of File Storage: Allocate at least 1 TB of SSD storage to accommodate the datasets and any additional application-specific data. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Optimal File System and Partitioning: | + | |
| - | + | ||
| - | System Configuration | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Network Configuration: | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Database Configuration Tweaks: Utilise connection pooling and adjust memory settings within the RDBMS to optimise resource usage. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Security Considerations: | + | |
| - | + | ||
| - | Example Cloud Server Types | + | |
| If the applications will be served in the cloud, these are examples of standard configurations offered by the leading cloud service providers. If the solutions are to be hosted on premise, equivalent hardware/ | If the applications will be served in the cloud, these are examples of standard configurations offered by the leading cloud service providers. If the solutions are to be hosted on premise, equivalent hardware/ | ||
| - | * | + | * Amazon Web Services (AWS): Consider using the EC2 m5.xlarge instance, which provides 4 vCPUs and 16 GB RAM, or upgrading to m5.2xlarge for greater capacity. |
| + | * Google Cloud Platform (GCP): The n1-standard-8 instance comes with 8 vCPUs and 30 GB RAM, aligning well with the requirements. | ||
| + | * Microsoft Azure: Look at the Standard_D8s_v3 instance, offering 8 vCPUs and 32 GB RAM, suitable for the described workload. | ||
| - | Amazon Web Services (AWS): Consider using the EC2 m5.xlarge instance, which provides 4 vCPUs and 16 GB RAM, or upgrading to m5.2xlarge for greater capacity. | + | ===== 2. Technical requirements specification for application server |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Google Cloud Platform (GCP): The n1-standard-8 instance comes with 8 vCPUs and 30 GB RAM, aligning well with the requirements. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Microsoft Azure: Look at the Standard_D8s_v3 instance, offering 8 vCPUs and 32 GB RAM, suitable for the described workload. | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Technical requirements specification for application server | + | |
| For a system accommodating 120 concurrent users and managing substantial datasets, a robust cloud server infrastructure is essential. Below are the recommended specifications based on the criteria provided: | For a system accommodating 120 concurrent users and managing substantial datasets, a robust cloud server infrastructure is essential. Below are the recommended specifications based on the criteria provided: | ||
| - | Processor | + | === Processor |
| - | * | + | * CPU Type and Frequency: Utilise Intel Xeon or AMD EPYC processors with a minimum base frequency of 2.5 GHz. |
| + | * Number of CPU Cores: Opt for a configuration with 16 to 32 CPU cores to ensure responsiveness under load. | ||
| - | CPU Type and Frequency: Utilise Intel Xeon or AMD EPYC processors with a minimum base frequency of 2.5 GHz. | + | === Memory === |
| - | * | + | * Amount of RAM: A minimum of 64 GB RAM is advisable for efficient data handling and application performance. |
| - | Number of CPU Cores: Opt for a configuration with 16 to 32 CPU cores to ensure responsiveness under load. | + | === Storage === |
| - | Memory | + | * Type of Storage: Implement NVMe SSD storage for fast data retrieval and enhanced system performance. |
| + | * Amount of File Storage: Allocate approximately 4 TB of storage to accommodate the databases and additional file requirements. | ||
| + | * File Storage Technology: Consider using SAN (Storage Area Network) if high scalability and data redundancy are priorities. | ||
| + | * File System: Utilise ext4 or XFS file systems for optimal performance under Linux-based operations. | ||
| + | * Partitioning: | ||
| - | * | + | === System Configuration === |
| - | Amount of RAM: A minimum of 64 GB RAM is advisable | + | * Network Configuration: Optimise NGINX for high concurrency by adjusting worker processes and connections. |
| + | * Database Settings: For the relational database, configure connection pooling and indexing | ||
| + | * Performance Monitoring: Implement continuous monitoring | ||
| - | Storage | + | === Example Cloud Server Types === |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Type of Storage: Implement NVMe SSD storage for fast data retrieval and enhanced system performance. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Amount of File Storage: Allocate approximately 4 TB of storage to accommodate the databases and additional file requirements. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | File Storage Technology: Consider using SAN (Storage Area Network) if high scalability and data redundancy are priorities. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | File System: Utilise ext4 or XFS file systems for optimal performance under Linux-based operations. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Partitioning: | + | |
| - | + | ||
| - | System Configuration | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Network Configuration: | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Database Settings: For the relational database, configure connection pooling and indexing for efficient query handling. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Performance Monitoring: Implement continuous monitoring and scaling to adapt to workload variations. | + | |
| - | + | ||
| - | Example Cloud Server Types | + | |
| If the applications will be served in the cloud, these are examples of standard configurations offered by the leading cloud service providers. If the solutions are to be hosted on premise, equivalent hardware/ | If the applications will be served in the cloud, these are examples of standard configurations offered by the leading cloud service providers. If the solutions are to be hosted on premise, equivalent hardware/ | ||
| - | * | + | * Amazon Web Services (AWS): Consider c6i.2xlarge or r6i.2xlarge instances. They provide ideal balance and cost-effectiveness for handling applications of this scale. |
| - | + | * Google Cloud Platform (GCP): The n2-standard-32 configuration offers ample resources, combining high compute performance with significant memory. | |
| - | Amazon Web Services (AWS): Consider c6i.2xlarge or r6i.2xlarge instances. They provide ideal balance and cost-effectiveness for handling applications of this scale. | + | * Microsoft Azure: The D16s v5 size can accommodate demanding workloads with considerable CPU power and substantial memory. |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Google Cloud Platform (GCP): The n2-standard-32 configuration offers ample resources, combining high compute performance with significant memory. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Microsoft Azure: The D16s v5 size can accommodate demanding workloads with considerable CPU power and substantial memory. | + | |
| These configurations are recommended to ensure that the system is scalable, responsive, and reliable for both web and desktop GIS applications. | These configurations are recommended to ensure that the system is scalable, responsive, and reliable for both web and desktop GIS applications. | ||
| - | - | + | ===== 3. Network infrastructure |
| - | + | ||
| - | Network infrastructure | + | |
| Network infrastructure plays a crucial role in supporting the National Addressing System. When considering the specifications for such an environment, | Network infrastructure plays a crucial role in supporting the National Addressing System. When considering the specifications for such an environment, | ||
| - | Bandwidth requirements | + | === Bandwidth requirements |
| - | * | + | * For handling a variety of operations, including a database server, file server, and web application server with Docker containers, a robust bandwidth is essential. |
| + | * A dedicated internet connection with a minimum of 1 Gbps is advisable. This should accommodate data-intensive tasks, concurrent user access, and data retrieval from large relational tables effectively. | ||
| + | * Ensure scalable bandwidth options to accommodate future growth in user number or data volume without degradation in service quality. | ||
| - | For handling a variety of operations, including a database server, file server, and web application server with Docker containers, a robust bandwidth is essential. | + | === Uptime requirements === |
| - | * | + | * The system should aim for an uptime of at least 99.9%. This reflects high availability, |
| + | * Implement redundant network paths and failover strategies to maintain continuity. Using high-availability network infrastructure components such as clustered firewalls and redundant power supplies is also beneficial. | ||
| - | A dedicated internet connection with a minimum of 1 Gbps is advisable. This should accommodate data-intensive tasks, concurrent user access, and data retrieval from large relational tables effectively. | + | === Latency requirements === |
| - | * | + | * Low latency is critical for user interactions, |
| - | + | * Target a network latency of less than 100 milliseconds for end-to-end communication within Oman. | |
| - | Ensure scalable bandwidth options to accommodate future growth in user number or data volume without degradation in service quality. | + | * Utilise modern routing protocols and optimisation techniques to ensure that data packets traverse the most efficient pathways, reducing potential delays. |
| - | + | ||
| - | Uptime requirements | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | The system should aim for an uptime of at least 99.9%. This reflects high availability, | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Implement redundant network paths and failover strategies to maintain continuity. Using high-availability network infrastructure components such as clustered firewalls and redundant power supplies is also beneficial. | + | |
| - | + | ||
| - | Latency requirements | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Low latency is critical for user interactions, | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Target a network latency of less than 100 milliseconds for end-to-end communication within Oman. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Utilise modern routing protocols and optimisation techniques to ensure that data packets traverse the most efficient pathways, reducing potential delays. | + | |
| Always consider potential future growth and adjust server capacities as necessary to maintain system performance. | Always consider potential future growth and adjust server capacities as necessary to maintain system performance. | ||
| - | - | + | ===== 4. Client requirements |
| - | + | ||
| - | Client requirements | + | |
| The requirements only apply for users who are going to have roles in creating or maintaining addresses or who wish to establish integrations where they interact with the addressing API. | The requirements only apply for users who are going to have roles in creating or maintaining addresses or who wish to establish integrations where they interact with the addressing API. | ||
| Line 207: | Line 108: | ||
| When building a business-oriented React web application that relies heavily on web maps (both PBF vector tiles and PNG raster tiles), it’s important to establish baseline client-side requirements to ensure acceptable performance and user experience. Rendering vector tiles in the browser involves client-side decoding (often via WebGL) and styling, while raster tiles require frequent image loading. Below are starting-point recommendations for CPU, RAM, screen resolution, browsers, and network bandwidth on client machines. | When building a business-oriented React web application that relies heavily on web maps (both PBF vector tiles and PNG raster tiles), it’s important to establish baseline client-side requirements to ensure acceptable performance and user experience. Rendering vector tiles in the browser involves client-side decoding (often via WebGL) and styling, while raster tiles require frequent image loading. Below are starting-point recommendations for CPU, RAM, screen resolution, browsers, and network bandwidth on client machines. | ||
| - | CPU (Processor) | + | === CPU (Processor) |
| - | * | + | * Requirement: |
| + | * Rationale: Vector tile rendering is performed client-side via WebGL or Canvas, which benefits from both GPU acceleration and CPU tasks such as tile parsing and layout updates. Lower-end or very old CPUs may exhibit sluggish pan/zoom and style updates. Raster tile handling (downloading and compositing PNGs) also uses CPU for decoding image data and updating the DOM/canvas. Modern multi-core chips help when multiple browser tabs or other applications run concurrently. | ||
| - | Requirement: A modern multi-core CPU with good single-thread performance (e.g., recent Intel Core i5/i7 or AMD Ryzen 5/7 equivalents or better). | + | === Recommendations: === |
| - | | + | |
| + | - Recommended: | ||
| - | Rationale: Vector tile rendering is performed client-side via WebGL or Canvas, which benefits from both GPU acceleration and CPU tasks such as tile parsing and layout updates. Lower-end or very old CPUs may exhibit sluggish pan/zoom and style updates. Raster tile handling | + | === GPU / Graphics |
| - | * | + | * Requirement: |
| + | * Rationale: Libraries like ArcGIS, OpenLayers, Mapbox GL JS, MapLibre, and similar rely on WebGL to render vector tiles efficiently on the GPU. Without hardware acceleration, | ||
| + | * Recommendations: | ||
| - | Recommendations: | + | === RAM (Memory) === |
| - | | + | |
| + | * Rationale: Browsers cache tiles and resources in memory; having insufficient RAM can cause swapping, leading to lagging interactions, | ||
| + | * Recommendations: | ||
| + | * Minimum: 4 GB of RAM free for the browser process (e.g., on a system with at least 8 GB total RAM, leaving room for OS and background tasks). With only 4 GB total RAM on the machine, mapping performance will suffer if the user runs other demanding apps simultaneously. | ||
| + | * Recommended: | ||
| - | Minimum: Dual-core CPU at ~2.0–2.5 GHz (e.g., older Intel Core i3 or equivalent), | + | === Screen resolution and display === |
| - | - | + | |
| + | * Rationale: Business users may work on laptops, desktops, or even high-resolution monitors; the mapping interface should leverage available screen real estate but remain usable at lower resolutions. | ||
| + | * Recommendations: | ||
| + | * Minimum supported viewport: 1366 × 768 CSS pixels (common baseline for many business web apps) | ||
| + | * Recommended viewport: 1920 × 1080 (typical desktop/ | ||
| - | Recommended: | + | === Client browsers |
| - | GPU / Graphics | + | * Requirement: |
| + | * Rationale: Vector tile libraries rely on ES6+ JavaScript features, WebGL 1.0 (at least), and often Web Workers. Older browsers (e.g., IE11) may lack support or require polyfills, reducing performance and sometimes preventing core features. Frequent | ||
| + | * Recommendations: | ||
| + | * Supported Browsers: Latest two major versions of Google Chrome, Mozilla Firefox, Microsoft Edge (Chromium-based), | ||
| + | * Enterprise Constraints: | ||
| - | * | + | === Client network bandwidth and latency === |
| - | Requirement: | + | * Requirement: |
| + | * Rationale: Vector tiles (PBF) are typically well-compressed (often ~10–50 KB per tile depending on zoom level and data complexity), | ||
| + | * Recommendations: | ||
| + | * Minimum: Sustained download speeds | ||
| + | * Recommended: | ||
| + | * Offline or Low-bandwidth Strategies: If clients occasionally have poor connectivity, | ||
| - | * | + | Summary client requirements table (baseline vs. recommended) |
| - | Rationale: Libraries like ArcGIS, OpenLayers, Mapbox GL JS, MapLibre, and similar rely on WebGL to render vector tiles efficiently on the GPU. Without | + | ^ \\ Component^ \\ Minimum^ \\ Recommended| |
| + | ^ \\ CPU| \\ Dual-core ~2.0–2.5 GHz| \\ Quad-core ~3.0 GHz+| | ||
| + | ^ \\ GPU/WebGL| \\ Basic WebGL support| \\ Up-to-date GPU drivers with hardware | ||
| + | ^ \\ RAM| \\ ~4 GB available for browser| \\ 8–16 GB total system RAM| | ||
| + | ^ \\ Screen Resolution| \\ 1366 × 768 CSS pixels viewport| \\ 1920 × 1080 pixels viewport| | ||
| + | ^ \\ Browsers| \\ Modern: Chrome/ | ||
| + | ^ \\ Network Bandwidth| \\ ≥5 Mbps download, <100 ms latency| \\ ≥10 Mbps download, <50 ms latency| | ||
| - | * | + | ===== 5. Data governance and security measures |
| - | + | ||
| - | Recommendations: | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Use client machines whose browsers report “Hardware accelerated” for WebGL contexts. Encourage users to keep GPU drivers up to date. Test on representative hardware to ensure the map renders smoothly. | + | |
| - | + | ||
| - | RAM (Memory) | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Requirement: | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Rationale: Browsers cache tiles and resources in memory; having insufficient RAM can cause swapping, leading to lagging interactions, | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Recommendations: | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Minimum: 4 GB of RAM free for the browser process (e.g., on a system with at least 8 GB total RAM, leaving room for OS and background tasks). With only 4 GB total RAM on the machine, mapping performance will suffer if the user runs other demanding apps simultaneously. | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Recommended: | + | |
| - | + | ||
| - | Screen resolution and display | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Requirement: | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Rationale: Business users may work on laptops, desktops, or even high-resolution monitors; the mapping interface should leverage available screen real estate but remain usable at lower resolutions. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Recommendations: | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Minimum supported viewport: 1366 × 768 CSS pixels (common baseline for many business web apps) | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Recommended viewport: 1920 × 1080 (typical desktop/ | + | |
| - | + | ||
| - | Client browsers (Software) | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Requirement: | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Rationale: Vector tile libraries rely on ES6+ JavaScript features, WebGL 1.0 (at least), and often Web Workers. Older browsers (e.g., IE11) may lack support or require polyfills, reducing performance and sometimes preventing core features. Frequent browser updates include performance and security patches important for business applications. | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Recommendations: | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Supported Browsers: Latest two major versions of Google Chrome, Mozilla Firefox, Microsoft Edge (Chromium-based), | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Enterprise Constraints: | + | |
| - | + | ||
| - | Client network bandwidth and latency | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Requirement: | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Rationale: Vector tiles (PBF) are typically well-compressed (often ~10–50 KB per tile depending on zoom level and data complexity), | + | |
| - | + | ||
| - | * | + | |
| - | + | ||
| - | Recommendations: | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Minimum: Sustained download speeds of at least 5 Mbps, with latency under ~100 ms to the tile server endpoint. On slower links (e.g., 3G/4G intermittent, | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Recommended: | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Offline or Low-bandwidth Strategies: If clients occasionally have poor connectivity, | + | |
| - | + | ||
| - | Summary table (baseline vs. recommended) | + | |
| - | + | ||
| - | | \\ Component | + | |
| - | | \\ CPU \\ | \\ Dual-core ~2.0–2.5 GHz \\ | \\ Quad-core ~3.0 GHz+ \\ | | + | |
| - | | \\ GPU/ | + | |
| - | | \\ RAM \\ | \\ ~4 GB available for browser | + | |
| - | | \\ Screen Resolution | + | |
| - | | \\ Browsers | + | |
| - | | \\ Network Bandwidth | + | |
| - | + | ||
| - | - | + | |
| - | + | ||
| - | Data governance and security measures | + | |
| In developing the National Addressing System in Oman, maintaining data governance and implementing robust security measures are critical considerations. While it is important not to restrict access to addressing data, prioritising data integrity remains essential. Ensuring that data is accurate, reliable, and trustworthy requires specific strategies. | In developing the National Addressing System in Oman, maintaining data governance and implementing robust security measures are critical considerations. While it is important not to restrict access to addressing data, prioritising data integrity remains essential. Ensuring that data is accurate, reliable, and trustworthy requires specific strategies. | ||
| Line 361: | Line 177: | ||
| To maintain the integrity of addressing data, especially in distributed systems, ensuring data concurrency across any distributed copies or caches is crucial. Data concurrency will ensure that different versions of the data remain consistent with each other, preventing discrepancies and potential data conflicts. | To maintain the integrity of addressing data, especially in distributed systems, ensuring data concurrency across any distributed copies or caches is crucial. Data concurrency will ensure that different versions of the data remain consistent with each other, preventing discrepancies and potential data conflicts. | ||
| - | - | + | ===== 6. Service Level Requirements for Infrastructure |
| - | + | ||
| - | Service Level Requirements for Infrastructure | + | |
| To ensure continuous availability, | To ensure continuous availability, | ||
| - | Disaster Recovery | + | === Disaster Recovery |
| A comprehensive disaster recovery plan will be established to protect the NAS against events such as hardware failures, data corruption, natural disasters, and cyber incidents. The plan will include regular, automated backups of all critical data and system configurations, | A comprehensive disaster recovery plan will be established to protect the NAS against events such as hardware failures, data corruption, natural disasters, and cyber incidents. The plan will include regular, automated backups of all critical data and system configurations, | ||
| - | Recovery Time Objective (RTO) | + | === Recovery Time Objective (RTO) === |
| The Recovery Time Objective defines the maximum acceptable duration for restoring full service following a disruption. For the NAS, the RTO shall not exceed 4 hours for core database and API services, ensuring that essential address data and integrations remain available to users and stakeholders with minimal downtime. Routine tests of recovery procedures will be conducted to validate adherence to the RTO. | The Recovery Time Objective defines the maximum acceptable duration for restoring full service following a disruption. For the NAS, the RTO shall not exceed 4 hours for core database and API services, ensuring that essential address data and integrations remain available to users and stakeholders with minimal downtime. Routine tests of recovery procedures will be conducted to validate adherence to the RTO. | ||
| - | Recovery Point Objective (RPO) | + | === Recovery Point Objective (RPO) === |
| The Recovery Point Objective specifies the maximum age of data that may be lost in the event of a failure. For the NAS, the RPO is set at 15 minutes, meaning that backup and replication strategies must ensure that, at most, only the last 15 minutes of transactions could be lost under worst-case scenarios. Incremental backups and near-real-time data replication will be employed to achieve this goal. | The Recovery Point Objective specifies the maximum age of data that may be lost in the event of a failure. For the NAS, the RPO is set at 15 minutes, meaning that backup and replication strategies must ensure that, at most, only the last 15 minutes of transactions could be lost under worst-case scenarios. Incremental backups and near-real-time data replication will be employed to achieve this goal. | ||
| - | Optional Multi-Region Deployment (Middle East/ | + | === Optional Multi-Region Deployment (Middle East/ |
| For public facing applications that might be used by global audiences, it may be possible to further strengthen resilience by supporting geographic redundancy, such parts of the NAS infrastructure as is relevant may optionally be deployed in a multi-region configuration spanning the Middle East and Europe. | For public facing applications that might be used by global audiences, it may be possible to further strengthen resilience by supporting geographic redundancy, such parts of the NAS infrastructure as is relevant may optionally be deployed in a multi-region configuration spanning the Middle East and Europe. | ||
reference/system-architecture/infrastructure.1756245481.txt.gz · Last modified: by runarbe
