მრავალ-ტენანcyjული იზოლაცია (Multi-Tenancy Isolation)
Ultimate Multisite: Multi-Tenancy 1.2.0 მხარს უჭერს თითოეული სუბსაიტის მონაცემთა ბაზას და ფაილის სისტემის იზოლაციას სუვერენული ტენანტებისთვის. ეს ინარჩუნებს ტენანტის მონაცემების ცალკეობას, đồng thời ინარჩუნებს ქსელის დონის პრო비ჯენინგს (provisioning), ბილინგს (billing) და ადმინისტრირებას.
იზოლაციის სტრატეგია (Isolation strategy)
გამოიყენეთ სუვერენული იზოლაცია იმ მომხმარებლებისთვის, რომლებსაც სჭირდებათ უფრო ძლიერი მონაცემთა განცალკევება, სპეციალური ფაილის სისტემის შენახვის ადგილი ან ცალკე ჰოსტის ბარიერის დადგენა.
ყოველი სუვერენული ტენანტისთვის უნდ ა არსებოდეს:
- სპეციალური ტენანტის მონაცემთა ბაზა ან ბაზის პრეፊქსის სტრატეგია, რომელიც დამტკიცებულია ჰოსტისთვის.
- ცალკე ფაილის სისტემის ძირეული დირექტორია (tenant filesystem root).
- ტენანტის რეესტრის ჩანაწერი, რომელიც აკავშირებს საიტს მის მონაცემთა ბაზასთან, ძირითად გზასთან (root path), ჰოსტнейმთან და იზოლაციის მოდელთან.
- მიგრაციის გადამოწმების შედეგი იმის შემდეგ, სანამ ტენანტი "ოპერაციულ" (live) იქნება.
მონაცემთა ჰოსტის ბაინდინგი (Database host binding)
ვერსია 1.2.0 ცვლის დეფოლტს ერთი და იმავე მანქანაზე არსებული ჰოსტის ბაინდინგის ქცევას სუვერენული ინსტალაციებისთვის. ერთი და იმავე მანქანის მნიშვნელობები, როგორიცაა localhost, ნორმალიზდება ისე, რომ Bedrock, FrankenPHP-სა და კონტეინერიზებულ WordPress ინსტალაციებს შეეძლოთ უფლებების მიცემა და გადამოწმება ჰოსტის სტრინგის მიმართ, რომელსაც MySQL რეალურად ხედავს.
როდესაც სუვერენული ტენანტის კონფიგურირებას აკეთებთ:
- დააყენეთ მონაცემთა ჰოსტი იმ მნიშვნელობით, რომელიც საჭიროა ტენანტის 运行时 (runtime) დროისთვის.
- გამოიყენეთ
localhostადგილობრივი სოკეტის ინსტალაციებისთვის მაშინ, როდესაც ჰოსტი ადგილობრივ კავშირებს ელოდება. - გამოიყენეთ
127.0.0.1ან მხოლოდ სერვისის ჰოსტის სახელი იმ შემთხვევაში, თუ მონაცემთა სერვერი ამ ჰოსტს უფლებებს აძლევს. - გაუშვით მიგრაციის გადამოწმება ჰოსტის ბაინდინგის შეცვლის შემდეგ.
თუ გადამოწმების შედეგად გამოჩნდება უფლებების უარყოფა (grant failures), შეადარეთ ტენანტის DB მომხმარებლების უფლებები კონფიგურირებულ ჰოსტ ბაინდინგს. user@localhost-ისთვის მიცემული უფლება განსხვავებულია [email protected] ან user@%-ისგან.
ფაილის სისტემის ძირეული დირექტორია (Filesystem root)
ტანტენტის जड़ (root) უნდა იყოს სტაბილური გადატვირთვების და დეპლოייმენტების დროს. თავიდან აიციleyin დროებითი mount path-ები. Bedrock-ს სტილის ინსტალებებისთვის, დაადასტურეთ, რომ ტანტენტის root მიუთითებს WordPress-ის ვებ-რუტზე, რომელსაც ტანტენტის ბBootstrap ელოდება, და არა მხოლოდ პროექტის root-ზე.
მომზადების თანმიმდევრობა (Provisioning order)
ახალი სუვერენული ტანტენტებისთვ ის გამოიყენეთ ეს თანმიმდევრობა:
- შექმენით ტანტენტის რეესტრის ჩანაწერი (tenant registry entry).
- შექმენით ტანტენტის მონაცემთა ბაზა და მონაცემთა ბაზის მომხმარებელი (database user).
- გაუშვით ტანტენტის სქემა (schema) Bootstrap-ი.
- შექმენით ტანტენტის მომხმარებლები (tenant users).
- დააკონფიგურიруეთ ტანტენტის ფაილის სისტემის გზები (filesystem paths).
- გაუშვით მიგრაციის გადამოწმება (migration verification).
- გადართეთ მარშრუტები ან DNS-ი გადამოწმების წარმატებით დასრულების შემდეგ.
ეს თანმიმდევრობა ხელს უშლის იმას, რომ ნაწილობრივ იზოლირებული ტანტენტებს ტრაფიკი არ მიუწვდეთ სანამ მონაცემთა ბაზის მწერლობა (writer), მომხმარებლები და ფაილის სისტემა მზად იქნება.