{"id":"l-aws-1-2","courseId":"aws-cloud-foundations","lang":"ar","kind":"lesson","summary":"اختر Region من AWS لحمل عمل معيّن، واشرح كيف تحميه مناطق التوافر من تعطّل مركز بيانات، وحدّد أين تقع مواقع الحافة في الصورة.","html":"<p>يعيش القائمون على Lantern في لشبونة، ومعظم مستخدميه في البرتغال. عندما ينشئون أول مورد لهم، يطرح عليهم الـ console الخاص بـ AWS سؤالًا لم يضطروا إلى الإجابة عنه من قبل: <strong>أيّ Region؟</strong> كان الخادم القديم قابعًا في مركز بيانات ما، ولم يفكّر فيه أحد. أما على AWS، فمكان تشغيل مواردك قرار تصميمي، يؤثّر في زمن الاستجابة والقانون والصمود وفاتورتك.</p>\n<h2 id=\"sec-1\" tabindex=\"-1\">الـ Regions: أين تعيش بياناتك</h2>\n<p>الـ <strong>Region</strong> منطقة جغرافية منفصلة لها نسختها الخاصة من معظم خدمات AWS. ولكل منها رمز ستكتبه كثيرًا: <code dir=\"ltr\">eu-west-1</code> هي أيرلندا، و<code dir=\"ltr\">eu-central-1</code> هي فرانكفورت، و<code dir=\"ltr\">eu-south-2</code> هي إسبانيا، و<code dir=\"ltr\">us-east-1</code> هي شمال فيرجينيا. الـ Regions معزولة بعضها عن بعض. الـ bucket الذي تنشئه في <code dir=\"ltr\">eu-west-1</code> يخزّن بياناته هناك، ولا تنسخها AWS إلى Region أخرى ما لم تضبط النسخ المتماثل (replication).</p>\n<p>يمكنك سرد الـ Regions التي يستطيع حسابك استخدامها من الطرفية (ستثبّت الـ CLI في الدرس الرابع):</p>\n<div class=\"code-block\" dir=\"ltr\" data-lang=\"bash\" data-index=\"0\"><div class=\"code-head\"><span class=\"code-title\">Terminal</span><span class=\"code-actions\"><button type=\"button\" class=\"code-btn\" data-action=\"copy\" aria-label=\"نسخ الكود\"><svg class=\"icon \" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"/><path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"/></svg><span>نسخ</span></button></span></div><pre class=\"shiki\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#953800;--shiki-dark:#FFA657\">aws</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> ec2</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> describe-regions</span><span style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --query</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> \"Regions[].RegionName\"</span><span style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --output</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> text</span></span></code></pre></div>\n<p>لا تُطلَق كل خدمة أو ميزة في كل Region في الوقت نفسه، وتختلف الأسعار من Region إلى أخرى. وبعض الـ Regions الأحدث اختيارية (opt-in)، فلا تظهر حتى تفعّلها.</p>\n<h3 id=\"sec-2\" tabindex=\"-1\">كيف تختار</h3>\n<p>اتّبع هذا الترتيب، وتوقّف عند أول قاعدة تحسم الأمر:</p>\n<ol>\n<li><strong>قواعد حماية البيانات.</strong> إذا نصّ قانون أو عقد على بقاء البيانات الشخصية داخل الاتحاد الأوروبي، تُستبعد كل Region خارجه.</li>\n<li><strong>زمن الاستجابة للمستخدمين.</strong> الأقرب أسرع. بالنسبة إلى Lantern، المرشّحة هي الـ Regions الأيبيرية وتلك الواقعة في غرب أوروبا.</li>\n<li><strong>توافر الخدمات.</strong> تأكّد من أن كل خدمة تخطّط لاستخدامها موجودة في تلك الـ Region.</li>\n<li><strong>السعر.</strong> قد تكلّف الـ instance نفسها أكثر بشكل ملحوظ في Region منها في أخرى.</li>\n</ol>\n<p>ينتهي Lantern في Region أوروبية قريبة من البرتغال. الاختيار الدقيق أقل أهمية من أن تتّخذه عن قصد ثم تلتزم به باستمرار.</p>\n<h2 id=\"sec-3\" tabindex=\"-1\">مناطق التوافر: النجاة من يوم سيئ</h2>\n<p>داخل كل Region توجد <strong>مناطق توافر (Availability Zones)</strong>. منطقة التوافر (وتُختصر AZ) مركز بيانات مستقل أو أكثر، بكهرباء وشبكات وتبريد احتياطية، ومنفصلة فعليًا عن مناطق التوافر الأخرى في الـ Region، لكنها متصلة بها عبر ألياف ضوئية خاصة سريعة ومنخفضة التأخير. معظم الـ Regions فيها ثلاث مناطق توافر أو أكثر.</p>\n<p>الغاية من مناطق التوافر هي التعطّل المستقل. فالفيضان أو الحريق أو انقطاع الكهرباء في منطقة لا يجب أن يمسّ غيرها. لذا فالقاعدة لأي شيء مهم هي: <strong>شغّله في منطقتي توافر على الأقل.</strong></p>\n<figure class=\"diagram\"><svg class=\"diagram-svg\" focusable=\"false\" viewBox=\"0 0 680 300\" role=\"img\" aria-labelledby=\"l-aws-1-2-t1\"><defs><marker id=\"arrow-l-aws-1-2-1\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\"><path d=\"M0 0 L10 5 L0 10 z\" class=\"d-arrowhead\"/></marker></defs>\n  <title id=\"l-aws-1-2-t1\">صندوق Region واحد يضم ثلاثة صناديق لمناطق التوافر، في كلٍّ منها مراكز بيانات، تربطها وصلات منخفضة التأخير. ودوائر منفصلة لمواقع الحافة قرب المستخدمين متصلة بالـ Region.</title>\n  <rect class=\"d-box\" x=\"20\" y=\"20\" width=\"440\" height=\"260\" rx=\"14\"/>\n  <text class=\"d-label-strong\" x=\"240\" y=\"48\" text-anchor=\"middle\">Region eu-west-1</text>\n  <rect class=\"d-box-primary\" x=\"40\" y=\"70\" width=\"120\" height=\"150\" rx=\"10\"/>\n  <text class=\"d-label\" x=\"100\" y=\"96\" text-anchor=\"middle\">AZ a</text>\n  <rect class=\"d-box\" x=\"60\" y=\"112\" width=\"80\" height=\"34\" rx=\"6\"/>\n  <text class=\"d-label-muted\" x=\"100\" y=\"134\" text-anchor=\"middle\">مركز بيانات</text>\n  <rect class=\"d-box\" x=\"60\" y=\"158\" width=\"80\" height=\"34\" rx=\"6\"/>\n  <text class=\"d-label-muted\" x=\"100\" y=\"180\" text-anchor=\"middle\">مركز بيانات</text>\n  <rect class=\"d-box-primary\" x=\"180\" y=\"70\" width=\"120\" height=\"150\" rx=\"10\"/>\n  <text class=\"d-label\" x=\"240\" y=\"96\" text-anchor=\"middle\">AZ b</text>\n  <rect class=\"d-box\" x=\"200\" y=\"112\" width=\"80\" height=\"34\" rx=\"6\"/>\n  <text class=\"d-label-muted\" x=\"240\" y=\"134\" text-anchor=\"middle\">مركز بيانات</text>\n  <rect class=\"d-box-primary\" x=\"320\" y=\"70\" width=\"120\" height=\"150\" rx=\"10\"/>\n  <text class=\"d-label\" x=\"380\" y=\"96\" text-anchor=\"middle\">AZ c</text>\n  <rect class=\"d-box\" x=\"340\" y=\"112\" width=\"80\" height=\"34\" rx=\"6\"/>\n  <text class=\"d-label-muted\" x=\"380\" y=\"134\" text-anchor=\"middle\">مركز بيانات</text>\n  <rect class=\"d-box\" x=\"340\" y=\"158\" width=\"80\" height=\"34\" rx=\"6\"/>\n  <text class=\"d-label-muted\" x=\"380\" y=\"180\" text-anchor=\"middle\">مركز بيانات</text>\n  <path class=\"d-line d-dashed\" d=\"M160 245 L320 245\"/>\n  <text class=\"d-label-muted\" x=\"240\" y=\"266\" text-anchor=\"middle\">وصلات خاصة منخفضة التأخير</text>\n  <circle class=\"d-box-accent\" cx=\"560\" cy=\"70\" r=\"34\"/>\n  <text class=\"d-label\" x=\"560\" y=\"75\" text-anchor=\"middle\">حافة</text>\n  <circle class=\"d-box-accent\" cx=\"610\" cy=\"160\" r=\"34\"/>\n  <text class=\"d-label\" x=\"610\" y=\"165\" text-anchor=\"middle\">حافة</text>\n  <circle class=\"d-box-accent\" cx=\"560\" cy=\"245\" r=\"34\"/>\n  <text class=\"d-label\" x=\"560\" y=\"250\" text-anchor=\"middle\">حافة</text>\n  <path class=\"d-arrow\" d=\"M462 120 L522 82\" marker-end=\"url(#arrow-l-aws-1-2-1)\"/>\n  <path class=\"d-arrow\" d=\"M462 150 L572 158\" marker-end=\"url(#arrow-l-aws-1-2-1)\"/>\n  <path class=\"d-arrow\" d=\"M462 190 L524 236\" marker-end=\"url(#arrow-l-aws-1-2-1)\"/>\n</svg><figcaption>الـ Region تضم مناطق توافر معزولة؛ ومواقع الحافة تقع خارجها قرب المستخدمين</figcaption></figure>\n<p>لمناطق التوافر نوعان من التسميات. <strong>الاسم</strong>، مثل <code dir=\"ltr\">eu-west-1a</code>، وهو ما تختاره في الـ console. و<strong>معرّف منطقة التوافر (AZ ID)</strong>، مثل <code dir=\"ltr\">euw1-az1</code>، ويشير دائمًا إلى المنطقة الفعلية نفسها في كل حساب. في بعض الـ Regions الأقدم، تُربط الأسماء بشكل مستقل في الحسابات التي أُنشئت قبل نوفمبر 2025، فقد تكون <code dir=\"ltr\">eu-west-1a</code> لديك هي <code dir=\"ltr\">eu-west-1b</code> لدى فريق آخر. عندما تنسّق مع حساب آخر، قارن معرّفات مناطق التوافر:</p>\n<div class=\"code-block\" dir=\"ltr\" data-lang=\"bash\" data-index=\"1\"><div class=\"code-head\"><span class=\"code-title\">Terminal</span><span class=\"code-actions\"><button type=\"button\" class=\"code-btn\" data-action=\"copy\" aria-label=\"نسخ الكود\"><svg class=\"icon \" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"/><path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"/></svg><span>نسخ</span></button></span></div><pre class=\"shiki\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#953800;--shiki-dark:#FFA657\">aws</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> ec2</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> describe-availability-zones</span><span style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --region</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> eu-west-1</span><span style=\"color:#CF222E;--shiki-dark:#FF7B72\"> \\</span></span>\n<span class=\"line\"><span style=\"color:#0550AE;--shiki-dark:#79C0FF\">  --query</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> \"AvailabilityZones[].{Name:ZoneName,Id:ZoneId}\"</span><span style=\"color:#0550AE;--shiki-dark:#79C0FF\"> --output</span><span style=\"color:#0A3069;--shiki-dark:#A5D6FF\"> table</span></span></code></pre></div>\n<p>يخبرك هذا أيّ الخدمات مرتبطة بماذا. الخدمات <strong>العامّة (global)</strong>، مثل IAM وCloudFront، تُضبط مرة واحدة للحساب كله. والخدمات <strong>الإقليمية (regional)</strong>، مثل الـ buckets في S3 ودوال Lambda وجداول DynamoDB، تعيش في Region واحدة وتوزّعها AWS على مناطق التوافر نيابة عنك. أما الموارد <strong>المرتبطة بمنطقة توافر (zonal)</strong>، مثل instance في EC2 أو volume في EBS، فتعيش في منطقة توافر واحدة بالضبط، والصمود عبر عدة مناطق توافر مسؤوليتك أنت.</p>\n<h2 id=\"sec-4\" tabindex=\"-1\">مواقع الحافة: أقرب من أي Region</h2>\n<p>الـ Regions قليلة. أما <strong>مواقع الحافة (edge locations)</strong> فكثيرة: مواقع أصغر في مئات المدن تشغّل Amazon CloudFront (شبكة توصيل المحتوى) وAmazon Route 53 (نظام DNS). عندما يحمّل زائر في بورتو ملصقًا من Lantern، يستطيع CloudFront أن يقدّم نسخة مخزّنة مؤقتًا من موقع حافة قريب بدلًا من جلبها من الـ bucket في كل مرة. بهذا سينجو Lantern من أمسيته الشهيرة القادمة في القسم الرابع.</p>\n<aside class=\"callout callout-mistake\" role=\"note\"><p class=\"callout-title\"><svg class=\"icon \" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3\"/><path d=\"M12 9v4\"/><path d=\"M12 17h.01\"/></svg><span><span class=\"callout-kind\">خطأ شائع</span><span class=\"callout-sep\" aria-hidden=\"true\"> · </span>البناء في أيّ Region فتحها الـ console</span></p>\n<p>يتذكّر الـ console آخر Region استخدمتها، وفي الحساب الجديد تكون غالبًا <code dir=\"ltr\">us-east-1</code>. ينشئ الناس قاعدة بيانات هناك، ثم “يفقدونها” بعد تبديل الـ Region، ويدفعون ثمنها لأشهر. اختر الـ Region الخاصة بـ Lantern، واضبطها كإعداد افتراضي في الـ CLI، وألقِ نظرة على مُحدِّد الـ Region قبل كل عملية إنشاء.</p>\n</aside>\n<h2 id=\"sec-5\" tabindex=\"-1\">كم تكلّف الجغرافيا</h2>\n<p>يُقاس نقل البيانات بشكل مختلف بحسب وجهتها. الزيارات الداخلة إلى AWS من الإنترنت مجانية عمومًا. أما الزيارات بين مناطق التوافر في الـ Region نفسها فتُحسب لكل غيغابايت، والزيارات بين الـ Regions تكلّف أكثر، والبيانات المرسلة إلى الإنترنت تُحسب أيضًا، ويستطيع CloudFront تقليلها عبر التخزين المؤقت. لا تحتاج إلى أرقام لتصمّم جيدًا، بل إلى هذه العادة فقط: <strong>كل سهم في مخطّطك يعبر حدود منطقة توافر أو Region له ثمن.</strong> النشر عبر عدة مناطق توافر يستحق ثمنه حين يكون التوقف مؤلمًا؛ أما نسخة من كل شيء في Region أخرى فعادةً لا تستحقه، لموقع بحجم Lantern.</p>\n<p>في الدرس التالي سترى أين تنتهي مهمة AWS وتبدأ مهمتك، وستؤمّن الحساب نفسه.</p>\n","toc":[{"id":"sec-1","text":"الـ Regions: أين تعيش بياناتك","level":2},{"id":"sec-2","text":"كيف تختار","level":3},{"id":"sec-3","text":"مناطق التوافر: النجاة من يوم سيئ","level":2},{"id":"sec-4","text":"مواقع الحافة: أقرب من أي Region","level":2},{"id":"sec-5","text":"كم تكلّف الجغرافيا","level":2}],"takeaways":["الـ Region منطقة جغرافية معزولة مثل eu-west-1، وتبقى بياناتك في الـ Region التي وضعتها فيها ما لم تنقلها أنت.","منطقة التوافر (Availability Zone) مركز بيانات منفصل أو أكثر داخل الـ Region؛ وتوزيع حمل العمل على منطقتي توافر أو أكثر يجعله يصمد أمام فقدان إحداها.","مواقع الحافة (edge locations) مواقع أصغر كثيرة العدد تخزّن المحتوى مؤقتًا وتقدّمه بالقرب من المستخدمين؛ وعليها يعمل Amazon CloudFront.","اختر الـ Region بحسب قواعد حماية البيانات أولًا، ثم زمن الاستجابة للمستخدمين، ثم توافر الخدمات، ثم السعر.","انتقال البيانات بين مناطق التوافر، وبين الـ Regions، وإلى الإنترنت يُقاس ويُحسب، لذا تظهر قرارات المعمارية على الفاتورة."],"further":[{"title":"AWS Regions and Availability Zones","url":"https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-availability-zones.html"},{"title":"What is a Region?","url":"https://docs.aws.amazon.com/global-infrastructure/latest/regions/aws-regions.html"},{"title":"AWS Global Infrastructure","url":"https://aws.amazon.com/about-aws/global-infrastructure/"}],"quiz":[{"q":"<p>تعمل قاعدة بيانات Lantern في منطقة توافر واحدة، وانقطعت الكهرباء عن تلك المنطقة. ماذا يحدث؟</p>","options":[{"text":"تنقل AWS قاعدة البيانات إلى منطقة توافر أخرى تلقائيًا، أيًّا كان الإعداد.","why":"بعض الإعدادات فقط تفعل ذلك، مثل نشر RDS بنمط Multi-AZ. أما المورد المقيم في منطقة توافر واحدة فيبقى معها."},{"text":"تتوقف الـ Region بأكملها، لذا لم تكن منطقة توافر ثانية لتفيد.","why":"صُمِّمت مناطق التوافر لتتعطّل باستقلال، بكهرباء وشبكات منفصلة، فتعطّل إحداها يترك البقية تعمل."},{"text":"تصبح قاعدة البيانات غير متاحة حتى تتعافى منطقة التوافر، لأنها كانت تعيش في منطقة واحدة فقط.","why":"صحيح. موارد مثل instance في EC2 أو volume في EBS موارد مرتبطة بمنطقة توافر واحدة (zonal)؛ وتحصل على الصمود أمام تعطّل منطقة التوافر بتشغيل نسخ في أكثر من منطقة."}],"answer":2},{"q":"<p>مستخدمو Lantern في البرتغال، وتنطبق قواعد الاتحاد الأوروبي للبيانات على بيانات تأكيد الحضور. ما الذي يجب أن يحسم اختيار الـ Region أولًا؟</p>","options":[{"text":"أرخص Region في قائمة الأسعار.","why":"السعر مهم، لكن Region رخيصة تخالف قاعدة لحماية البيانات أو تضيف تأخيرًا هي توفير زائف. السعر يأتي أخيرًا في الترتيب."},{"text":"هل تُبقي الـ Region البيانات حيث تشترط القواعد.","why":"صحيح. القواعد القانونية والتعاقدية قيود صارمة؛ أما زمن الاستجابة وتوافر الخدمات والسعر فهي مفاضلات تجريها داخل تلك القيود."},{"text":"أيّ Region فتحها الـ console في المرة الأولى.","why":"الـ Region الافتراضية في الـ console كثيرًا ما تكون us-east-1، وقد تكون بعيدة عن مستخدميك وخارج ما تسمح به قواعد حماية بياناتك."},{"text":"الـ Region التي تضم أكبر عدد من مناطق التوافر.","why":"معظم الـ Regions فيها ثلاث مناطق توافر على الأقل، وهذا أكثر من كافٍ لموقع بحجم Lantern. ليس هذا هو المرشّح الأول."}],"answer":1},{"q":"<p>أنشأت instance في EC2 بالأمس، لكن الـ console الخاص بـ EC2 لا يعرض اليوم أي instances. ما التفسير الأرجح؟</p>","options":[{"text":"الـ console يعرض Region مختلفة عن التي استخدمتها بالأمس.","why":"صحيح. يعرض console الـ EC2 موارد الـ Region المختارة فقط. تحقّق من مُحدِّد الـ Region في الشريط العلوي."},{"text":"تحذف AWS الـ instances الخاملة بعد 24 ساعة في الحسابات الجديدة.","why":"لا تحذف AWS الـ instances العاملة لكونها خاملة. ولهذا تظل الموارد المنسيّة تكلّف مالًا."},{"text":"الـ instances عامّة (global)، لذا تظهر تحت تبويب Global.","why":"الـ instances في EC2 موارد مرتبطة بمنطقة توافر (zonal). قلّة من الخدمات فقط، مثل IAM وCloudFront، عامّة."}],"answer":0},{"q":"<p>من أين يقدّم Amazon CloudFront النسخ المخزّنة مؤقتًا من ملصقات Lantern؟</p>","options":[{"text":"من منطقة التوافر التي تحتوي الـ bucket في S3.","why":"هذا هو الـ origin (المصدر). وُجد CloudFront أصلًا كي لا يُعاد كل طلب إلى هناك."},{"text":"من مواقع الحافة القريبة من كل زائر.","why":"صحيح. مواقع الحافة أكثر بكثير من الـ Regions، فيقطع الملصق المخزّن مؤقتًا مسافة قصيرة إلى المتصفّح."},{"text":"من Region ثانية يجب أن تختارها عند إنشاء الـ bucket.","why":"لا يحتاج CloudFront إلى أن تختار Regions إضافية؛ فهو يستخدم شبكته العالمية من مواقع الحافة."}],"answer":1}],"exercise":{"kind":"choice","multiple":false,"options":["us","eu-cheap-missing","eu-near","eu-far"],"correct":["eu-near"],"title":"اختر الـ Region الخاصة بـ Lantern","prompt":"<p>يجب أن يُبقي Lantern بيانات تأكيد الحضور (الأسماء والبريد الإلكتروني) داخل الاتحاد الأوروبي، ومعظم الزوّار في البرتغال، والخطة تستخدم Amazon S3 وAmazon CloudFront وAWS Lambda وAmazon API Gateway وAmazon DynamoDB. أمامك أربع Regions مرشّحة بخصائص مفترضة. طبّق الترتيب الذي تعلّمته في الدرس (قواعد حماية البيانات، زمن الاستجابة، توافر الخدمات، السعر) واختر واحدة.</p>\n","hints":["استبعد كل مرشّحة تخالف قاعدة صارمة قبل أن تقارن أي شيء آخر.","الـ Region التي تنقصها خدمة تحتاجها ليست أرخص؛ إذ ستضطر إلى إعادة التصميم أو تشغيل ذلك الجزء في مكان آخر.","من بين الـ Regions المتبقية، فضّل الأقرب إلى المستخدمين. نادرًا ما يتغلّب فرق سعر صغير على زمن الاستجابة في موقع عام."],"explanation":"<p>الـ Region الأمريكية تخالف قاعدة حماية البيانات، فهي مستبعدة مهما كانت رخيصة أو مكتملة. وأرخص Region أوروبية تنقصها خدمة من الخطة، ما سيفرض إعادة التصميم. ومن بين المرشّحتين الأوروبيتين اللتين فيهما كل ما تحتاجه، تمنح الأقرب إلى البرتغال الزوّار زمن استجابة أقل، وفرق السعر الصغير لا يرجح على ذلك. لاحظ أن CloudFront سيقدّم الملفات المخزّنة مؤقتًا من مواقع الحافة في كل الأحوال، لكن استدعاءات الـ API إلى Lambda وDynamoDB تظل تسافر إلى الـ Region، فبُعدها يهمّ في كل تأكيد حضور.</p>\n","checkLabels":{},"optionText":{"us":{"text":"Region أمريكية: كل الخدمات متوفرة، وأقل الأسعار، وهي الافتراضية في الـ console.","why":"تخالف القاعدة الأولى والأشد صرامة. يجب أن تبقى بيانات تأكيد الحضور داخل الاتحاد الأوروبي، فلا يهمّ أي شيء آخر في هذه الـ Region."},"eu-cheap-missing":{"text":"Region أوروبية على بعد نحو 1,500 كم: الأرخص في الاتحاد الأوروبي، لكن Amazon API Gateway غير متاح فيها بعد.","why":"تجتاز قاعدة حماية البيانات لكنها تسقط في توافر الخدمات. توفير القليل في السعر لا يستحق إعادة تصميم الـ API."},"eu-near":{"text":"Region أوروبية على بعد نحو 500 كم من لشبونة: كل الخدمات المخطّط لها متوفرة، والأسعار أعلى ببضعة في المئة من أرخص Region أوروبية.","why":"صحيح. تستوفي قاعدة حماية البيانات، وهي الأقرب إلى المستخدمين، وفيها كل الخدمات. بضعة في المئة في السعر هي أقل العوامل أهمية."},"eu-far":{"text":"Region أوروبية على بعد نحو 2,500 كم: كل الخدمات المخطّط لها متوفرة، وبالأسعار نفسها التي في أقرب Region.","why":"خيار صالح، لكنه أبعد عن المستخدمين دون أي مكسب. كل استدعاء للـ API يدفع ثمن المسافة الإضافية في زمن الاستجابة."}}},"words":735,"readMinutes":4}