সিঙ্ক্রোনাস এবং অ্যাসিঙ্ক্রোনাস এন্ডপয়েন্ট

ইউরোপীয় অর্থনৈতিক অঞ্চল (EEA) ডেভেলপাররা

রুট অপটিমাইজেশন এপিআই দুটি মেথড প্রকাশ করে:

  • OptimizeTours একটি সিনক্রোনাস মেথড যা একটি OptimizeToursRequest জবাবে একটি অপটিমাইজড রুট রিটার্ন করে। অনুরোধটি প্রসেস হওয়া এবং একটি OptimizeToursResponse বা এরর রিটার্ন না হওয়া পর্যন্ত ক্লায়েন্টদের অবশ্যই রুট অপটিমাইজেশন এপিআই-এর সাথে একটি খোলা কানেকশন বজায় রাখতে হবে।
  • BatchOptimizeTours একটি অ্যাসিঙ্ক্রোনাস মেথড যা এক বা একাধিক OptimizeToursRequest এবং সংশ্লিষ্ট OptimizeToursResponse মেসেজের জন্য URI গ্রহণ করে এবং একটি Long Running Operation (LRO) ( REST , gRPC )-এর রিসোর্স নেম রিটার্ন করে, যা ব্যাচ সম্পন্ন হয়েছে কিনা তা পরীক্ষা করতে ব্যবহৃত হয়। OptimizeToursRequest গুলো ব্যাকগ্রাউন্ডে প্রসেস করা হয়, তাই ক্লায়েন্টরা Route Optimization API-এর সাথে সংযোগ কেবল BatchOptimizeToursRequest সাবমিট করার জন্য অথবা LRO-এর স্ট্যাটাস পরীক্ষা করতে GetOperation কল করার জন্য খোলা রাখে। BatchOptimizeTours গুগল ক্লাউড স্টোরেজ থেকে রিকোয়েস্ট রিড করে এবং রেসপন্স রাইট করে।

ব্যবহারের ক্ষেত্র

ছোট ও সাধারণ অনুরোধ, অথবা কয়েক মিনিট বা তার কম সময়ে সমাধান করা যায় এমন অনুরোধের জন্য OptimizeTours সুবিধাজনক। Route Optimization API-এর সাথে দীর্ঘস্থায়ী সংযোগ বজায় রাখলে, সমাধান ফেরত দেওয়ার আগেই সংযোগ বিচ্ছিন্ন হওয়ার ঝুঁকি বেড়ে যায়।

BatchOptimizeTours বড় আকারের এবং সমাধানে বেশি সময় লাগে এমন অনুরোধগুলোও সামলাতে পারে, কারণ এর জন্য Route Optimization API-এর সাথে দীর্ঘস্থায়ী সংযোগের প্রয়োজন হয় না।

দীর্ঘস্থায়ী কার্যক্রম

একটি ব্যাচের সমাপ্তির অবস্থা পরীক্ষা করার জন্য, রুট অপটিমাইজেশন এপিআই (Route Optimization API) থেকে GetOperation মেথড ব্যবহার করে এলআরও (LRO) পড়া হয়। এলআরও-তে একটি done প্রপার্টি থাকে যা নির্দেশ করে সম্পূর্ণ ব্যাচের প্রসেসিং সম্পন্ন হয়েছে কিনা এবং একটি error ' ফিল্ড থাকে যা প্রসেসিংয়ের সময় সম্মুখীন হওয়া ত্রুটিগুলো রিপোর্ট করে। যদি done ' ট্রু (true) হয় এবং কোনো error না থাকে, তাহলে ব্যাচটি সফলভাবে সম্পন্ন হয়েছে। কোনো error উপস্থিতি নির্দেশ করে যে ব্যাচের কিছু অংশ বা সম্পূর্ণ অংশের প্রসেসিং ব্যর্থ হয়েছে।

একটি BatchOptimizeTours অনুরোধের সাধারণ জীবনচক্র নিম্নরূপ:

  1. রুট অপটিমাইজেশন এপিআই-তে একটি BatchOptimizeToursRequest জমা দিন, যা একটি LRO-এর রিসোর্স নামটি ফেরত দেয়।
  2. LRO রেসপন্সে done বা error প্রপার্টিগুলো না আসা পর্যন্ত, ফেরত আসা LRO রিসোর্স নামটি দিয়ে GetOperation পোল করতে থাকুন।
  3. যদি done সত্য হয় এবং কোনো ত্রুটি না থাকে, তাহলে BatchOptimizeTours অনুরোধে নির্দিষ্ট করা Google Cloud Storage URI-গুলো থেকে OptimizeToursResponses পড়ুন। যদি error থাকে, তবে ত্রুটিটি পরীক্ষা করুন, সেই অনুযায়ী Google Cloud Storage-এ OptimizeToursRequest গুলো আপডেট করুন এবং প্রাপ্ত ত্রুটির উপর নির্ভর করে যথাযথভাবে পুনরায় চেষ্টা করুন।

আপনি কমান্ড লাইন থেকে অথবা ক্লায়েন্ট লাইব্রেরি ব্যবহার করে বিভিন্ন উপায়ে OptimizeTours এবং BatchOptimizeTours রিকোয়েস্ট পাঠাতে পারেন।

পরবর্তী: একটি এপিআই অনুরোধ করুন