Skip to main content

جێبەجێکردنی جیاوازی بیناکان (Multi-Tenancy Isolation)

Ultimate Multisite: Multi-Tenancy 1.2.0 پشتگیریک داتابەیس و فایلی سیستمیی تایبەت بۆ هەر subsite یەک بۆ بەکارهێنەرانی سەربەخۆ (sovereign tenants) پاشداری دەکات. ئەمە داتاکانی تانتر لە یەکەوە جیاواز دەدات، لەکاتێکدا پڕۆڤیزنکردنی تۆڕ، بڕین و بەڕێوەبردنی سیستەم پارێزراو دەبێت.

استراتیژی جیاوازی (Isolation strategy)

بۆ ئەو کڕیاران کە پێویستیان بە جیاوازی زیاتر لە داتاکان، کۆگەی فایلی تایبەت یان سنووری جیاواز بۆ میزبان هەیە، لەسەر جیاوازی سەربەخۆ بکاربهێنن.

هەر تانترێکی سەربەخۆ دەبێت:

  • داتابەیسێکی تایبەت یان استراتیژی پیکیتی داتابەیس (database prefix strategy) کە لەلایەن میزبان پەسەند کراوە.
  • کۆگەی سەرەکی فایلی تایبەتی تانترەکە.
  • تۆماری تانترێک کە سایتەکە بە داتابەیس، ڕێڕەوی سەرەکی (root path)، ناوی میزبان (hostname) و مۆدێلی جیاوازییەکەی دەپێێت.
  • ئەنجامی پشکنینی میگریشن (migration verification result) پێش ئەوەی تانترەکە بە چالاک بێت (live).

پەیوەندی داتابەیس بە میزبان (Database host binding)

وەرگرتنی 1.2.0 شێوازی پیش‌دۆزراوی گۆڕینی پەیوەندی میزبان لە یەک ماچەیی بۆ دامەزراندنەکانی سەربەخۆ دەگۆڕێت. بەهاکانی وەک localhost کە لە یەک ماچەکەدا هەن، ڕێکدەهێنرێنەوە بۆ ئەوەی Bedrock، FrankenPHP، و دامەزراندنی WordPress کە لە ناو کۆنتینەردا کار دەکات، بتوانن ڕێگەپێدان و پشکنینی ڕێکاران لەسەر خاڵی میزبان (host string) کە MySQL بە ڕاستی دەبینێت بکەن.

کاتێک هەوڵدەدەیت تانترێکی سەربەخۆ دیار بکەیت:

  1. داتابەیس میزبانەکە بۆ ئەو بەهایە دیاری بکە کە پێویستە بۆ چارچێوەی کارکردنی (runtime) تانترەکە.
  2. لە کاتی دامەزراندنەکانی ناوخۆیی (local socket installs)، localhost بەکاربهێنە ئەگەر میزبان پەیوەندییە ناوخۆیی دەگرێت.
  3. 127.0.0.1 یان ناوی خزمەتگوزاریی تایبەت (service hostname) تەنها کاتێک کە خزمەتگوزاری داتابەیس ئەو ڕێگەپێدانان بۆ ئەو میزبان دەداتەوە.
  4. پاش گۆڕینی پەیوەندی میزبان، پشکنینی میگریشنەکە ئەنجام بدە.

ئەگەر ڕاپۆرتی پشکنینی کارکردن (verification reports) شکستەکانی پێشکەش بکەن، بەراوردکاری بینەرانی داتابەیس تانترەکە لەگەڵ پەیوەندی میزبانکراوەکان بکە. یەکەم بەکارھێنەرێک کە بۆ user@localhost ڕێگەپێدان دەدرێت، جیاوازە لە بەکارھێنەرێکی [email protected] یان user@% (کۆگەی سیستەم) دەبێت.

کۆگەی سەرەکی فایلی (Filesystem root)

پایانی ریشه مستأجر باید در طول راه‌اندازی‌ها و استقرارها پایدار باشد. از مسیرهای نصب موقت دوری کنید. برای نصب‌های سبک Bedrock، مطمئن شوید که ریشه مستأجر به ریشه وب وردپرس مورد انتظار بوت‌استرپ مستأجر اشاره می‌کند، نه فقط ریشه پروژه.

ترتیب فراهم کردن (Provisioning order)

برای مستأجران حاکمیتی جدید، از این ترتیب استفاده کنید:

۱. ایجاد ورودی رجیستری مستأجر. ۲. ایجاد پایگاه داده و کاربر پایگاه داده مستأجر. ۳. بوت‌استرپ شمای مستأجر. ۴. فراهم کردن کاربران مستأجر. ۵. پیکربندی مسیرهای فایل سیستم مستأجر. ۶. اجرای تأیید مهاجرت (migration verification). ۷. تغییر مسیریابی یا DNS پس از موفقیت در تأیید.

این ترتیب مانع این می‌شود که مستأجرانی که به طور ناقص ایزوله شده‌اند قبل از آماده شدن نویسنده پایگاه داده، کاربران و فایل سیستم ترافیک دریافت کنند.

جریان‌های مدیریت مشتری حاکمیتی (Sovereign customer management flows)

Ultimate Multisite v2.13.0 اقدامات مدیریت مشتری را در سایت اصلی زمانی که حالت حاکمیتی فعال است، روی سایت اصلی نگه می‌دارد. یک مستأجر همچنان می‌تواند به عنوان یک نصب وردپرس ایزوله اجرا شود، اما اقدامات مرتبط با مشتری که به صورت عملیاتی وابسته به صورت شبکه، صورت‌حساب یا داده‌های حساب مشترک هستند، باید مشتری را به جای تلاش برای تکمیل عمل در زمان اجرای مستأجر، به سایت اصلی برگردانند.

جریان سایت اصلی شامل موارد زیر است:

  • پرداخت و تغییر طرح‌ها (Checkout and plan changes).
  • نمای کلی حساب و اقدامات پروفایل مشتری (Account overview and customer profile actions).
  • به‌روزرسانی آدرس صورت‌حساب و صفحات مدیریت پرداخت (Billing address updates and payment-management screens).
  • نماهای فاکتور و تاریخچه پرداخت (Invoice and payment-history views).
  • اقدامات مدیریت سایت مانند افزودن سایت‌ها یا حذف یک سایت (Site management actions such as adding sites or deleting a site).
  • تغییر قالب (Template switching).
  • نگاشت دامنه و تغییرات دامنه اصلی (Domain mapping and primary-domain changes).

کەدا کە کڕیارێک یەکێک لەم کارانە لە تەنها بەشێکی سەرباسوی (sovereign tenant) دەست پێدەکات، Ultimate Multisite لایەنی سەرەکیی (main-site URL) پەیوەندیی نوێكراوەکەی دروست دەکات و سەرچاوەی تەنهاکەی (source tenant) وەک خاڵی گەڕانەوە (return target) پارێزراوەت دەبێت کاتێک ئەمانە ئاساییە. ئەمەش ڕێگە بە کڕیاران دەدات کارەکە بە شێوەیەکی بەڕێوەدەچێت لەسەر تۆمارە تۆڕییەکان، پاشان بگەنەوە بۆ دۆخی تەنهاکەی (tenant context) بەبێ ئەوەی داهاتووی بڕین و ئەندازیاری (billing or membership state) لە بنکی داتابەیسەکەدا دووبارە بکرێت.

بۆ کارگێڕانەکان، ئەو ڕێنمایی پراکتیکییە ئەوەیە: لاپەڕەکانی بڕین (billing)، خاڵەکان (account)، کۆتایی کڕین (checkout)، فاکچۆ (invoice)، قالب (template) و بەڕێوەبردنی ناو دامەنی (domain-management) لەسەر سایتێکی سەرەکی بۆ تۆڕە سەرباسییەکان پاراستن. داشبۆردەکانی تەنهاکە دەتوانن لینک بکەن بۆ ئەو لاپەڕانانە، بەڵام سایتێکی سەرەکی هێشتا سەرچاوەی ڕاستی (source of truth) بۆ کارەکە دەمێنێتەوە.