Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Archtechx/оренда


Archtechx/оренда


Пакет `archtechx/tenancy` — це гнучкий і потужний інструмент для впровадження мультитенантності в програмах Laravel. Ось деякі ключові особливості та відмінності порівняно з іншими пакетами, такими як `spatie/laravel-multitenancy`:

Ключові особливості `archtechx/tenancy`:

1. Automatic Multi-Tenancy: Пакет автоматично встановлює багатокористування без необхідності значних змін коду. Він обробляє підключення до бази даних, кеші, файлові системи, черги та сховища Redis для кожного клієнта [3].

2. Архітектура на основі подій: Пакет використовує архітектуру, керовану подіями, що забезпечує налаштування та гнучкість у обробці подій, пов’язаних з орендою [3].

3. Оренда однієї або кількох баз даних: підтримує моделі оренди як однієї, так і кількох баз даних. Для оренди кількох баз даних він надає характеристики моделі для визначення обсягу моделей для поточного клієнта[3].

4. Інтеграція з іншими пакетами: пакет легко інтегрується з іншими пакетами Laravel, включаючи Laravel Nova, який можна використовувати для керування ресурсами орендаря[3].

5. Можливість перевірки: Пакет розроблено таким чином, щоб його можна було легко перевірити, що полегшує ретельне тестування вашої мультитенантної реалізації[3].

6. Налаштування: Пакет пропонує широкі можливості налаштування завдяки своїй архітектурі на основі подій і особливостям моделі, що дозволяє розробникам адаптувати його до своїх конкретних потреб[3].

Встановлення та швидкий старт:

1. Встановлення: пакет можна встановити за допомогою Composer: `composer require stancl/tenancy`.

2. Швидкий старт: Пакет включає швидкий підручник, який допоможе вам налаштувати оренду кількох баз даних та ідентифікацію домену. Цей посібник доступний на сторінці документації пакета [4].

Порівняння з `spatie/laravel-multitenancy`:

- Автоматичне налаштування: обидва пакунки пропонують параметри автоматичного налаштування, але `archtechx/tenancy` є більш повним у своєму автоматичному налаштуванні, керуючи більшою кількістю аспектів мульти-тенантності з коробки.
- Архітектура на основі подій: `archtechx/tenancy` використовує керовану подіями архітектуру, яка забезпечує більше гнучкості та можливостей налаштування порівняно з `spatie/laravel-multitenancy`.
- Інтеграція з іншими пакетами: обидва пакунки добре інтегруються з іншими пакетами Laravel, але `archtechx/tenancy` чіткіше підтримує такі пакети, як Laravel Nova.
- Можливість до тестування: обидва пакунки створені для тестування, але archtechx/tenancy більше зосереджений на тестуванні та надає більше інструментів для забезпечення ретельного тестування.

Підводячи підсумок, `archtechx/tenancy` пропонує більш комплексне та гнучке рішення для мультитенантності в Laravel із великими можливостями налаштування та кращою інтеграцією з іншими пакетами. Однак вибір між двома пакетами зрештою залежить від конкретних вимог і потреб вашого проекту.

цитати:
[1] https://stackoverflow.com/questions/74005556/archtechx-tenancy-vs-spatie-laravel-multitenancy
[2] https://github.com/archtechx/tenancy/actions
[3] https://tenancyforlaravel.com
[4] https://tenancyforlaravel.com/docs/v3/quickstart/
[5] https://github.com/stancl/tenancy/releases