অ্যান্টি-প্যাটার্ন: লেটেন্সির উপর অস্তিত্বহীন KVM-এর প্রভাব

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন।
তথ্য

সিস্টেমের মধ্যে কনফিগারেশন ও ডায়নামিক ভ্যালু ম্যানেজ করার ক্ষেত্রে কী-ভ্যালু ম্যাপ (KVM) নীতি হল একটি মৌলিক কম্পোনেন্ট। তবে, এইসব KVM-এর মধ্যে অস্তিত্বহীন কীয়ের উপস্থিতি ও লুক-আপ পারফর্ম্যান্সের উপর উল্লেখযোগ্য প্রভাব ফেলতে পারে এবং লেটেন্সি বাড়িয়ে দিতে পারে।

অ্যান্টিপ্যাটার্ন

কোনও KVM নীতি যখন এমন কোনও কী-এর ভ্যালু রিট্রিভ করার চেষ্টা করে যা কী-ভ্যালু ম্যাপে নেই, তখন এর ফলে Cassandra ডেটাবেসে অতিরিক্ত কল করা হয়। ব্যাকএন্ড ডেটাবেসের সাথে এই বর্ধিত যোগাযোগ, বিশেষ করে অস্তিত্বহীন কীগুলির জন্য, আরও বেশি রিসোর্স এবং সময় নেয়, যার ফলে সামগ্রিক অনুরোধের লেটেন্সি বেড়ে যায়।

প্রভাব

এই অ্যান্টিপ্যাটার্নের প্রাথমিক প্রভাব হল রানটাইম লেটেন্সি ও ডেটা স্টোর সংক্রান্ত সমস্যা বেড়ে যাওয়া। সিস্টেমের প্রসেসিং স্পিড ও ডেটা অ্যাক্সেস নেতিবাচকভাবে প্রভাবিত হয়, কারণ অনুপস্থিত কী লুক-আপের উচ্চ শতাংশ হল পর্যবেক্ষণ করা লেটেন্সির মূল কারণ। এটি একটি রানটাইম বৈশিষ্ট্য যা সরাসরি ইনকামিং অনুরোধের প্রকৃতির উপর নির্ভরশীল।

উপসর্গ

  • সিস্টেমের রানটাইম লেটেন্সি বেশি।
  • ডেটা স্টোর সংক্রান্ত সমস্যা, যা প্রসেসিং স্পিড ও ডেটা অ্যাক্সেস সংক্রান্ত সমস্যার ইঙ্গিত দেয়।

সমস্যার মেসেজ

system.log ফাইল বিশ্লেষণ করে দেখা গেছে যে Cassandra-সম্পর্কিত সমস্যাগুলি বারবার হচ্ছে, বিশেষ করে ডেটা রিট্রিভ করা এবং হোস্ট পুলের স্ট্যাটাস সংক্রান্ত সমস্যা। গুরুত্বপূর্ণ সমস্যার মেসেজের মধ্যে এগুলি অন্তর্ভুক্ত:
  • ERROR DATASTORE.CASSANDRA - AstyanaxCassandraClient.get() : Exception while fetching rowKey : [7ccd1062-6e05-4d12-aa86-5c7bf944682d, app_credentials, kms] from column family:{} in keyspace:{}
  • ERROR DATASTORE.CASSANDRA - AstyanaxCassandraClient.logHostPoolInCaseOfErrors() : Cassandra Host Pool under use - All Hosts: xx.xx.xx.102(xx.xx.xx.102):9160,xx.xx.xx.101(xx.xx.xx.101):9160,xx.xx.xx.103(xx.xx.xx.103):9160. Active Hosts: xx.xx.xx.101(xx.xx.xx.101):9160,xx.xx.xx.102(xx.xx.xx.102):9160

ডায়াগনসিস

মেসেজ প্রসেসর system.log ফাইলের বিশ্লেষণ থেকে জানা যায় যে ৫-মিনিটের KVM মেট্রিক রিপোর্টে L1MissL2Miss ভ্যালু বেশি আছে।

যেমন: CACHE.org__env__KVM-Example.statistics [hitCount=215 L1MissL2Miss=14120 hitRate=5 L1MissL2Hit=212 getCount=556]

পেশাদার পদ্ধতি

এই সমস্যা কমাতে, আমরা KVM-এ অস্তিত্বহীন কী-এর জন্য ডামি ভ্যালু যোগ করার সাজেশন দিই। এই পদ্ধতিটি অস্তিত্বহীন কী-এর জন্য Cassandra-তে কলের সংখ্যা কমিয়ে দেবে, যার ফলে পারফর্ম্যান্স উন্নত হবে এবং লেটেন্সি কমে যাবে।

আরও পড়ুন