# أداء الخادم

يؤثر أداء الخادم بشكل مباشر على سرعة واستجابة تطبيق WCPOS الخاص بك. يُجري نظام POS العديد من استدعاءات REST API، لذا فإن **وقت استجابة الخادم هو عنق الزجاجة الأساسي** — تعتمد سرعة POS بشكل كبير على جودة الاستضافة. يساعدك هذا الدليل في مراقبة وتشخيص وتحسين أداء الخادم باستخدام المقاييس المضمنة وتقنيات استكشاف الأخطاء.

## الحد الأدنى لمتطلبات الخادم[​](#minimum-server-requirements "رابط مباشر إلى الحد الأدنى لمتطلبات الخادم")

للحصول على نظام POS سريع الاستجابة في الإنتاج، نوصي على الأقل بما يلي:

CPU

<!-- -->

: 4 نوى معالج أو أكثر

RAM

<!-- -->

: 4 جيجابايت أو أكثر

PHP

<!-- -->

: PHP 7.4+ (يُوصى بالإصدار 8.x)

Database

<!-- -->

: MySQL 8.0+ أو MariaDB 11.x

Storage

<!-- -->

: SSD أو NVMe

SSL

<!-- -->

: HTTPS مطلوب — لن يعمل WooCommerce REST API بدونه

غالبًا ما تكون الاستضافة المشتركة غير كافية

غالبًا ما تحتوي الاستضافة المشتركة على عدد قليل جدًا من عمال PHP وذاكرة قليلة جدًا لأحمال عمل POS، التي تُجري العديد من استدعاءات API المتزامنة. للاستخدام الإنتاجي لـ POS، يُوصى بشدة باستخدام **VPS أو مضيف WordPress مُدار**. من المعروف أيضًا أن الاستضافة المُدارة `WordPress.com` بها مشكلات توافق مع REST API (يرى بعض المستخدمين 9–10 منتجات فقط من الكتالوجات الكبيرة) — يُوصى باستخدام `WordPress.org` المُستضاف ذاتيًا للحصول على التوافق الكامل.

### حزمة التحسين المعتمدة من المجتمع[​](#community-validated-optimisation-stack "رابط مباشر إلى حزمة التحسين المعتمدة من المجتمع")

يُبلّغ المستخدمون عن أفضل أداء لـ POS مع هذه التركيبة:

* **MariaDB 11.4** (أسرع من MySQL لأحمال عمل WooCommerce)
* **HPOS مُفعّل** (انظر أدناه)
* التخزين المؤقت للكائنات عبر **LiteSpeed أو Redis**
* تخزين **NVMe**
* **PHP OPcache** مُفعّل

## أخطاء 503[​](#503-errors "رابط مباشر إلى أخطاء 503")

أخطاء 503 دائمًا من جانب الخادم

خطأ `503 Service Unavailable` **ليس عيبًا في POS** — فهو يعني أن الخادم لم يتمكن من معالجة الطلب. تحقق مما يلي:

1. حِمل الخادم والموارد المتاحة
2. عمال PHP (قد يكونون مُستنفَدين)
3. حد ذاكرة PHP — قم بزيادته إلى **256 ميجابايت أو أكثر**
4. سجلات خادم مزود الاستضافة لديك (تواصل مع مضيفك؛ يمكنهم رؤية ما لا يستطيع التطبيق رؤيته)

## توافق إصدار WooCommerce[​](#woocommerce-version-compatibility "رابط مباشر إلى توافق إصدار WooCommerce")

يمكن أن يؤدي تحديث WooCommerce أحيانًا إلى تعطيل POS. قم دائمًا بتحديث WooCommerce على [موقع تجريبي](/ar/support/troubleshooting/plugin-conflicts.md#before-you-start-use-a-staging-site) أولًا، وحافظ على تحديث WCPOS حتى يتضمن أحدث إصلاحات التوافق.

المشكلات المعروفة:

* **WooCommerce 10.5.0** — عطّل تحميل المنتجات في POS (العَرَض: ظهور \~10 منتجات فقط؛ توقف مسح الباركود والبحث عن العمل) وأدخل ذاكرة تخزين مؤقت تجريبية للمنتجات يمكن أن تسبب **تضخم postmeta** واستنفاد الذاكرة. **الإصلاح:** قم بتحديث WCPOS إلى أحدث إصدار (يتضمن الإصلاح وعملية ترحيل للتنظيف)، أو قم بالتراجع عن WooCommerce إلى [10.4.3](https://downloads.wordpress.org/plugin/woocommerce.10.4.3.zip).

إذا أدى تحديث WooCommerce إلى تعطيل POS، فقم بالتراجع عن WooCommerce إلى الإصدار السابق (عبر علامة التبويب **Advanced** في صفحة الإضافة على WordPress.org) وأبلِغ عن ذلك.

## فهم مقاييس الخادم[​](#understanding-server-metrics "رابط مباشر إلى فهم مقاييس الخادم")

يجمع WCPOS تلقائيًا مقاييس أداء الخادم مع كل عملية سحب بيانات (المنتجات، الطلبات، العملاء، إلخ). يمكنك عرض هذه المقاييس في شاشة [السجلات](/ar/support/logs.md).

### مقاييس الخادم النموذجية[​](#typical-server-metrics "رابط مباشر إلى مقاييس الخادم النموذجية")

```
{

  "total": "24692",

  "execution_time": "76.64 ms",

  "server_load": "[15.20605469,16.16357422,16.76806641]"

}
```

**التفصيل:**

* **`total`** - عدد السجلات المعالجة (24692 معرف منتج)
* **`execution_time`** - الوقت المستغرق لإكمال العملية (76.64 مللي ثانية)
* **`server_load`** - متوسط تحميل الخادم لمدة 1 و 5 و 15 دقيقة

## تفسير تحميل الخادم[​](#server-load-explained "رابط مباشر إلى تفسير تحميل الخادم")

يمثل تحميل الخادم متوسط تحميل النظام على مدى فترات زمنية مختلفة:

* **القيمة الأولى** - المتوسط لمدة دقيقة واحدة (15.21)
* **القيمة الثانية** - المتوسط لمدة 5 دقائق (16.16)
* **القيمة الثالثة** - المتوسط لمدة 15 دقيقة (16.77)

### تفسير التحميل[​](#load-interpretation "رابط مباشر إلى تفسير التحميل")

يمكن أن تكون قيم تحميل الخادم مضللة ويجب تفسيرها بعناية:

قد تكون قيم التحميل مضللة

متوسطات تحميل الخادم لا تتناسب دائمًا بشكل مباشر مع الأداء. يمكن لخادم ذو قيم تحميل عالية (15+) أن يكون سريع الاستجابة للغاية إذا كانت الموارد كافية ومهيأة بشكل جيد. **ركز على أوقات التنفيذ بدلاً من قيم التحميل وحدها.**

**إرشادات عامة:**

* **التحميل بالنسبة لوحدات المعالج** - تحميل 8.0 على خادم مكون من 8 نوى يعني الاستخدام الكامل
* **التحميل المستمر مقابل الحمل المؤقت** - الارتفاعات القصيرة طبيعية، قد يشير التحميل العالي المستمر إلى وجود مشاكل
* **الأداء أكثر أهمية** - خادم سريع الاستجابة مع تحميل عالي أفضل من خادم بطيء مع تحميل منخفض

**ما يجب مراقبته:**

* **زيادة أوقات التنفيذ** مع مرور الوقت
* **زيادة التحميل باستمرار** دون تفسير
* **كل من التحميل العالي وأوقات التنفيذ البطيئة** معًا

## معايير الأداء[​](#performance-benchmarks "رابط مباشر إلى معايير الأداء")

### إرشادات أوقات التنفيذ[​](#execution-time-guidelines "رابط مباشر إلى إرشادات أوقات التنفيذ")

| العملية         | جيدة    | مقبولة    | رديئة    | حرجة |
| --------------- | ------- | --------- | -------- | ---- |
| **سحب المنتج**  | < 100ms | 100-500ms | 500ms-2s | > 2s |
| **إنشاء الطلب** | < 200ms | 200-800ms | 800ms-3s | > 3s |

### اعتبارات عدد السجلات[​](#record-count-considerations "رابط مباشر إلى اعتبارات عدد السجلات")

يجب أن تتناسب أوقات التنفيذ بشكل معقول مع عدد السجلات:

```
// Good scaling examples

{"total": "100", "execution_time": "15.2 ms"}    // 0.15ms per record

{"total": "1000", "execution_time": "89.4 ms"}   // 0.09ms per record

{"total": "10000", "execution_time": "234.1 ms"} // 0.02ms per record



// Poor scaling examples

{"total": "100", "execution_time": "500.0 ms"}   // 5.0ms per record

{"total": "1000", "execution_time": "8000.0 ms"} // 8.0ms per record
```

## تشخيص مشاكل الأداء[​](#diagnosing-performance-issues "رابط مباشر إلى تشخيص مشاكل الأداء")

### الخطوة 1: مراقبة السجلات[​](#step-1-monitor-the-logs "رابط مباشر إلى الخطوة 1: مراقبة السجلات")

1. افتح **السجلات** من درج التنقل
2. قم بإجراء العملية البطيئة (مزامنة المنتجات، إنشاء الطلب، إلخ.)
3. ابحث عن إدخال السجل المقابل
4. قم بتوسيع السياق لعرض المقاييس

### الخطوة 2: تحليل المقاييس[​](#step-2-analyse-the-metrics "رابط مباشر إلى الخطوة 2: تحليل المقاييس")

**أوقات التنفيذ العالية + تحميل الخادم العالي = مشكلة في موارد الخادم**

```
{

  "total": "5000",

  "execution_time": "3500.0 ms",

  "server_load": "[12.45, 11.23, 10.87]"

}
```

*الحل: زيادة موارد الخادم أو تحسين تكوين الخادم*

**أوقات التنفيذ العالية + تحميل الخادم الطبيعي = مشكلة في الإضافات/قاعدة البيانات**

```
{

  "total": "1000",

  "execution_time": "2800.0 ms",

  "server_load": "[1.23, 1.45, 1.67]"

}
```

*الحل: تحديد الإضافات البطيئة أو تحسين استعلامات قاعدة البيانات*

**أوقات التنفيذ الطبيعية + تحميل الخادم العالي = تحميل عام زائد على الخادم**

```
{

  "total": "2000",

  "execution_time": "150.0 ms",

  "server_load": "[8.90, 9.12, 8.45]"

}
```

*الحل: تقليل تحميل الخادم من العمليات الأخرى أو ترقية الموارد*

## مشاكل الأداء الشائعة[​](#common-performance-problems "رابط مباشر إلى مشاكل الأداء الشائعة")

### 1. موارد الخادم غير الكافية[​](#1-insufficient-server-resources "رابط مباشر إلى 1. موارد الخادم غير الكافية")

**الأعراض:**

* تحميل خادم مرتفع باستمرار (> 4.0 على معظم الخوادم)
* أوقات تنفيذ طويلة عبر جميع العمليات
* انقطاعات متكررة

**الحلول:**

* **ترقية المعالج** - المزيد من الأنوية تعالج الطلبات المتزامنة بشكل أفضل
* **زيادة الذاكرة العشوائية** - تقلل من قراءة/كتابة القرص ويحسن التخزين المؤقت
* **استخدام تخزين SSD** - يحسن بشكل كبير من أداء قاعدة البيانات
* **تحسين إعدادات PHP** - زيادة memory\_limit، max\_execution\_time

### 2. استعلامات قاعدة البيانات البطيئة[​](#2-slow-database-queries "رابط مباشر إلى 2. استعلامات قاعدة البيانات البطيئة")

**الأعراض:**

* أوقات تنفيذ مرتفعة مع تحميل خادم طبيعي
* سحب المنتجات/الطلبات ببطء بشكل خاص
* أكواد أخطاء متعلقة بقاعدة البيانات في السجلات

**الحلول:**

* **تفعيل WooCommerce HPOS** - أكبر تحسين لأداء قاعدة البيانات
* **استخدام التخزين المؤقت للكائنات** - Redis أو Memcached إذا كانت متاحة من مضيفك
* **الحفاظ على تحديث WordPress** - غالبًا ما تتضمن تحديثات النواة تحسينات لقاعدة البيانات
* **تحديد مراجعات المنشورات** - إضافة `define('WP_POST_REVISIONS', 3);` إلى wp-config.php

### 3. تدخل الإضافات[​](#3-plugin-interference "رابط مباشر إلى 3. تدخل الإضافات")

**الأعراض:**

* تدهور الأداء المفاجئ بعد تحديث الإضافات
* عمليات محددة أبطأ بكثير من الأخرى
* أوقات تنفيذ عالية مع تحميل خادم طبيعي

**استكشاف الأخطاء:**

1. **اختبار على الخادم التجريبي** - تعطيل جميع الإضافات باستثناء WooCommerce و WCPOS
2. **قياس الأساس** - تسجيل أوقات التنفيذ مع الحد الأدنى من الإضافات
3. **تفعيل تدريجي** - إضافة الإضافات واحدة تلو الأخرى لتحديد المسبب
4. **فحص أشرطة الإضافات** - البحث عن الإضافات التي تتعلق بإجراءات WooCommerce

**الإضافات الشائعة المشكلة:**

* إضافات SEO ثقيلة أثناء عمليات المنتج
* أنظمة إدارة المخزون المعقدة
* إضافات تحليلات/تتبع في الوقت الحقيقي
* إضافات مخصصة برمجة بشكل سيء

### 4. تكوين WordPress/WooCommerce[​](#4-wordpresswoocommerce-configuration "رابط مباشر إلى 4. تكوين WordPress/WooCommerce")

**الأعراض:**

* أداء غير متسق
* أخطاء متعلقة بالذاكرة في السجلات
* لوحة تحكم الإدارة بطيئة

**قائمة فحص التحسين:**

* **إصدار PHP** - استخدام PHP 8.0+ لأداء أفضل
* **WooCommerce HPOS** - تفعيل تخزين الطلبات عالي الأداء (انظر أدناه)
* **تخزين WordPress المؤقت** - تفعيل التخزين المؤقت للكائنات إذا كانت متاحة
* **إعدادات WooCommerce** - تحسين أحجام صور المنتجات

### تخزين الطلبات عالي الأداء لـ WooCommerce (HPOS)[​](#woocommerce-high-performance-order-storage-hpos "رابط مباشر إلى تخزين الطلبات عالي الأداء لـ WooCommerce (HPOS)")

أكبر فوز في الأداء

**إن HPOS هي واحدة من أكبر تحسينات الأداء التي يمكنك القيام بها لـ WooCommerce.** تخزن الطلبات في جداول قاعدة بيانات مخصصة بدلاً من جدول مشاركات WordPress، مما يحسن بشكل كبير من الأداء للمتاجر التي تحتوي على العديد من الطلبات.

**الفوائد:**

* **استعلامات طلب أسرع** - تخزين الطلبات في هيكل قاعدة بيانات مُحسن
* **تحميل قاعدة بيانات أقل** - فصل الطلبات عن المشاركات/الصفحات
* **تحسين قابلية التوسع** - التعامل بكفاءة مع أعداد كبيرة من الطلبات
* **تحسين أداء الإدارة** - شاشات إدارة الطلبات الأسرع

**كيفية التفعيل:**

1. انتقل إلى `WooCommerce > Settings > Advanced > Features`
2. تفعيل "High-performance order storage"
3. اتبع عملية الترحيل

**لمعرفة المزيد:**

* [وثائق HPOS لـ WooCommerce](https://woocommerce.com/document/high-performance-order-storage/)
* [دليل ترحيل HPOS](https://woocommerce.com/document/high-performance-order-storage/#section-3)

## أفضل ممارسات مراقبة الخادم[​](#server-monitoring-best-practices "رابط مباشر إلى أفضل ممارسات مراقبة الخادم")

### 1. عمليات فحص الأداء المنتظمة[​](#1-regular-performance-checks "رابط مباشر إلى 1. عمليات فحص الأداء المنتظمة")

* **مراجعات أسبوعية** - التحقق من السجلات لتوجهات الأداء
* **قياسات الأساس** - تسجيل أوقات التنفيذ العادية
* **مراقبة أوقات الذروة** - مراقبة خلال الفترات ذات الحركة العالية

### 2. تعيين تنبيهات الأداء[​](#2-set-performance-alerts "رابط مباشر إلى 2. تعيين تنبيهات الأداء")

راقب هذه العلامات التحذيرية:

* أوقات التنفيذ > 1000ms باستمرار
* تحميل الخادم > 5.0 لفترات طويلة
* أخطاء التوقف المتكررة في السجلات

### 3. تخطيط السعة[​](#3-capacity-planning "رابط مباشر إلى 3. تخطيط السعة")

تتبع اتجاهات النمو:

* **نمو عدد السجلات** - المنتجات، الطلبات، العملاء
* **تدهور الأداء** - كيفية تزايد أوقات التنفيذ
* **استخدام الموارد** - وحدة المعالجة المركزية، الذاكرة، استخدام القرص

## استراتيجيات تحسين الخادم[​](#server-optimisation-strategies "رابط مباشر إلى استراتيجيات تحسين الخادم")

### 1. أفضل ممارسات WordPress/WooCommerce[​](#1-wordpresswoocommerce-best-practices "رابط مباشر إلى 1. أفضل ممارسات WordPress/WooCommerce")

**تفعيل HPOS:**

* أكبر تحسين للأداء لـ WooCommerce
* راجع قسم HPOS أعلاه للحصول على التفاصيل

**إعداد PHP (استشر مضيفك):**

```
memory_limit = 512M

max_execution_time = 300

max_input_vars = 3000
```

**إعداد WordPress:**

```
// In wp-config.php - limit post revisions

define('WP_POST_REVISIONS', 3);



// Enable WordPress debug logging if needed

define('WP_DEBUG_LOG', true);
```

### 2. تحسينات على مستوى الاستضافة[​](#2-hosting-level-optimizations "رابط مباشر إلى 2. تحسينات على مستوى الاستضافة")

**التخزين المؤقت للكائنات:**

* اسأل مضيفك عن توفر Redis أو Memcached
* يقدم العديد من مضيفي WordPress المدارة ذلك بشكل تلقائي

**إصدار PHP:**

* استخدام PHP 8.0+ لتحسينات أداء كبيرة
* يسمح معظم المضيفين بسهولة بتغيير إصدار PHP

**موارد الخادم:**

* تأكد من وجود ذاكرة كافية (حد أدنى 1 جيجابايت، يفضل 2 جيجابايت+)
* يوفر تخزين SSD أداء قاعدة بيانات أفضل بكثير من الأقراص التقليدية

## ملاحظات خاصة بالاستضافة[​](#hosting-specific-notes "رابط مباشر إلى ملاحظات خاصة بالاستضافة")

تحتاج بعض المضيفين وشبكات CDN إلى تكوين للسماح لـ POS بالوصول إلى WooCommerce REST API:

| المضيف / الخدمة        | المشكلة                                                                                       | الإصلاح                                                                                       |
| ---------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| **GoDaddy**            | يحظر جدار حماية الموقع استدعاءات REST API لـ `/wp-json/` (أخطاء مثل *"Received 'undefined'"*) | `Website Security > Firewall > Settings > Access Control > Allow URL Paths` ← أضف `/wp-json/` |
| **WP Engine**          | يجب تفعيل REST API بشكل صريح                                                                  | فعّل REST API؛ أضف نقاط نهاية API إلى القائمة البيضاء في جدار الحماية الخاص بهم إذا لزم الأمر |
| **Cloudflare**         | يمكن أن يحظر طلبات REST API، وقد يخزن استجابات API مؤقتًا                                     | تحقق من قواعد جدار الحماية؛ أضف قاعدة صفحة لـ **تجاوز التخزين المؤقت** لـ `/wp-json/*`        |
| **WordPress.com**      | مشكلات توافق REST API / تحميل المنتجات (ظهور 9–10 منتجات فقط)                                 | استخدم WordPress.org المُستضاف ذاتيًا للحصول على التوافق الكامل                               |
| **الاستضافة المشتركة** | عدد قليل جدًا من عمال PHP / ذاكرة منخفضة لاستدعاءات POS المتزامنة                             | انتقل إلى VPS أو مضيف WordPress مُدار                                                         |

يمكن لإضافات الأمان (Wordfence، إلخ) أن تحظر REST API بطرق مماثلة — راجع [تعارضات الإضافات](/ar/support/troubleshooting/plugin-conflicts.md) للحصول على القائمة الكاملة والإصلاحات.

### HTTP 414 — عنوان URI طويل جدًا[​](#http-414-uri-too-long "رابط مباشر إلى HTTP 414 — عنوان URI طويل جدًا")

يمكن أن تتجاوز السلال الكبيرة، أو رمز الوصول المضمَّن في عنوان URL الخاص بالسداد، حد طول عنوان URL في الخادم (يستخدم طلب السداد `GET`). يمكن أن يكون هذا خاصًا بالمتصفح ويزداد سوءًا بسبب ذاكرة التخزين المؤقت للمتصفح.

**الحل البديل:** امسح ذاكرة التخزين المؤقت للمتصفح أولًا، ثم ارفع حد طول عنوان URL في الخادم:

* **Apache:** `LimitRequestLine 65536` في `httpd.conf`
* **Nginx:** `large_client_header_buffers 4 65536;` في `nginx.conf`
* إذا لم يكن لديك وصول إلى التكوين، فاطلب من مزود الاستضافة الخاص بك تعديله.

## متى يجب طلب المساعدة[​](#when-to-seek-help "رابط مباشر إلى متى يجب طلب المساعدة")

اتصل بمزود الاستضافة الخاص بك أو مطور WordPress إذا:

* **كان تحميل الخادم باستمرار > 8.0** على الرغم من جهود تحسين الأداء
* **كانت أوقات التنفيذ > 5000ms** للعمليات البسيطة
* **وجود أخطاء في الذاكرة** تظهر بشكل متكرر في السجلات
* **استعلامات قاعدة البيانات تستغرق > 2 ثانية** باستمرار

قدم لهم:

* مقاييس الخادم من سجلاتك
* قائمة بالإضافات النشطة
* مواصفات الخادم (وحدة المعالجة المركزية، الذاكرة، نوع التخزين)
* إصدارات WordPress و WooCommerce

## الوثائق ذات الصلة[​](#related-documentation "رابط مباشر إلى الوثائق ذات الصلة")

[السجلاتكيفية الوصول إلى مقاييس أداء الخادم وتفسيرها](/ar/support/logs.md)

[أداء السدادتحسين معالجة الدفع](/ar/support/performance/checkout.md)

[أكواد الأخطاءفهم أكواد الأخطاء المتعلقة بالأداء](/ar/error-codes/.md)

[استكشاف الأخطاءإرشادات عامة لاستكشاف الأخطاء](/ar/category/troubleshooting.md)
