يتناول هذا المستند إعدادات Cassandra 4.0.X، المضمّنة في الإصدار 4.53.00 من Apigee Edge for Private Cloud أو الإصدارات الأحدث. يُرجى الرجوع إلى قسم الملحق للحصول على تفاصيل حول تنفيذ الإعدادات الموضّحة هنا.
إعداد أداة جمع القمامة
التبديل إلى استخدام نظام إدارة المحتوى (CMS)
تُرسِل Apigee Cassandra تلقائيًا مع أداة جمع المهملات G1، وهي أداة يُنصح بها لإصدار Cassandra 4.X. ومع ذلك، بالنسبة إلى حالات الاستخدام المختلفة والبنية الأساسية الخاصة بك، كما هو الحال في Edge for Private Cloud، يمكنك اختيار التبديل إلى أداة CMS Garbage Collector. بالنسبة إلى أحجام الحِزم التي تزيد عن 8 غيغابايت، تنصح Apigee بشدة باستخدام G1GC.
لاستخدام أداة جمع المهملات في CMS، عليك ضبط الإعدادات التالية:
conf_jvm_options_gc_type=cms
للرجوع إلى استخدام أداة جمع المهملات G1، عليك إزالة هذه الإعدادات.
تعديل إعدادات أداة جمع المهملات في CMS
توفّر Apigee مَعلمات تلقائية لأداة جمع القمامة في نظام إدارة المحتوى. تنطبق هذه المَعلمات عندما يستخدم Cassandra نظام إدارة المحتوى. لتغيير هذه المَعلمات، استخدِم config conf_jvm_options_cms_gc_setting_lines
. اضبط جميع مَعلمات JVM ذات الصلة بجمع "مخلفات محتوى الموقع الإلكتروني" في CMS في سطر واحد، مع الفصل بينها بـ "\n".
مثال:
conf_jvm_options_cms_gc_setting_lines=-XX:+UseParNewGC\n-XX:+UseConcMarkSweepGC\n-XX:+CMSParallelRemarkEnabled\n-XX:SurvivorRatio=8\n-XX:MaxTenuringThreshold=1\n-XX:CMSInitiatingOccupancyFraction=75\n-XX:+UseCMSInitiatingOccupancyOnly\n-XX:CMSWaitDuration=10000\n-XX:+CMSParallelInitialMarkEnabled\n-XX:+CMSEdenChunksRecordAlways\n-XX:+CMSClassUnloadingEnabled
تعديل إعدادات أداة جمع المهملات G1GC
توفّر Apigee مَعلمات تلقائية لخدمة G1 Garbage Collector. تنطبق هذه المَعلمات عند تفعيل G1GC التلقائي. في حال التبديل إلى نظام إدارة المحتوى (CMS)، لن تسري هذه الإعدادات. لتغيير مَعلمات G1GC، استخدِم الأمر config conf_jvm_options_g1_gc_setting_lines
. اضبط جميع مَعلمات JVM ذات الصلة لبرنامج G1 GC في سطر واحد، مفصولة بـ "\n".
مثال:
conf_jvm_options_g1_gc_setting_lines=-XX:+UseG1GC\n-XX:G1RSetUpdatingPauseTimePercent=5\n-XX:MaxGCPauseMillis=500\n-XX:InitiatingHeapOccupancyPercent=50\n-XX:ParallelGCThreads=8\n-XX:ConcGCThreads=8\n-XX:+ParallelRefProcEnabled\n-XX:MaxTenuringThreshold=1\n-XX:G1HeapRegionSize=32m\n-XX:G1ReservePercent=15
استخدام إعدادات GC الخاصة بك
لتجاهل جميع الإعدادات المُسبَقة في Apigee لكلٍّ من G1GC وCMS، اضبط الإعدادات التالية:
conf_jvm_options_gc_type=custom
حدِّد جميع إعدادات "جمع القمامة" لوحدة Java Virtual Machine في conf_jvm_options_custom_settings
، مع الفصل بين كل إعداد بـ "\n".
مثال:
conf_jvm_options_gc_type=custom
conf_jvm_options_custom_settings=-XX:+UseParallelGC\n-XX:GCTimeRatio=19
ضبط أحجام الحِزم
تنصح شركة Apigee بشدة بتشغيل Cassandra باستخدام مساحة ذاكرة عشوائية لا تزيد عن 8 غيغابايت. يمكن العثور على عمليات التحقّق من الحدّ الأقصى لحجم الحِزمة الذي يبلغ 8 غيغابايت في $APIGEE_ROOT/apigee-cassandra/conf/cassandra-env.sh
.
لتحديد حجم الحِزمة بدون إيقاف عمليات التحقّق يدويًا، استخدِم الإعداد conf_jvm_options_custom_settings
. افصل بين كل إعداد بعلامة "\n".
مثال:
conf_jvm_options_custom_settings=-Xmx8G\n-Xms8G
ضبط الإعدادات العامة لـ JVM
لإضافة مَعلمات Java Virtual Machine إلى Cassandra، حدِّد جميع إعدادات Java Virtual Machine في سطر واحد مفصول بـ "\n" للإعداد conf_jvm_options_custom_settings
.
مثال:
conf_jvm_options_custom_settings=-Dcassandra.start_rpc=true\n-Dcassandra.expiration_date_overflow_policy=CAP\n-XX:+FlightRecorder\n-XX:+UnlockCommercialFeatures
الملحق
كيفية ضبط أيّ إعدادات في Cassandra
- أنشئ ملف إلغاء الإعدادات في Cassandra أو عدِّله:
vi $APIGEE_ROOT/customer/application/cassandra.properties
- أضِف سطر الإعداد أو أزِله أو عدِّله حسب الحاجة.
- احفظ الملف وتأكَّد من أنّه مملوك للمستخدم "apigee" وقابلاً للقراءة من قِبل هذا المستخدم:
chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties
- أعِد تشغيل خدمة Cassandra على العقدة:
apigee-service apigee-cassandra restart
- كرِّر هذه الخطوات على كل عقدة من عقد Cassandra واحدة تلو الأخرى.
أنواع الإعدادات المتنوعة
يمكن أن تُرسِل الإعدادات conf_jvm_options_custom_settings
مَعلمات مختلفة إلى مثبّت Java Virtual Machine في Cassandra. يمكنك دمج مَعلمات Java المختلفة في إعداد واحد مع الفصل بينها بـ "\n".
مثال:
conf_jvm_options_custom_settings=-XX:+FlightRecorder\n-XX:+UnlockCommercialFeatures\n-Xmx8G\n-Xms8G