থার্ড পার্টি এপিআই ইন্ট্রিগ্রেশন: সমস্যা, সমাধান এবং অভিজ্ঞতা

থার্ড পার্টি ইন্ট্রিগ্রেশন সব সময়ই হেডেক। এমন এমন সমস্যায় আপনাকে ফেলবে আপনি যদি ঠিক মতো হ্যান্ডেল না করতে পারেন তবে আপনার জীবন হেল করে দিতে পারে। আমি আমার জিজাপ(geezap.com) থেকে একে একটা কেস স্টাডি শেয়ার করতে পারি। আমি এখানে র‍্যাপিড এপিআই থেকে একটা এ পি আই ব্যাবহার করেছি। তো প্রথম সমস্যা ছিল এপিআই তে মাসিক রিকুয়েষ্ট ছিলো মাত্র ২০০ কিন্তু এই লিমিট আমি প্রথম দিনেই ক্রস করে ফেলেছিলাম। পরবর্তীতে আমি কিভাবে এই সমস্যার সমাধান করা যায় কোন প্রিমিয়াম সাবস্ক্রিপশন না নিয়ে সেই চেষ্টা করতে থাকি। আমি লক্ষ্য করলাম রেস্পন্স হেডারে আমার কতগুলো রেস্পন্স রিকুয়েস্ট বাকি আছে সেই সংখ্যাটা পাঠায়। আমি এটা দেখে আইডিয়া পেয়ে গেলাম। আমি এই ডাটাকে ডাটাবেইজ এ সেভ করলাম এবং বেশ কয়েকটা এপিআই কি ক্রিয়েট করলাম Rapid API থেকে। পরবর্তীতে এই request_remaining এর উপর নির্ভর করে ডাটা শর্ট কুয়েরী করলাম যাতে করে আমি সব থেকে বেশি remaining_request ধারী এপিআই কি টা পাই এবং সেই কি দিয়ে রিকুয়েষ্ট করতে পারি। এভাবেই চলছিলো কিন্তু সাম্প্রতি খেয়াল করলাম Rapid API তাদের রেট লিমিটিং ঠিকমতো মেইন্টেইন করছে না। যদি একটু খুলে বলি তাহলে আমি যদি 5 request_remaining এর এপিআই কি দিয়ে রিকুয়েষ্ট পাঠাই তাহলে সে request_remaining কে আবার ২০০ করে দেয়, এভাবে ২-৩ বার চলতে থাকে এবং একটা পর্যায়ে গিয়ে আমার এপিআই কি ৫-৬ দিনের জন্য ব্লক করে দেয়। হতে পারে এটা Rapid API এর কোন একটা টেকনিক। আমি এই সমস্যা সমাধানের জন্য কাজ করছি। সমাধান করে আরেকটা কেস স্টাডি লিখবো ইনশাল্লাহ।

আমার এই কেস স্টাডিতে আমি আপনাদের সাথে কিছু বিষয় শেয়ার করতে চাই যেটা আপনাদের কাজে লাগবে বলে আমার বিশ্বাসঃ

  • থার্ড পার্টি এপিআই ইন্ট্রিগ্রেশনে সব সময় প্রপার এক্সেপশন হ্যান্ডেল করবেন।
  • রিকুয়েষ্ট বডি অথবা কুয়েরী প্যারা মিটারে যে ডাটা পাস করতে হবে তার কিগুলোর বানানের দিকে লক্ষ্য রাখবেন।
  • এপিআই এর রেটলিমিটারের ব্যাপারে লক্ষ্য রাখবেন এবং চেষ্টা করবেন রেট লিমিট ক্রস না করতে
  • যদি বেশি টাইম কঞ্জিউমিং রিকুয়েষ্ট হয় তবে এসিক্রনাস পদ্ধতি ব্যাবহার করে কাজটা করতে পারেন।
    এই ছিলো এই সিনারিওর কেস স্টাডি। এ রকম আরো কয়েকটা কেস আছে আমার জিজাপ(geezap.com) এ। আস্তে আস্তে এগুলো শেয়ার করবো।
    চাইলে গিঠহাবে আমার প্রজেক্ট দেখে আস্তে পারেন। ভালো লাগলে একটা স্টার দিয়ে আসবেন :grinning:
1 Like

গিটহাব লিংকঃ GitHub - theihasan/geezap: Geezap is an AI-powered job aggregation platform built with Laravel that unifies job listings from LinkedIn, Upwork, Indeed, and ZipRecruiter. Features include smart job matching, automated cover letter generation, and application tracking.
পোর্টাল লিংকঃ geezap.com
লারাভেল ডেইলি লিংকঃ Repository theihasan/geezap | Laravel Daily