راهنمای عملیات QPID

Edge برای Private Cloud نسخه 4.52.02 با Qpid Broker-J 8.0.6 عرضه می شود. این صفحه ملاحظات حافظه و دیسک را برای مؤلفه apigee-qpidd Edge برای Private Cloud (با بروکر مبتنی بر جاوا) شرح می دهد. بخش‌های زیر به‌طور خاص در مورد استفاده Qpid Apigee اعمال می‌شود و نحوه تنظیم Qpid با استفاده از مکانیسم‌های پیکربندی Apigee را توضیح می‌دهد.

Qpid در Apigee

در Apigee، Qpid در دو گردش کار اصلی استفاده می شود:

  • تجزیه و تحلیل
  • کسب درآمد

در هر دوی این گردش‌ها، پردازشگر پیام پیام‌هایی را تولید می‌کند که به صورت دسته‌ای جمع‌آوری شده و به Qpid فرستاده می‌شوند. برای Analytics، پیام ها توسط Qpid-server خوانده می شوند. برای کسب درآمد، توسط سرور رتبه بندی (بخشی از مدیریت-سرور) خوانده می شوند. پس از خواندن، پیام‌های دسته‌بندی‌شده بدون دسته‌بندی و دریافت می‌شوند.

بخش های زیر پیکربندی های توصیه شده برای حافظه و دیسک با Qpid را شرح می دهد. این پیکربندی‌ها بر اساس اندازه پیام 2 کیلوبایتی برای تجزیه و تحلیل یا کسب درآمد هستند. با اندازه دسته ای پیش فرض 50، هر پیام در Qpid تقریباً 100 کیلوبایت خواهد بود. Apigee به پراکسی ها اجازه می دهد تا اطلاعات اضافی را به یک پیام (Analytics یا Monetization) تغییر دهند و به آن اضافه کنند. در موارد شدید، این ممکن است به طور قابل توجهی اندازه یک پیام واحد و پیام گروهی کلی در Qpid را تغییر دهد. در حالی که توصیه‌های کلی در مورد حافظه و دیسک در بخش‌های زیر حتی در چنین مواردی صادق است، ممکن است برای اطمینان از عملکرد روان نیاز به انجام تنظیمات اضافی در Qpid داشته باشید.

حافظه

بروکر Qpid از دو نوع حافظه استفاده می کند: حافظه خارج از هیپ و حافظه پشته. Qpid پیام ها را در حافظه off-heap ذخیره می کند و از حافظه پشته برای وظایف داخلی خود، پیام های مستقیم به صف ها و تبادلات و غیره استفاده می کند. در اکثر شرایط، Apigee توصیه می کند که نسبت 3:1 را بین حافظه off-heap و heap حفظ کنید. کارگزار Qpid.

پیام‌های موجود در حافظه off-heap روی دیسک باقی می‌مانند. علاوه بر این، اگر استفاده کلی از حافظه خارج از پشته یک آستانه خاص را نقض کند، Qpid به گونه ای پیکربندی می شود که پیام ها بر روی دیسک سرریز شوند.

به‌طور پیش‌فرض، Apigee حافظه هیپ و خارج از هیپ Qpid Broker را بر اساس حافظه موجود روی گره محاسبه می‌کند. اسکریپت های Apigee دارای محدودیت نرم 4 گیگابایتی برای حافظه هیپ و خارج از هیپ Qpid Broker است. اگر می‌خواهید این محدودیت‌ها را نادیده بگیرید، می‌توانید از دو پیکربندی زیر برای تنظیم مقادیر خود برای حافظه Heap و Off-Heap Qpid استفاده کنید.

  • پیکربندی برای حافظه پشته: bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m
  • پیکربندی برای حافظه off-heap: bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m

برای اطلاعات در مورد نحوه لغو تنظیمات ، نحوه تغییر پیکربندی Qpid را ببینید.

برای اطلاعات بیشتر، به مرجع Apache Qpid برای حافظه مراجعه کنید.

دیسک

فهرست داده های Qpid Broker $APIGEE_ROOT/data/apigee-qpidd است. گزارش‌های کارگزار Qpid در $APIGEE_ROOT/var/log/apigee-qpidd ذخیره می‌شوند.

عملکرد سیستم فایلی که دایرکتوری داده را میزبانی می کند، کلید عملکرد بروکر به عنوان یک کل است. برای بهترین عملکرد، دستگاهی را انتخاب کنید که تأخیر کمی داشته باشد و توسط سایر برنامه ها استفاده نشود.

کارگزار Qpid پیام های خود را در فهرست داده ها ادامه می دهد. به طور پیش‌فرض، کارگزار پیام‌ها را می‌پذیرد تا زمانی که سیستم فایل میزبان فهرست داده‌ها 80 درصد پر شود. می توانید این آستانه را با نادیده گرفتن پیکربندی نشان داده شده در مثال زیر در هر گره Qpid تغییر دهید.

bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60

در این مثال، زمانی که فایل سیستم زیربنایی 60% پر باشد، Broker پیام های جدید را رد می کند.

نحوه تغییر پیکربندی Qpid

برای تغییر پیکربندی Qpid:

  1. فایل زیر را ایجاد یا ویرایش کنید:
    $APIGEE_ROOT/customer/application/qpidd.properties
  2. در صورت لزوم پیکربندی را اضافه یا حذف یا تغییر دهید. به عنوان مثال، برای تغییر حداکثر حافظه هیپ Qpid Broker به 6 گیگابایت، تنظیمات زیر را در فایل اضافه کنید:
    bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
  3. تغییرات را ذخیره کنید و مطمئن شوید که فایل متعلق به کاربر apigee است و قابل خواندن است:
    chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
  4. فرآیند qpidd را مجدداً راه اندازی کنید:
    apigee-service apigee-qpidd restart