Interview Handbook by Sayed Elmahdy English

المحور 23 · الجودة والتشغيل

Cloud Fundamentals

IaaS و PaaS و SaaS، و Azure و AWS، و Serverless، و Storage، و Scaling، والتكلفة، و Infrastructure as Code.

16 سؤالJunior · 4Mid · 7Senior · 510 اختيارات

المفاهيم

هنفهم إيه؟ اختيار خدمة cloud يحدد مين يدير التشغيل، وإزاي تتعامل مع تعطل منطقة أو زيادة الطلب، وإيه الذي يظهر في الفاتورة. هتتعلم تقارن الخيارات حسب workload حقيقي، وتحدد أين تضع البيانات والصلاحيات والنسخ الاحتياطي بدل الاعتماد على أسماء المنتجات فقط.

قبل ما تبدأ: workload هو التطبيق والموارد التي يحتاجها، وregion منطقة تشغيل جغرافية، وavailability zone نطاق منفصل للأعطال داخلها، وقد يضم مركز بيانات أو أكتر. تعرف على احتياج التطبيق لقاعدة بيانات وشبكة وتخزين. الأمثلة تقارن Azure و وظيفياً؛ التفاصيل والسعر يتغيران حسب الخدمة والمنطقة.

المصطلحات اللي تحتها خط منقّط تقدر تضغط عليها لمعرفة معناها، وترجع تكمل من نفس مكانك.

#IaaS و PaaS و SaaS و FaaS: مين مسؤول عن إيه؟IaaS, PaaS, SaaS and FaaS: who owns what?

الـ cloud مش مجرد server بعيد؛ هو اختيار قد إيه من التشغيل هتديره بنفسك. كل ما الخدمة تدير أكتر، مسؤولية infrastructure بتقل، لكن مسؤوليتك عن الداتا والصلاحيات والكود والتكلفة لسه موجودة.

تأجير مطبخ كامل شبه ؛ مطبخ جاهز بصيانته شبه ؛ وجبة جاهزة شبه ؛ وتشغيل تجهيز طلب عند وصوله شبه . كل اختيار بيوفر شغل وبيحط حدود للتخصيص.

النموذجإنت بتديرأمثلة
IaaS و patching و runtime والتطبيقAzure ، و Amazon EC2
PaaSالتطبيق و config والداتا، داخل قيود المنصةAzure App Service، و Elastic Beanstalk
SaaSالمستخدمين والإعدادات وحوكمة الداتاMicrosoft 365
FaaSfunction code و triggers و permissionsAzure Functions، و

FaaS نوع من التشغيل managed و event-driven، مش ضمان إن كل request رخيصة. اختار أقل عبء تشغيل يحقق احتياجاتك؛ VM مفيدة لو محتاج OS control، لكنها بتضيف شغل مستمر.

#Regions و Availability zones و RecoveryRegions, availability zones and recovery

مثال خطوة بخطوة
  1. افترض إن الفريق يستهدف استعادة الخدمة خلال ساعة، وفقد بيانات لا يزيد عن عشر دقائق. الساعة ، والعشر دقائق ؛ هدفان مختلفان.
  2. Backup كل يوم فقط قد لا يحقق هدف فقد عشر دقائق من غير وسيلة استرجاع إضافية. ووجود نسخة احتياطية لا يثبت إن الاسترجاع سينتهي خلال ساعة.
  3. جرّب استعادة فعلية وقس الزمن وآخر بيانات متاحة. Availability zone تعالج نطاقًا من الأعطال داخل region، لكنها ليست بديلًا تلقائيًا لنسخة احتياطية أو خطة تعافي إقليمية.

نسختين على نفس الجهاز مش حماية من عطل مركز بيانات. region منطقة جغرافية للخدمات، و availability zones مواقع معزولة للأعطال جوه region، ببنية طاقة وتبريد وشبكة مستقلة حسب تصميم المزود. توافر zones والدعم في كل service و SKU محتاج مراجعة.

  1. حدد و RTO، الوقت المقبول لاسترجاع الخدمة، و RPO، مقدار الداتا المقبول فقدها زمنياً.
  2. وزع compute و data على zones لما الخدمة تدعم ده؛ مجرد اختيار region مش بيضمن zone redundancy.
  3. لو مطلوب تحمل عطل region كاملة، خطط routing و و failover عبر regions.
  4. جرّب الاسترجاع، بما فيه والأسرار والصلاحيات والـ backups، مش compute بس.

multi-region بيزود وتكلفة وتعقيد consistency. مش كل تطبيق محتاج active-active؛ backup قابل للاسترجاع أو warm standby ممكن يحقق الهدف بتعقيد أقل. replication مش backup: حذف غلط ممكن يتنسخ.

#خريطة Azure و AWS: تشابه وظيفة مش تطابقAzure and AWS mapping: similar roles, different contracts

الخريطة تساعدك تنقل الفكرة، مش الكود والإعدادات زي ما هي. راجع limits و pricing و delivery guarantees و identity model قبل الاختيار.

الاحتياجAzure
Virtual machinesVirtual MachinesEC2
Managed web hostingApp ServiceElastic Beanstalk
Managed containersContainer AppsECS with Fargate
KubernetesAKSEKS
FunctionsFunctions
Relational databaseAzure RDS
Cosmos DynamoDB
Object storageBlob StorageS3
Queues و pub/subService BusSQS + SNS
Event routingEvent GridEventBridge
SecretsKey VaultSecrets Manager
Identity و accessMicrosoft Entra ID
MonitoringApplication InsightsCloudWatch

RDS عيلة engines مش clone لـ Azure SQL؛ Cosmos DB و DynamoDB ليهم models و consistency مختلفة. Entra ID identity provider للمستخدمين والـ workloads؛ IAM مركزه التحكم في AWS resources، و IAM Identity Center للفيدرشن ودخول workforce. Application Insights جزء من Azure Monitor، و CloudWatch أوسع من APM وحده، وممكن tracing يحتاج خدمات أو تكاملات إضافية. دليل المقارنة الرسمي.

#Managed identity بدل نسخ المفاتيحManaged identity instead of copied keys

connection key في config محتاج تخزين وتدوير، وتسريبه بيفتح resource لحد ما تلغيه. Azure managed identity بتدي التطبيق هوية يصدر بيها قصيرة العمر لخدمات بتدعم Entra authentication؛ وفي استخدم roles و temporary credentials للـ workload. المثال محتاج Azure.Identity و Azure.Storage.Blobs، و blob موجود، وهوية التطبيق ليها Storage Blob Data Reader على scope مناسب.

using Azure.Identity;
using Azure.Storage.Blobs;

var account = Environment.GetEnvironmentVariable("STORAGE_ACCOUNT")
    ?? throw new InvalidOperationException("STORAGE_ACCOUNT is required");
var credential = new DefaultAzureCredential(); // (1)
var service = new BlobServiceClient(
    new Uri($"https://{account}.blob.core.windows.net"), credential); // (2)
var blob = service.GetBlobContainerClient("invoices").GetBlobClient("invoice.txt");
await blob.DownloadToAsync("invoice.txt"); // (3)
🧾 شرح الكود
  1. (1) credential chain بتختار هوية متاحة، زي developer login محلياً و managed identity في Azure. في production اضبط chain أو استخدم credential صريحة علشان الهوية تبقى متوقعة.
  2. (2) endpoint مش secret؛ الـ token بيتجاب من الهوية.
  3. (3) القراءة محتاجة data-plane role، مش مجرد permission لإدارة الـ account. فشل auth أو الشبكة بيتعالج كفشل واضح، مش fallback لمفتاح مخفي.

الهوية مش بتدي permissions تلقائياً، ومش بتفتح firewall. افصل identities حسب workload وطبق least privilege. لو خدمة ماتدعمش الهوية، خزّن مفتاحها في Key Vault أو Secrets Manager ودوّره. managed identity في Container Apps.

#Serverless: scale-to-zero مش من غير serversServerless: scale-to-zero still uses servers

serverless بينقل إدارة servers للمنصة. Functions مناسبة لأحداث زي invoice upload أو queue message. cold start هو وقت تجهيز instance جديدة، بما فيه runtime و dependencies وتهيئة التطبيق؛ مش كل invocation بيبقى cold، ومدة البدء بتعتمد على plan و runtime والتطبيق.

الميزةالمقابل
توسع تلقائي وربط بالأحداثحدود للمدة والتزامن والـ runtime حسب الخدمة
استهلاك قليل وقت الخمول في plans مناسبةcold starts وتكلفة أعلى محتملة مع حمل ثابت
تشغيل أقل للـ infrastructuredebugging موزع وارتباط أكبر بالمنصة

اعمل handlers لأن triggers كتير ممكن تعيد التسليم. قلل initialization وخلي connections reusable، لكن ماتخزنش حالة business المهمة في memory. لو صارمة، قيّم minimum instances أو provisioned capacity حسب الخدمة؛ ده يقلل فوايد scale-to-zero. شغل طويل أو مستمر ممكن يناسب container job أو service أحسن.

#Scaling: زوّد السعة من غير ما تكسر اللي وراكScaling without overwhelming downstream systems

vertical scaling بيكبر instance، و horizontal scaling بيزود عددها. الأول محدود بحجم machine وممكن يحتاج restart؛ التاني محتاج app تقبل توزيع الطلبات. session و uploaded files و job state في memory بتمنع scale-out موثوق.

  1. حدد bottleneck: ولا database waits ولا queue backlog؟
  2. اختار metric مناسب: CPU للحمل الحسابي، أو queue age و backlog للشغل الخلفي، مع كمؤشر نتيجة.
  3. حدد minimum و maximum و cooldown أو stabilization علشان تمنع oscillation.
  4. راجع مجموع connection pools والتزامن؛ 20 replicas ممكن تغرق database واحدة.
  5. عند scale-in، امنع استقبال شغل جديد واعمل drain وحافظ على إمكانية retry.

autoscale رد فعل مش سحر؛ boot time وقياس metrics بياخدوا وقت. sudden bursts محتاجة headroom أو queue و . sticky sessions ممكن تساعد مؤقتاً، لكنها مش بديل لتصميم session shared.

#Storage tiers و Lifecycle و BackupStorage tiers, lifecycle and backup

صور المنتجات والـ PDFs مش لازم يتحطوا في relational rows. object storage بيحفظ blobs بمفاتيح و metadata؛ block storage مناسب لأقراص ، و file storage بيقدم shared filesystem. اختار حسب access pattern مش الحجم بس.

الفئةالاستخدامانتبه لـ
Hot أو frequent accessصور ومنتجات نشطةسعر التخزين والعمليات ونقل الداتا
Cool أو infrequent accessفواتير قليلة القراءةretrieval fees وحد أدنى للاحتفاظ حسب الخدمة
Archiveاحتفاظ طويل نادر الاسترجاعقد يحتاج restore أو rehydration ووقت انتظار

Azure و عندهم tiers وأسماء وشروط مختلفة؛ مش كل archival tier offline بنفس الشكل. عرّف lifecycle policy بناء على آخر وصول أوعمر الداتا المدعوم، وراجع قانون الاحتفاظ و object versioning و soft delete. تحمي من عطل infrastructure، لكن versioned backup و restore مجرب مهمين لحذف أوتلف منطقي.

ماتفتحش invoice bucket أو container للعامة. signed URLs زي SAS و presigned URLs صلاحية مؤقتة؛ مدتها ونطاقها وتسريبها لازم يتراجعوا.

#VNet و VPC و Private endpointsVNets, VPCs and private endpoints

وجود الخدمة في cloud مش معناه إنها private. VNet في Azure و VPC في بيوفروا مساحة شبكة منطقية، و subnets بتقسمها. routes بتحدد الطريق، و security groups أو NSGs بتحدد السماح، و بيحدد العنوان؛ كل واحدة ممكن تكون سبب timeout.

  1. حط التطبيق والداتا في topology واضحة، بمدخل public مقصود بس.
  2. استخدم private endpoint أوآلية private access المناسبة للخدمة علشان data path يبقى خاص.
  3. اضبط private DNS علشان hostname المعتاد يرجع العنوان الداخلي من شبكة التطبيق.
  4. اقفل public access لما يبقى مناسب، واحتفظ بطريقة إدارة ودعم معروفة.
  5. اختبر الهوية والصلاحيات منفصلين عن الشبكة.

private endpoint مش encryption ولا authorization؛ و identity لسه مطلوبين. للخروج مش public inbound route للتطبيق. خليك واعي بتكلفة NAT و data transfer وبـ overlapping address ranges عند ربط الشبكات. افحص resolution و route و port قبل افتراض إن المشكلة credentials.

#التكلفة و Infrastructure as CodeCost awareness and Infrastructure as Code

تكلفة cloud مش compute بس: database و storage operations و egress و و logs و backups و idle resources ممكن يفرقوا. حط tags للـ owner والـ environment، و budgets وتنبيهات؛ budget alert مش spending cap مضمون. قارن تكلفة request أو order ناجح، مش فاتورة server واحدة.

بيخلي infrastructure قابلة للمراجعة والتكرار. Bicep لـ Azure، و Terraform declarative بمزودين كتير و state، و Pulumi بيعبر بلغات عامة مع state برضه. المثال Bicep ملف كامل لـ storage account داخل resource group موجودة، محتاج Azure و login وصلاحية deploy. اسم storage مشتق علشان يبقى lowercase وبطول مناسب.

param location string = resourceGroup().location

resource invoices 'Microsoft.Storage/storageAccounts@2023-05-01' = {
  name: 'st${uniqueString(resourceGroup().id)}' // (1)
  location: location
  sku: { name: 'Standard_LRS' }
  kind: 'StorageV2'
  properties: {
    supportsHttpsTrafficOnly: true
    minimumTlsVersion: 'TLS1_2'
    allowBlobPublicAccess: false // (2)
    allowSharedKeyAccess: false
  }
}
output storageName string = invoices.name
🧾 شرح الكود
  1. (1) الاسم ثابت لنفس resource group؛ الـ SKU هنا local redundancy للتوضيح، مش zone redundancy.
  2. (2) منع anonymous blobs و shared keys؛ لسه محتاج data roles و network policy. الكود مش بيعمل private endpoint تلقائياً.

قبل apply اعمل plan أو what-if، واحمي state لأنه ممكن يحتوي أسرار، وراجع drift والتغييرات المدمرة. ماتستخدمش cloud console كمسار دائم لتعديل production من غير تسجيله في IaC. مرجع storage resource.

#12-factor app و نشر ASP.NET CoreThe 12-factor app and ASP.NET Core deployment

التطبيق القابل للنقل محتاج أكتر من container. الـ 12 factors: codebase واحدة بتتبّعها Git؛ dependencies صريحة؛ config خارج الكود؛ backing services كresources؛ فصل build و release و run؛ processes من غير state دائمة؛ port binding؛ concurrency بالـ processes؛ disposability ببدء وإيقاف منظم؛ تقارب dev و production؛ logs كevent streams؛ و admin tasks كعمليات مستقلة. دي إرشادات؛ config حساسة محتاجة secret store مش commit.

المسارخطوات النشرانتبه لـ
Azure App Serviceاختار runtime مدعوم أو container، وارفع artifact، واضبط config و identity و healthplan و slots ودعم الشبكة حسب tier
Azure Container Appsregistry image، و environment، و revision، و target port، و identity، و scale rulesminimum replicas و ingress و traffic split
Elastic Beanstalkاختار platform مناسبة، وارفع publish bundle، واضبط environment و healthruntime support وإدارة platform updates
AWS ECS FargateECR image، و task definition، و task role، و service، و load balancernetwork routes و security groups و port و logs

لكل مسار: شغّل migrations كخطوة منفصلة، وراقب startup و requests، وجرب smoke test و rollback. لو platform runtime مش مناسب لـ .NET 10، container مناسبة أو self-contained publish قد يكونوا اختيارات حسب المنصة؛ راجع الدعم الحالي. ماتعتمدش على local filesystem للـ uploads أو sessions. نشر .NET على Elastic Beanstalk.

أسئلة الانترفيو

راجع فهمك

ليه الاختيار ده مناسب؟ إمتى ممكن ماينفعش؟ وإيه اللي هيتغير لو الحمل زاد أو ظهر فشل؟

23.1How do IaaS, PaaS, SaaS and FaaS differ?Junior

الفرق في مسؤولية التشغيل: تدير ، و تدير التطبيق، و تستخدم منتج، و تشغل handlers بالأحداث.

الإجابة النموذجية (English)

I compare them by responsibility. With I manage the operating system and application on rented infrastructure. manages more of the hosting platform while I own code, configuration and data. provides a finished product that I configure and govern. runs event-triggered functions within platform limits. I choose the lowest operational burden that meets the requirements, remembering that none of these models removes responsibility for access control or data protection.

23.2What is the difference between a region and an availability zone?Junior

region منطقة خدمات جغرافية؛ zones مواقع معزولة للأعطال داخلها. الخدمة لازم تدعم وتتفعل لها zone redundancy.

الإجابة النموذجية (English)

I use a region as a geographic deployment area and availability zones as fault-isolated locations within that region. Distributing instances across zones can improve resilience to a datacenter-level failure, but only if the selected service and configuration support it. It does not protect against every regional failure. I also check where the database, secrets and routing live, because spreading application replicas alone does not make the whole system highly available.

23.3How would you choose between App Service, Container Apps and Kubernetes?Mid

App Service لاستضافة ويب managed، و Container Apps لـ containers مع revisions و scale rules، و Kubernetes لو محتاج تحكم وقدراته فعلاً.

الإجابة النموذجية (English)

I start with the workload and operational requirements. App Service suits managed web hosting with limited infrastructure work. Container Apps suits containerized services and jobs that benefit from revisions and event-driven scaling. Kubernetes provides more orchestration control and ecosystem flexibility but brings substantial operational responsibility. I evaluate networking, scaling, compliance and deployment needs, then choose the simplest platform that satisfies them rather than adopting Kubernetes just because the application already has a Dockerfile.

23.4What is the AWS equivalent of Azure Blob Storage?Junior

S3 أقرب مثال وظيفي لـ object storage، لكن tiers و policies و SDKs مش متطابقة.

الإجابة النموذجية (English)

I would map Azure Blob Storage to Amazon S3 at the capability level: both provide object storage suitable for images, documents and other blobs. I would not assume identical , access policies, lifecycle rules or storage classes. For a migration I review naming, metadata, signed access, retention and transfer cost. I also distinguish object storage from a shared filesystem because applications cannot always replace one with the other without changing their access pattern.

23.5Why prefer managed identity or workload roles to stored keys?Mid

مؤقتة بدل سر طويل العمر في config، مع RBAC محدود. الهوية مش إذن تلقائي ولا network access.

الإجابة النموذجية (English)

I prefer workload identity because the application can obtain short-lived credentials without carrying a long-lived key in configuration. Azure managed identities and workload roles support that pattern. I grant only the permissions the workload needs and separate identities between services and environments. This reduces secret distribution and rotation work, but does not remove authorization or network controls. I still verify the selected identity, data-plane permissions and audit trail when troubleshooting access failures.

23.6What causes a serverless cold start?Mid

تجهيز instance جديدة بالـ runtime والـ dependencies والـ startup code. تقليل التهيئة أو minimum capacity له تكلفة ومقابل.

الإجابة النموذجية (English)

I call it a cold start when the platform must initialize a new execution environment before handling work. That can include runtime startup, loading dependencies and application initialization. The impact depends on the service, plan and application, so I measure it rather than quoting a universal delay. I reduce startup work and consider minimum instances or provisioned capacity where available, while recognizing that those options trade some idle-cost savings for more predictable .

23.7When would serverless be a poor fit?Mid

ثابت أومدة طويلة أو شديدة الحساسية ممكن يناسبها service أو job. راجع limits والتكلفة بدل حكم مطلق.

الإجابة النموذجية (English)

I would question serverless for sustained heavy work, execution exceeding service limits, or a workload requiring very predictable low without paying for warm capacity. It can also complicate tightly coupled workflows and local debugging. I compare a realistic cost and latency model with a managed container service or job. Serverless can still be appropriate, but I would not choose it solely because the workload is small or because the billing model is consumption based.

23.8What is vertical versus horizontal scaling?Junior

vertical تكبير instance، و horizontal زيادة replicas. scale-out محتاج state خارج الـ process وتحمّل dependencies.

الإجابة النموذجية (English)

I scale vertically by giving one instance more resources and horizontally by adding instances. Vertical scaling is simpler for some workloads but has size limits and may involve a restart. Horizontal scaling supports distribution but requires safe shared-state handling and routing. I move durable state outside process memory and check downstream capacity. Adding application replicas does not automatically increase database and can actually overload it through more connections and concurrent operations.

23.9How would you design autoscaling rules?Senior

metric حسب bottleneck، وحدود min/max، و stabilization، وقياس startup time وقدرة database، واختبار scale-in.

الإجابة النموذجية (English)

I choose metrics that reflect the workload's bottleneck, such as for computation or queue age and backlog for workers. I define minimum and maximum capacity, stabilization rules and enough headroom for startup delay. I verify that database pools and downstream concurrency stay within limits as replicas grow. I also test scale-in, including draining and retry safety, because a rule that scales out well can still lose work when instances are removed.

23.10How do you choose an object-storage tier?Mid

حسب معدل القراءة ومدة الاحتفاظ ووقت الاسترجاع المقبول، مع operation و retrieval و egress fees.

الإجابة النموذجية (English)

I choose a tier from access frequency, retention period and acceptable retrieval delay. Hot storage suits active objects, infrequent-access tiers can suit rarely read records, and archival tiers may suit long retention with delayed retrieval. I include operations, retrieval and transfer charges rather than comparing storage price alone. I also check minimum retention and lifecycle rules, because moving short-lived or frequently read data into a colder tier can increase the total cost.

23.11Does a private endpoint make a service secure automatically?Senior

لأ؛ private network path محتاج و routes مظبوطة، ولسه وهوية وصلاحيات وقفل public access حسب التصميم.

الإجابة النموذجية (English)

I treat a private endpoint as one network-access control, not complete security. I still need correct , routing, , identity and authorization, and I review whether the public endpoint remains enabled. A workload with network reachability can still be unauthorized, while a valid identity can still be blocked by network policy. I test those dimensions separately and retain a controlled administration path so private networking does not make recovery depend on undocumented access.

23.12What are RTO and RPO?Senior

زمن استرجاع الخدمة المقبول، و مقدار الداتا المقبول فقده زمنياً. الاتنين بيتحولوا لقرار architecture واختبار recovery.

الإجابة النموذجية (English)

I use to describe the target time to restore service after a disruption and to describe the acceptable data-loss window. They guide backup frequency, , standby capacity and recovery automation. I agree them with the business rather than deriving them from whatever infrastructure already exists. I then test recovery end to end, including permissions and routing, because a backup schedule or replication dashboard alone does not prove either objective can be met.

23.13What does Infrastructure as Code solve?Mid

review وتكرار وتاريخ للتغييرات، مع plan و state آمنة ومراقبة drift. Bicep و Terraform و Pulumi اختيارات مختلفة.

الإجابة النموذجية (English)

I use Infrastructure as Code to make infrastructure changes reviewable, repeatable and traceable alongside application changes. Bicep is Azure focused, while Terraform and Pulumi support broader provider ecosystems with state management. I preview changes, protect state and credentials, and investigate drift from manual edits. reduces undocumented setup, but it can also repeat a mistake very efficiently, so destructive plans and permissions deserve the same careful review as production code.

23.14How do you control cloud costs without hurting reliability?Senior

قيس cost per outcome، وشوف idle resources و egress و logs، وحافظ على حد السعة اللازم للـ . التنبيه مش cap.

الإجابة النموذجية (English)

I establish ownership tags, budgets and a cost-per-business-outcome baseline, then inspect idle resources, oversized capacity, transfer charges and telemetry retention. I right-size using measurements and keep enough headroom to meet the reliability objective. I also review autoscale maximums and database connection growth. Budget alerts help detect surprises but are not guaranteed spending caps. I verify the impact of each change rather than cutting replicas or backups simply because they appear expensive.

23.15How would you deploy an ASP.NET Core service to AWS?Mid

Elastic Beanstalk للـ publish bundle على platform مدعومة، أو ECS Fargate لصورة container مع ECR و task role و service و load balancer.

الإجابة النموذجية (English)

I would choose a suitable managed path, such as Elastic Beanstalk for a supported publish bundle or ECS with Fargate for a container image. For Fargate I publish to ECR, define task resources and a task role, configure networking and a service behind a load balancer, and verify health and logs. I keep migrations separate, use managed secrets and test rollback. I confirm current runtime support before selecting the platform version.

23.16Which 12-factor ideas matter most when scaling a .NET API?Senior

stateless processes، و config خارج الكود، و logs كstream، و graceful shutdown، وفصل build و run. باقي العوامل بتكمل الصورة.

الإجابة النموذجية (English)

I pay particular attention to stateless processes, explicit configuration, attached backing services and graceful disposal. Replicas should not depend on local uploads or in-memory sessions, and logs should flow to collection rather than disappear with an instance. Separating build, release and run helps promote the same artifact with different configuration. These principles improve portability, but I still evaluate platform-specific identity and storage behavior rather than treating the checklist as a complete cloud architecture.

اختبر نفسك

إجابات الاختبار وعلامات إكمال المحاور بتتحفظ على المتصفح ده، ومش بتتنقل لأجهزة تانية.

النتيجة: 0 / 0

Who normally patches the guest OS in IaaS?

بيسيب إدارة guest للعميل.

What does spreading replicas across zones primarily address?

عطل region كاملة محتاج تصميم recovery إضافي.

Closest AWS capability to Azure Blob Storage?

الاتنين object storage، بس التفاصيل مش متطابقة.

A managed identity exists but Blob reads return 403. What should you inspect?

وجود هوية مش معناه إن عندها data-plane role.

Why can scaling an API from 2 to 20 replicas cause database failures?

سعة dependencies لازم تتراجع مع زيادة replicas.

Which recovery objective describes the acceptable data-loss window?

للداتا، و لزمن رجوع الخدمة.

What is missing from a private endpoint alone?

الشبكة جزء من الحماية، ولسه identity و و permissions.

What should happen before applying a production IaC change?

preview بتوضح replacements والتغييرات المدمرة قبل التنفيذ.

An archive tier is best evaluated using which requirements?

سعر التخزين لوحده مش التكلفة كلها.

Which statement about budget alerts is safest?

لازم تفهم آلية التنبيه وأي automation منفصلة.