IOSOR জ্ঞান

এপিআই ইনসিডেন্ট সপ্তাহ: আইডেম্পোটেন্সির অভাব কোনো রিট্রে স্টর্ম নয়, একটি ফ্রিজ

রিট্রে লুপ বা লেজার দূষণ ছাড়াই হোয়াইট-লেবেল প্রি-পেইড CPaaS-এ আপনার প্রথম প্রধান API ইনসিডেন্ট মোকাবেলা করুন।

এপিআই ইনসিডেন্ট সপ্তাহ: আইডেম্পোটেন্সির অভাব কোনো রিট্রে স্টর্ম নয়, একটি ফ্রিজ.

মধ্যরাতের অ্যালার্ট এবং লাইনে নীরবতা

আপনার ড্যাশবোর্ডে ইনবাউন্ড SMS ট্রাফিক স্পাইক করার সময় DLR ডেলিভারির একটি ফ্ল্যাটলাইন দেখায়। একটি ডাউনস্ট্রিম নেটওয়ার্ক পার্টিশন অনুরোধের মাঝখানে TCP প্যাকেট ফেলে দিয়েছে এবং আপনার ক্লায়েন্টের মাইক্রোসার্ভিস ব্যর্থতা ধরে নিয়েছে। যথাযথ সুরক্ষা ছাড়া, স্বয়ংক্রিয় ক্লায়েন্টরা অভিন্ন পে-লোড দিয়ে আপনার গেটওয়েতে হাতুড়িপেটা শুরু করে। আপনি একটি প্রি-পেইড লেজারের বিরুদ্ধে একটি ক্লাসিক রিট্রে ঝড়ের দিকে তাকিয়ে আছেন যেখানে প্রতিটি ডুপ্লিকেট অনুরোধ ব্যালেন্স দ্বিগুণ ডেবিট করার ঝুঁকি তৈরি করে। একটি হোয়াইট-লেবেল প্রি-পেইড CPaaS মডেলে, আপনার প্রথম API ইনসিডেন্ট কখনই কেবল আপটাইম সম্পর্কে নয়; এটি ক্যাসকেডিং নেটওয়ার্ক ব্যর্থতা থেকে ক্লায়েন্টের তহবিল রক্ষা করার বিষয়ে।

কেন গার্ড্রেইল ছাড়া রিট্রে প্রি-পেইড ব্যালেন্স নিষ্কাশন করে

যখন একটি ক্লায়েন্ট টাইমআউট ঘটে, তখন সরল অ্যাপ্লিকেশনের লজিক অবিলম্বে HTTP অনুরোধ পুনরায় প্রেরণ করে। যদি আপনার রাউটিং স্তর স্বাধীনভাবে এই ডুপ্লিকেটগুলি প্রক্রিয়া করে, তবে প্রতিটি API হিট একটি নতুন JIT নম্বর বরাদ্দ বা একটি নতুন SMS প্রেরণ ট্রিগার করে। ঝুঁকি ইঞ্জিন ধরে ফেলার আগে এটি ব্যালেন্স শূন্যের নিচে নামিয়ে USD 20 প্রি-পেইড ফ্লোর লজিক লঙ্ঘন করে। আপনি আশা বা ক্লায়েন্ট-সাইড প্রতিশ্রুতির উপর নির্ভর করতে পারবেন না। রিকানেক্টের সময় দুর্ঘটনাতীত ওয়ালেট ড্রেন রোধ করতে কীভাবে ট্রানজেকশন লক কাজ করে তা বুঝতে আমাদের গাইড আইডেম্পোটেন্সি, পুনঃচেষ্টা ও অর্থ পর্যালোচনা করুন।

ব্যর্থতা বিচ্ছিন্ন করা এবং লুপ বন্ধ করা

কোড প্যাচ করার আগে আপনার অবিলম্বে অপারেশনাল অগ্রাধিকার হল ইনকামিং ট্রাফিক বন্ধ করা। সংকীর্ণ সময়ের উইন্ডোর মধ্যে পৌঁছানো অভিন্ন পে-লোড ড্রপ করতে API গেটওয়ে প্রান্তে একটি জরুরি রেট-লিমিটিং নিয়ম প্রয়োগ করুন। লেজারের অবস্থা প্রতিদ্বন্দিতায় থাকাকালীন ট্রানজেকশন প্রক্রিয়া করার চেষ্টা করবেন না। বিতর্কিত ট্রাফিক ভলিউমে আপনার প্ল্যাটফর্ম USD 1,000/মাস থ্রেশহোল্ডের কাছাকাছি পৌঁছালে, আপস্ট্রিম ক্যারিয়ারগুলি সন্দেহজনক অস্থিরতার জন্য আপনার মার্চেন্ট আইডি ফ্লাগ করবে। আপনার প্রশাসনিক কনসোলের মাধ্যমে অবিলম্বে প্রভাবিত ক্লায়েন্ট এন্ডপয়েন্ট ফ্রিজ করুন।

ট্রানজেকশন অবস্থা এবং লেজারের সামঞ্জস্য যাচাই করা

ঝড় শান্ত হওয়ার পরে, আপনাকে ইনসিডেন্ট উইন্ডোর সময় করা প্রতিটি ব্যালেন্স সামঞ্জস্য নিরীক্ষা করতে হবে। এসএমএস পাঠানো হয়েছে কিন্তু DLR ডেলিভারি লগ করতে ব্যর্থ হয়েছে এমন অনাথ অনুরোধ সনাক্ত করতে ক্যারিয়ার HB সংকেতের সাথে আপনার অভ্যন্তরীণ লেজার লগ তুলনা করুন। ডেভেলপাররা প্রায়শই এপিআই দ্বিতীয় মাস: প্রথম চক্রের পরে আইডেম্পোটেন্সি ঋণ পরিচালনা করা তৈরি করে এই অনুমান করে যে একক-থ্রেডেড ডাটাবেস সীমাবদ্ধতা যথেষ্ট। সেগুলি যথেষ্ট নয়। বিতরণ করা মাইক্রোসার্ভিসগুলির জন্য স্পষ্ট হ্যাশ-ভিত্তিক অনুরোধ লকিং প্রয়োজন যাতে অভিন্ন API স্বাক্ষরগুলি একক রাষ্ট্র মেশিন কার্যকর করার জন্য সমাধান করে।

ইকো রিপ্লে বিরুদ্ধে ওয়েবহুক ডেলিভারি সুরক্ষিত করা

একটি ইনসিডেন্টের সময় আউটবাউন্ড API কল পরিচালনার মতোই নিরাপদভাবে ইনবাউন্ড ওয়েবহুক পরিচালনা করা গুরুত্বপূর্ণ। ডাটাবেস লক প্রতিদ্বন্দ্বিতার কারণে আপনার সার্ভার 5xx ত্রুটি ফিরিয়ে দিলে অসমলয় DLR আপডেট প্রক্রিয়াকরণকারী ক্লায়েন্টরাও অন্তহীন লুপে পড়তে পারে। 300 সেকেন্ডের বেশি পুরানো পুরানো পে-লোড বাতিল করতে ক্রিপ্টোগ্রাফিক টাইমস্ট্যাম্প ব্যবহার করে একটি কঠোর ওয়েবহুক স্বাক্ষর ও রিপ্লে উইন্ডো চেক প্রয়োগ করুন। এটি স্বয়ংক্রিয় সিস্টেমগুলিকে পুরানো ডেলিভারি রসিদ দিয়ে আপনার ডাউনস্ট্রিম এন্ডপয়েন্টগুলিতে হাতুড়িপেটা করা থেকে বাধা দেয়।

স্থিতিস্থাপক ট্রানজেকশন নিয়ন্ত্রণের জন্য IOSOR দিয়ে শুরু করুন

ঘটনা সপ্তাহে আগে নতুন আউটবাউন্ড স্থবির করুন। প্রতি উড়ন্ত পাঠে Idempotency-Key দিন, ডুপ্লিকেট debit সারি রপ্তানি করুন, নীরব ক্লায়েন্ট পুনঃচেষ্টা থামান। ধরতে গিয়ে পুনঃচেষ্টা ঝড় খুলবেন না।

IOSOR সারাংশ

করুন: অনুপস্থিত চাবি freeze ধরুন, তারপর ভরাট ও ledger মেলান।

করবেন না: ডুপ্লিকেট DLR এখনো দ্বিতীয় debit ছাপছে তখন ঘটনা বন্ধ করা। টিকিট অবস্থা টাকার অবস্থা নয়।

এই গাইড কি সহায়ক ছিল?

সম্পর্কিত গাইড