Site باید Context سازمانی داشته باشد
Organization، Project، Role و Site از ابتدا مرز دسترسی و Ownership را مشخص میکنند.

MANAGED WORDPRESS PLATFORM
WordPress را از یک نصب منفرد به یک Platform Resource تبدیل میکند؛ Identity، Infrastructure، Storage، MySQL، Valkey، Edge، Observability، Capacity، بازیابی و Security زیر یک Product Control Plane قرار میگیرند.
اجزای 4SO Enterprise WordPress: سایتها روی سرویسهای مدیریتشدهی پلتفرم
مسئلهی محصول
وقتی Site، Domain، Storage، Database، Cache، Update، Security و Backup با ابزارهای جدا اداره شوند، هر سایت یک جزیرهی عملیاتی میشود. این محصول آنها را به منابع قابلمدیریت در یک PaaS خودمیزبان تبدیل میکند.
Organization، Project، Role و Site از ابتدا مرز دسترسی و Ownership را مشخص میکنند.
Storage، MySQL، Valkey، Edge و Observability بهصورت سرویسهای Platform مدیریت میشوند.
Backup، PITR، Clone، Staging و Resume مسیرهای تحت مالکیت محصول و قابلپیگیری هستند.
تغییر محتوا یا محیط اجرا با Impact، Generation و Result روشن انجام میشود.
نمای قابلیتها
تمرکز روی چرخهی عمر سایت است: ایجاد، اتصال Domain، ظرفیت، Update، بازیابی، Security و عملیات روزمره.
ساخت، Suspend/Resume، Clone، Staging و چرخهی عمر هر Site.
دسترسی User و Operator روی مرزهای تحت مالکیت محصول.
چرخهی عمر Storage و Policy برای Data و نسخههای پشتیبان سایت.
Data services تحت چرخهی عمر و ظرفیت Platform.
Domain Binding، HTTPS و Edge policy در مسیر مدیریت Site.
Health، Metrics، Logs و عملیات از دید Site.
Policy ظرفیت و تصمیمهای Scale متناسب با workload.
Backup/PITR، Access grant، Security policy و Safe Update.
Panel، API و AI/MCP سه مسیر جدا برای مرجع تصمیم نیستند. همهی آنها روی همان Product RBAC و Durable Operations کار میکنند تا هیچ رابطی نتواند چرخهی عمر را دور بزند.
مدل استقرار
محیط اجرای WordPress روی یک Foundation خودمیزبان قرار میگیرد؛ سایتها روی همان Platform ساخته میشوند و Capacity یا Region بدون تغییر مدل کاربر گسترش پیدا میکند.
| پروفایل | Foundation | محیط اجرای Site | کاربرد |
|---|---|---|---|
| Production Core | ۳ نود | سایتها روی Platform Services | Baseline سازمانی با HA زیرساخت |
| Scale-out | Core + نودهای افزوده | Site Capacity گستردهتر | افزایش ظرفیت بدون ساخت Platform جدا |
| Staging / Clone | همان مرجع محصول | محیطهای جدا برای Test/بازیابی | آزمون تغییر، Clone و انتقال کنترلشده |
| Multi-region | ناحیهها Product-defined | Placement و Edge متناسب با Region | توزیع Site و بازیابی در چند دامنهی خرابی |
معماری
Control Plane Intent، RBAC و Operation را نگه میدارد؛ لایههای Infrastructure، Storage، Data، Edge و بازیابی تغییر را اجرا میکنند و محیط اجرای Site نتیجه را نشان میدهد.
| لایه | Component / Plane | مسئولیت | رفتار عملیاتی |
|---|---|---|---|
| Foundation | RKE2 | Self-hosted platform runtime و node lifecycle | Platform پیش از Site ساخته و verify میشود |
| Identity | Keycloak / OIDC + Product RBAC | Delegated identity و Organization/Project/Site authorization | Identity provider جای Product permission model را نمیگیرد |
| Data Plane | MySQL + Valkey | Persistent site data و cache/session acceleration | Data services lifecycle و capacity مستقل دارند |
| Storage / Edge | Platform storage + Domain/TLS/Edge planes | Persistent content، public binding و request edge | Domain و storage بخشی از Site lifecycle هستند |
| Observability | VictoriaMetrics · Loki · Alloy · Grafana | Metrics، logs و operator visibility | Site health از telemetry و runtime read-back ساخته میشود |
| Recovery | Backup · PITR · Clone · Staging | Point-in-time recovery، isolated verification و promotion | Restore یک workflow محصولی است، نه دستور اضطراری |
Install Authority. نصب Production با artifact sealed و operator-owned intent شروع میشود؛ Remote Doctor قبل از bootstrap هر target را بدون mutation ارزیابی میکند.
| مرحله | Authority / Component | رفتار |
|---|---|---|
| Artifact admission | Trusted SHA256 + sealed release preparer | Hash پیش از extraction بررسی میشود و exact archive/tree parity بعد از extraction دوباره verify میشود. |
| Operator intent | Normalized install config | Node/IP/role/data-device، URLها و SSH host-key fingerprintها صریحاند؛ installer هیچکدام را حدس نمیزند. |
| Remote admission | Read-only Remote Doctor | Fingerprint مستقل SSH و آمادگی target قبل از bootstrap/runtime mutation تأیید میشوند؛ TOFU پذیرفته نیست. |
| Foundation | RKE2 → Authority/Identity → Storage | Platform foundation پیش از سرویسهای Site ساخته و read-back میشود. |
| Data / Edge | MySQL → Valkey → Edge → WordPress | Data، cache و public edge بخشی از lifecycle همان Platform هستند. |
| Day-2 planes | Observability → Capacity → Recovery → Access → Security | نصب فقط زمانی کامل است که planeهای عملیاتی بعد از runtime هم در دسترس باشند. |
| Operator handoff | Credential-free handoff metadata | Panel/Identity URL و مسیر credential owner-only تحویل میشود؛ password/token در handoff یا log چاپ نمیشود. |
چرخهی عمر
چرخهی عمر شامل Setup، Domain، Capacity، Update، Backup، بازیابی و Security میشود؛ نه فقط نصب اولیهی WordPress.
پروفایل عملیاتی
کاربر لازم نیست جزئیات Kubernetes و سرویسهای زیرین را برای کار روزمره مدیریت کند.
کارهای روزمرهی هر Site.
تغییر کنترلشدهی Managed Content و محیط اجرا.
بازیابی و ساخت محیط جدا از Production.
مدیریت منابع بر اساس Policy و Usage.
مرز عمومی Site و سیاست امنیتی.
دسترسی انسانی و Agentic زیر همان RBAC.
فلو Site و Durable Operation
Site mutation با Idempotency-Key و request fingerprint به generation مشخص bind میشود؛ lifecycleهای DR، Plan Migration، Runtime Transition و Recovery میتوانند تغییر عمومی Site را fence کنند.
Staging و Canary پیش از Cutover، مسیر تغییر را اثبات میکنند.
Restore ابتدا Clone/Staging را میسازد؛ سپس Promote یا Abort.
Site فقط وقتی Ready است که generation و dependencies همگرا شوند.
Site یک resource چندلایه است، نه فقط container.
Public edge بخشی از lifecycle همان Site است.
تغییر قبل از cutover در staging/canary اثبات میشود.
Recovery point ابتدا در محیط ایزوله verify میشود.
Scale از telemetry و placement authority عبور میکند.
Migration و حذف Site نیز باید lifecycle صریح و قابلبازیابی داشته باشند.
تغییر Plan یا Runtime با checkpoint و cutover کنترلشده انجام میشود.
حذف Site یک عمل destructive با Fence و ترتیب آزادسازی dependencyها است.
| Action / Flow | Admission / Preconditions | Execution / Lock | Success Criterion | Failure / Recovery |
|---|---|---|---|---|
| Create / Reconcile Site | Org/Project/Plan/Region، generation و platform readiness باید معتبر باشند | Site intent + Operation + Outbox + Audit به یک resource/generation bind میشوند | ObservedGeneration با TargetGeneration و data/cache/storage/application readiness همگرا شود | Operation failed terminal است؛ فقط runtime familyهای صریحاً resumable میتوانند Failed→Running شوند |
| Suspend / Resume | Site حذف نشده و DR/Recovery/Plan Migration/Runtime Transition fence فعال نباشد | Generation جدید + durable Operation + site.reconcile outbox | Observed Site state با suspension intent همگرا شود | Conflict بهجای overwrite با 409 رد میشود؛ idempotent replay همان request را برمیگرداند |
| Safe Update / Runtime Transition | Compatibility، staging canary و rollback checkpoint/fingerprint معتبر | Target PHP/runtime transition به exact staging/backup authority bind میشود | Canary/target runtime و generation verification قبل از cutover | Drift در generation یا rollback authority عملیات را stale/blocked میکند |
| Backup / PITR | Recovery point و data-plane compatibility قابل اثبات | Recovery request/operation از همان Product authority عبور میکند | Restored Site/Data و runtime health قبل از promotion تأیید شود | Recovery فعال سایر lifecycleهای متداخل را fence میکند؛ failure مسیر recovery خودش را دارد |
| Plan Migration | Source/Target Plan و usage/capacity admission | Requested → Reconciling → Prepared → Completed | Plan cutover فقط بعد از آمادهشدن project/site dependencies | Failed میتواند وارد RollbackRequested → RollingBack → RollbackPrepared → RolledBack شود |
| Delete Site | confirmSiteId باید دقیقاً Site ID باشد و purgeData=true؛ active recovery مجاز نیست | Site suspend و DeletionRequested + durable Operation/Outbox/Audit ثبت میشود | Dependencies released و deprovision observed شود | Delete دوباره یا lifecycle متداخل overwrite نمیکند؛ destructive intent صریح و generation-bound است |
* Resume عمومی نیست. فقط operation typeهایی که durable runtime generation و resume owner مشخص دارند میتوانند از Failed دوباره Running شوند؛ برای بقیه، terminal state immutable است.
کاتالوگ عملیات
پنل بهجای نمایش backend موجودیتها، فرایندهایی را نشان میدهد که برای ادارهی WordPress لازماند.
4SO Enterprise WordPress عملیات Site، Data، Edge و بازیابی را زیر یک تجربهی واحد قرار میدهد.