এই নির্দেশিকাটি নিরাপত্তা, কর্মক্ষমতা এবং ব্যবহারের দিক থেকে আপনার Google Maps API-এর ব্যবহার অপ্টিমাইজ করার জন্য বেশ কয়েকটি কৌশল বর্ণনা করে।
নিরাপত্তা
নিরাপত্তার সর্বোত্তম অনুশীলন পর্যালোচনা করা
API কীগুলি হল প্রকল্প-কেন্দ্রিক শংসাপত্র যা ব্যবহারকারীর আইডি এবং পাসওয়ার্ডের মতো একই সতর্কতার দাবি রাখে। আপনার কীগুলিকে অনিচ্ছাকৃত ব্যবহার থেকে সুরক্ষিত রাখতে API সুরক্ষার সেরা অনুশীলনগুলি পর্যালোচনা করুন যা আপনার অ্যাকাউন্টে অযাচিত কোটা ব্যবহার এবং অপ্রত্যাশিত চার্জের কারণ হতে পারে।
মানচিত্র API অ্যাক্সেস করতে API কী ব্যবহার করা
গুগল ম্যাপস এপিআই অ্যাক্সেস করার জন্য API কীগুলি পছন্দের প্রমাণীকরণ পদ্ধতি। ক্লায়েন্ট আইডি ব্যবহার করা এখনও সমর্থিত হলেও, API কীগুলি সূক্ষ্ম নিরাপত্তা নিয়ন্ত্রণ সমর্থন করে এবং নির্দিষ্ট ওয়েব ঠিকানা, আইপি ঠিকানা এবং মোবাইল SDK (Android এবং iOS) এর সাথে কাজ করার জন্য টিউন করা যেতে পারে। একটি API কী তৈরি এবং সুরক্ষিত করার বিষয়ে তথ্যের জন্য, প্রতিটি API বা SDK এর জন্য "একটি API কী ব্যবহার করা" পৃষ্ঠায় যান। (উদাহরণস্বরূপ, মানচিত্র জাভাস্ক্রিপ্ট এপিআই এর জন্য, একটি API কী ব্যবহার করা সম্পর্কে এর পৃষ্ঠাটি দেখুন।)
কর্মক্ষমতা
ত্রুটিগুলি পরিচালনা করতে সূচকীয় ব্যাকঅফ ব্যবহার করা
যদি আপনার অ্যাপগুলি অল্প সময়ের মধ্যে API কল করার জন্য অতিরিক্ত প্রচেষ্টার ফলে ত্রুটির সম্মুখীন হয়, যেমন কোটা ত্রুটি, তাহলে অনুরোধগুলি প্রক্রিয়া করার জন্য সূচকীয় ব্যাকঅফ ব্যবহার করার কথা বিবেচনা করুন। 500 এর দশকের ত্রুটির জন্য সূচকীয় ব্যাকঅফ সবচেয়ে কার্যকর।
 বিশেষ করে, আপনার প্রশ্নের গতি সামঞ্জস্য করুন। আপনার কোডে, প্রশ্নের মধ্যে S সেকেন্ডের অপেক্ষার সময়কাল যোগ করুন। যদি কোয়েরির পরেও কোটা ত্রুটি দেখা দেয়, তাহলে অপেক্ষার সময়কাল দ্বিগুণ করুন এবং তারপরে আরেকটি প্রশ্ন পাঠান। ত্রুটি ছাড়াই প্রশ্নটি ফিরে না আসা পর্যন্ত অপেক্ষার সময়কাল সামঞ্জস্য করতে থাকুন। 
চাহিদা অনুযায়ী ব্যবহারকারী-ইন্টারঅ্যাকশন অনুরোধ পাঠানো হচ্ছে
 ব্যবহারকারীর ইন্টারঅ্যাকশন অন্তর্ভুক্ত API গুলিতে অনুরোধগুলি কেবল চাহিদা অনুসারে পাঠানো উচিত। এর অর্থ হল API অনুরোধ শুরু করার জন্য শেষ ব্যবহারকারীর কোনও ক্রিয়া (যেমন on-click ) সম্পাদনের জন্য অপেক্ষা করা, তারপর ফলাফলগুলি ব্যবহার করে একটি মানচিত্র লোড করা, একটি গন্তব্য নির্ধারণ করা বা উপযুক্ত তথ্য প্রদর্শন করা। একটি অন-ডিমান্ড পদ্ধতি ব্যবহার করলে API গুলিতে অপ্রয়োজনীয় অনুরোধগুলি এড়ানো যায়, API খরচ হ্রাস পায়। 
মানচিত্র সরানোর সময় ওভারলে কন্টেন্ট প্রদর্শন এড়িয়ে চলুন
 ব্যবহারকারী যখন মানচিত্রটি সরাতে পারেন, তখনই মানচিত্রে কাস্টম ওভারলে কন্টেন্ট প্রদর্শনের জন্য Draw() ব্যবহার করা এড়িয়ে চলুন। যেহেতু ব্যবহারকারী যখনই মানচিত্রটি সরাতে চান তখনই মানচিত্রটি পুনরায় আঁকা হয়, তাই একই সময়ে মানচিত্রে ওভারলে কন্টেন্ট রাখলে ল্যাগ বা ভিজ্যুয়াল তোতলামি হতে পারে। ব্যবহারকারী প্যানিং বা জুম করা বন্ধ করার পরেই কেবল মানচিত্র থেকে ওভারলে কন্টেন্ট যোগ করুন বা সরান। 
Draw পদ্ধতিতে নিবিড় ক্রিয়াকলাপ এড়ানো
 সাধারণ নিয়ম হিসেবে, Draw() পদ্ধতিতে কর্মক্ষমতা-নিবিড় নন-ড্রয়িং অপারেশন এড়িয়ে চলা ভালো অভ্যাস। উদাহরণস্বরূপ, আপনার Draw() পদ্ধতি কোডে নিম্নলিখিতগুলি এড়িয়ে চলুন:
- যেসব প্রশ্ন প্রচুর পরিমাণে কন্টেন্ট ফেরত দেয়।
 - প্রদর্শিত তথ্যে অনেক পরিবর্তন।
 - অনেক ডকুমেন্ট অবজেক্ট মডেল (DOM) উপাদানের হেরফের করা।
 
এই ক্রিয়াকলাপগুলি কর্মক্ষমতা ধীর করে দিতে পারে এবং মানচিত্র রেন্ডার করার সময় ল্যাগ বা ভিজ্যুয়াল তোতলানো শুরু করতে পারে।
মার্কারগুলির জন্য রাস্টার চিত্র ব্যবহার করা
মানচিত্রে অবস্থান শনাক্ত করার জন্য মার্কার যোগ করার সময় .PNG বা .JPG ফর্ম্যাটের ছবিগুলির মতো রাস্টার ছবি ব্যবহার করুন। স্কেলেবল ভেক্টর গ্রাফিক্স (SVG) ছবি ব্যবহার করা এড়িয়ে চলুন, কারণ SVG ছবি রেন্ডার করার ফলে মানচিত্রটি পুনরায় আঁকার সময় ল্যাগ তৈরি হতে পারে।
মার্কার অপ্টিমাইজ করা হচ্ছে
অপ্টিমাইজেশন একাধিক মার্কারকে একটি স্ট্যাটিক এলিমেন্ট হিসেবে রেন্ডার করে কর্মক্ষমতা বৃদ্ধি করে। এটি সেইসব ক্ষেত্রে কার্যকর যেখানে প্রচুর সংখ্যক মার্কার প্রয়োজন হয়। ডিফল্টরূপে, Maps JavaScript API সিদ্ধান্ত নেবে যে কোনও মার্কার অপ্টিমাইজ করা হবে কিনা। যখন প্রচুর সংখ্যক মার্কার থাকে, তখন Maps JavaScript API অপ্টিমাইজেশন সহ মার্কার রেন্ডার করার চেষ্টা করবে। সমস্ত মার্কার অপ্টিমাইজ করা যাবে না; কিছু পরিস্থিতিতে, Maps JavaScript API-কে অপ্টিমাইজেশন ছাড়াই মার্কার রেন্ডার করতে হতে পারে। অ্যানিমেটেড GIF বা PNG-এর জন্য অপ্টিমাইজ করা রেন্ডারিং অক্ষম করুন, অথবা যখন প্রতিটি মার্কারকে আলাদা DOM এলিমেন্ট হিসেবে রেন্ডার করতে হবে।
মার্কার প্রদর্শন পরিচালনা করার জন্য ক্লাস্টার তৈরি করা হচ্ছে
মানচিত্রে অবস্থান সনাক্ত করার জন্য মার্কার প্রদর্শন পরিচালনা করতে, মার্কার ক্লাস্টারার লাইব্রেরি ব্যবহার করে একটি মার্কার ক্লাস্টার তৈরি করুন। মার্কার ক্লাস্টারার লাইব্রেরিতে নিম্নলিখিত বিকল্পগুলি অন্তর্ভুক্ত রয়েছে:
- গ্রিডের আকার, একটি ক্লাস্টারে একসাথে গ্রুপ করার জন্য মার্কার সংখ্যা নির্দিষ্ট করার জন্য।
 - সর্বোচ্চ জুম, ক্লাস্টারটি প্রদর্শনের জন্য সর্বোচ্চ জুম স্তর নির্দিষ্ট করতে।
 - চিত্র পাথ, গ্রাফিক্স চিত্রগুলিকে মার্কার আইকন হিসেবে ব্যবহারের জন্য।
 
খরচ
বাজেট তৈরি, কোটা পরিবর্তন এবং সতর্কতা সেট করা সহ আপনার Google Maps প্ল্যাটফর্মের খরচ পরিচালনা করার বিষয়ে তথ্যের জন্য, খরচ পরিচালনা করুন দেখুন।
,এই নির্দেশিকাটি নিরাপত্তা, কর্মক্ষমতা এবং ব্যবহারের দিক থেকে আপনার Google Maps API-এর ব্যবহার অপ্টিমাইজ করার জন্য বেশ কয়েকটি কৌশল বর্ণনা করে।
নিরাপত্তা
নিরাপত্তার সর্বোত্তম অনুশীলন পর্যালোচনা করা
API কীগুলি হল প্রকল্প-কেন্দ্রিক শংসাপত্র যা ব্যবহারকারীর আইডি এবং পাসওয়ার্ডের মতো একই সতর্কতার দাবি রাখে। আপনার কীগুলিকে অনিচ্ছাকৃত ব্যবহার থেকে সুরক্ষিত রাখতে API সুরক্ষার সেরা অনুশীলনগুলি পর্যালোচনা করুন যা আপনার অ্যাকাউন্টে অযাচিত কোটা ব্যবহার এবং অপ্রত্যাশিত চার্জের কারণ হতে পারে।
মানচিত্র API অ্যাক্সেস করতে API কী ব্যবহার করা
গুগল ম্যাপস এপিআই অ্যাক্সেস করার জন্য API কীগুলি পছন্দের প্রমাণীকরণ পদ্ধতি। ক্লায়েন্ট আইডি ব্যবহার করা এখনও সমর্থিত হলেও, API কীগুলি সূক্ষ্ম নিরাপত্তা নিয়ন্ত্রণ সমর্থন করে এবং নির্দিষ্ট ওয়েব ঠিকানা, আইপি ঠিকানা এবং মোবাইল SDK (Android এবং iOS) এর সাথে কাজ করার জন্য টিউন করা যেতে পারে। একটি API কী তৈরি এবং সুরক্ষিত করার বিষয়ে তথ্যের জন্য, প্রতিটি API বা SDK এর জন্য "একটি API কী ব্যবহার করা" পৃষ্ঠায় যান। (উদাহরণস্বরূপ, মানচিত্র জাভাস্ক্রিপ্ট এপিআই এর জন্য, একটি API কী ব্যবহার করা সম্পর্কে এর পৃষ্ঠাটি দেখুন।)
কর্মক্ষমতা
ত্রুটিগুলি পরিচালনা করতে সূচকীয় ব্যাকঅফ ব্যবহার করা
যদি আপনার অ্যাপগুলি অল্প সময়ের মধ্যে API কল করার জন্য অতিরিক্ত প্রচেষ্টার ফলে ত্রুটির সম্মুখীন হয়, যেমন কোটা ত্রুটি, তাহলে অনুরোধগুলি প্রক্রিয়া করার জন্য সূচকীয় ব্যাকঅফ ব্যবহার করার কথা বিবেচনা করুন। 500 এর দশকের ত্রুটির জন্য সূচকীয় ব্যাকঅফ সবচেয়ে কার্যকর।
 বিশেষ করে, আপনার প্রশ্নের গতি সামঞ্জস্য করুন। আপনার কোডে, প্রশ্নের মধ্যে S সেকেন্ডের অপেক্ষার সময়কাল যোগ করুন। যদি কোয়েরির পরেও কোটা ত্রুটি দেখা দেয়, তাহলে অপেক্ষার সময়কাল দ্বিগুণ করুন এবং তারপরে আরেকটি প্রশ্ন পাঠান। ত্রুটি ছাড়াই প্রশ্নটি ফিরে না আসা পর্যন্ত অপেক্ষার সময়কাল সামঞ্জস্য করতে থাকুন। 
চাহিদা অনুযায়ী ব্যবহারকারী-ইন্টারঅ্যাকশন অনুরোধ পাঠানো হচ্ছে
 ব্যবহারকারীর ইন্টারঅ্যাকশন অন্তর্ভুক্ত API গুলিতে অনুরোধগুলি কেবল চাহিদা অনুসারে পাঠানো উচিত। এর অর্থ হল API অনুরোধ শুরু করার জন্য শেষ ব্যবহারকারীর কোনও ক্রিয়া (যেমন on-click ) সম্পাদনের জন্য অপেক্ষা করা, তারপর ফলাফলগুলি ব্যবহার করে একটি মানচিত্র লোড করা, একটি গন্তব্য নির্ধারণ করা বা উপযুক্ত তথ্য প্রদর্শন করা। একটি অন-ডিমান্ড পদ্ধতি ব্যবহার করলে API গুলিতে অপ্রয়োজনীয় অনুরোধগুলি এড়ানো যায়, API খরচ হ্রাস পায়। 
মানচিত্র সরানোর সময় ওভারলে কন্টেন্ট প্রদর্শন এড়িয়ে চলুন
 ব্যবহারকারী যখন মানচিত্রটি সরাতে পারেন, তখনই মানচিত্রে কাস্টম ওভারলে কন্টেন্ট প্রদর্শনের জন্য Draw() ব্যবহার করা এড়িয়ে চলুন। যেহেতু ব্যবহারকারী যখনই মানচিত্রটি সরাতে চান তখনই মানচিত্রটি পুনরায় আঁকা হয়, তাই একই সময়ে মানচিত্রে ওভারলে কন্টেন্ট রাখলে ল্যাগ বা ভিজ্যুয়াল তোতলামি হতে পারে। ব্যবহারকারী প্যানিং বা জুম করা বন্ধ করার পরেই কেবল মানচিত্র থেকে ওভারলে কন্টেন্ট যোগ করুন বা সরান। 
Draw পদ্ধতিতে নিবিড় ক্রিয়াকলাপ এড়ানো
 সাধারণ নিয়ম হিসেবে, Draw() পদ্ধতিতে কর্মক্ষমতা-নিবিড় নন-ড্রয়িং অপারেশন এড়িয়ে চলা ভালো অভ্যাস। উদাহরণস্বরূপ, আপনার Draw() পদ্ধতি কোডে নিম্নলিখিতগুলি এড়িয়ে চলুন:
- যেসব প্রশ্ন প্রচুর পরিমাণে কন্টেন্ট ফেরত দেয়।
 - প্রদর্শিত তথ্যে অনেক পরিবর্তন।
 - অনেক ডকুমেন্ট অবজেক্ট মডেল (DOM) উপাদানের হেরফের করা।
 
এই ক্রিয়াকলাপগুলি কর্মক্ষমতা ধীর করে দিতে পারে এবং মানচিত্র রেন্ডার করার সময় ল্যাগ বা ভিজ্যুয়াল তোতলানো শুরু করতে পারে।
মার্কারগুলির জন্য রাস্টার চিত্র ব্যবহার করা
মানচিত্রে অবস্থান শনাক্ত করার জন্য মার্কার যোগ করার সময় .PNG বা .JPG ফর্ম্যাটের ছবিগুলির মতো রাস্টার ছবি ব্যবহার করুন। স্কেলেবল ভেক্টর গ্রাফিক্স (SVG) ছবি ব্যবহার করা এড়িয়ে চলুন, কারণ SVG ছবি রেন্ডার করার ফলে মানচিত্রটি পুনরায় আঁকার সময় ল্যাগ তৈরি হতে পারে।
মার্কার অপ্টিমাইজ করা হচ্ছে
অপ্টিমাইজেশন একাধিক মার্কারকে একটি স্ট্যাটিক এলিমেন্ট হিসেবে রেন্ডার করে কর্মক্ষমতা বৃদ্ধি করে। এটি সেইসব ক্ষেত্রে কার্যকর যেখানে প্রচুর সংখ্যক মার্কার প্রয়োজন হয়। ডিফল্টরূপে, Maps JavaScript API সিদ্ধান্ত নেবে যে কোনও মার্কার অপ্টিমাইজ করা হবে কিনা। যখন প্রচুর সংখ্যক মার্কার থাকে, তখন Maps JavaScript API অপ্টিমাইজেশন সহ মার্কার রেন্ডার করার চেষ্টা করবে। সমস্ত মার্কার অপ্টিমাইজ করা যাবে না; কিছু পরিস্থিতিতে, Maps JavaScript API-কে অপ্টিমাইজেশন ছাড়াই মার্কার রেন্ডার করতে হতে পারে। অ্যানিমেটেড GIF বা PNG-এর জন্য অপ্টিমাইজ করা রেন্ডারিং অক্ষম করুন, অথবা যখন প্রতিটি মার্কারকে আলাদা DOM এলিমেন্ট হিসেবে রেন্ডার করতে হবে।
মার্কার প্রদর্শন পরিচালনা করার জন্য ক্লাস্টার তৈরি করা হচ্ছে
মানচিত্রে অবস্থান সনাক্ত করার জন্য মার্কার প্রদর্শন পরিচালনা করতে, মার্কার ক্লাস্টারার লাইব্রেরি ব্যবহার করে একটি মার্কার ক্লাস্টার তৈরি করুন। মার্কার ক্লাস্টারার লাইব্রেরিতে নিম্নলিখিত বিকল্পগুলি অন্তর্ভুক্ত রয়েছে:
- গ্রিডের আকার, একটি ক্লাস্টারে একসাথে গ্রুপ করার জন্য মার্কার সংখ্যা নির্দিষ্ট করার জন্য।
 - সর্বোচ্চ জুম, ক্লাস্টারটি প্রদর্শনের জন্য সর্বোচ্চ জুম স্তর নির্দিষ্ট করতে।
 - চিত্র পাথ, গ্রাফিক্স চিত্রগুলিকে মার্কার আইকন হিসেবে ব্যবহারের জন্য।
 
খরচ
বাজেট তৈরি, কোটা পরিবর্তন এবং সতর্কতা সেট করা সহ আপনার Google Maps প্ল্যাটফর্মের খরচ পরিচালনা করার বিষয়ে তথ্যের জন্য, খরচ পরিচালনা করুন দেখুন।