Catch up on everything we announced at this year's Firebase Summit. Learn more

মেঘ ফাংশন অবস্থানগুলি

ক্লাউড কার্যাবলী যা পরিকাঠামো যা আপনার ক্লাউড ফাংশন সঞ্চালিত হয় নির্দিষ্ট অঞ্চল অবস্থিত এবং Google দ্বারা পরিচালিত জুড়ে redundantly উপলব্ধ হতে হয় মানে আঞ্চলিক হয়, ঐ অঞ্চলে মধ্যে সব অঞ্চল

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

ক্লাউড কার্যাবলী সাথে নিম্নলিখিত অঞ্চলে পাওয়া যায় টিয়ার 1 মূল্যের :

  • us-central1 (আইওয়া)
  • us-east1 (দক্ষিণ ক্যারোলিনা)
  • us-east4 (উত্তর ভার্জিনিয়া)
  • europe-west1 (বেলজিয়াম)
  • europe-west2 (লন্ডন)
  • asia-east1 (তাইওয়ান)
  • asia-east2 (হংকং)
  • asia-northeast1 (টোকিও)
  • asia-northeast2 (ওসাকা)

ক্লাউড কার্যাবলী সাথে নিম্নলিখিত অঞ্চলে পাওয়া যায় টিয়ার 2 মূল্যের :

  • us-west2 (লস এঞ্জেলেস)
  • us-west3 (সল্ট লেক সিটি)
  • us-west4 (লাস ভেগাস)
  • northamerica-northeast1 (মন্ট্রিয়াল)
  • southamerica-east1 (সাও পাওলো)
  • europe-west3 (ফ্রাংকফুর্ট)
  • europe-west6 (জুরিখ)
  • europe-central2 (ওয়ারশ)
  • australia-southeast1 (সিডনি)
  • asia-south1 (মুম্বাই)
  • asia-southeast1 (সিঙ্গাপুর)
  • asia-southeast2 (জাকার্তা)
  • asia-northeast3 (সিউল)

একটি প্রদত্ত প্রকল্পের একটি নির্দিষ্ট অঞ্চলে ফাংশনগুলির অনন্য (কেস সংবেদনশীল) নাম থাকতে হবে, কিন্তু অঞ্চল জুড়ে বা প্রকল্প জুড়ে ফাংশন একই নাম ভাগ করতে পারে।

অঞ্চল পরিবর্তনের জন্য সর্বোত্তম অনুশীলন

ডিফল্টরূপে, ফাংশন চালানোর us-central1 অঞ্চল। লক্ষ্য করুন যে এটি একটি ইভেন্ট উৎসের অঞ্চল থেকে আলাদা হতে পারে, যেমন একটি ক্লাউড স্টোরেজ বালতি। যদি কোন অঞ্চল যেখানে একটি ফাংশন চলে তার পরিবর্তন করার প্রয়োজন হয়, প্রতিটি ফাংশন ট্রিগার প্রকারের জন্য এই বিভাগে সুপারিশগুলি অনুসরণ করুন।

অঞ্চলে, যেখানে একটি ফাংশন রান, সেট সেট করতে region ফাংশন সংজ্ঞা প্যারামিটার হিসাবে দেখানো:

exports.myStorageFunction = functions
    .region('europe-west1')
    .storage
    .object()
    .onFinalize((object) => {
      // ...
    });

আপনি একাধিক কমা দ্বারা পৃথক অঞ্চল স্ট্রিং ক্ষণস্থায়ী একাধিক অঞ্চলে নির্দিষ্ট করতে পারেন functions.region() দেখুন একটি ফাংশন এর অঞ্চল পরিবর্তন বাঞ্ছনীয় পদ্ধতি সম্পর্কে আরও তথ্যের জন্য।

HTTP এবং ক্লায়েন্ট-কলযোগ্য ফাংশন

HTTP এবং কলযোগ্য ফাংশনগুলির জন্য, আমরা সুপারিশ করি যে আপনি প্রথমে আপনার ফাংশনটি গন্তব্য অঞ্চলে সেট করুন, অথবা যেখানে সবচেয়ে বেশি প্রত্যাশিত গ্রাহকরা অবস্থিত তার কাছাকাছি, এবং তারপরে আপনার মূল ফাংশনটি পরিবর্তন করে নতুন HTTP অনুরোধটি নতুন ফাংশনে পুন redনির্দেশিত করুন (তাদের একই হতে পারে নাম)। যদি আপনার HTTP ফাংশনের ক্লায়েন্ট পুন redনির্দেশকে সমর্থন করে, তাহলে আপনি আপনার নতুন ফাংশনের URL সহ HTTP পুন redনির্দেশ অবস্থা (301) ফেরত দিতে আপনার মূল ফাংশনটি পরিবর্তন করতে পারেন। আপনার ক্লায়েন্ট পুনঃনির্দেশ ভাল হ্যান্ডেল না থাকে, তাহলে আপনি নতুন ফাংশন মূল ফাংশন থেকে একটি নতুন অনুরোধ সূচনা দ্বারা প্রক্সি নতুন ফাংশন মূল ফাংশন থেকে অনুরোধ করতে পারেন। চূড়ান্ত পদক্ষেপ হল নিশ্চিত করা যে সমস্ত ক্লায়েন্ট নতুন ফাংশন কল করছে।

কলযোগ্য ফাংশনের জন্য ক্লায়েন্ট-সাইড লোকেশন সিলেকশন

কলযোগ্য ফাংশন সম্পর্কে, ক্লায়েন্ট কলযোগ্য সেটআপগুলি HTTP ফাংশনগুলির মতো একই নির্দেশিকা অনুসরণ করা উচিত। ক্লায়েন্টকে একটি অঞ্চল নির্দিষ্ট করতে পারেন, এবং তাই করতে হবে ফাংশন কোনো ছাড়া অন্য অঞ্চলের চালায় তাহলে us-central1

ক্লায়েন্টে অঞ্চল সেট করতে, আরম্ভের সময় কাঙ্ক্ষিত অঞ্চলটি নির্দিষ্ট করুন:

সুইফট

lazy var functions = Functions.functions(region:"europe-west1")

উদ্দেশ্য গ

@property(strong, nonatomic) FIRFunctions *functions;
// ...
self.functions = [FIRFunctions functionsWithRegion:@"europe-west1"];

ওয়েব


var functions = firebase.app().functions('europe-west1');

অ্যান্ড্রয়েড

private FirebaseFunctions mFunctions;
// ...
mFunctions = FirebaseFunctions.getInstance("europe-west1");

সি ++

firebase::functions::Functions* functions;
// ...
functions = firebase::functions::Functions::GetInstance("europe-west1");

Unক্য

firebase.Functions.FirebaseFunctions functions;

functions = Firebase.Functions.FirebaseFunctions.GetInstance("europe-west1");

ব্যাকগ্রাউন্ড ফাংশন

ব্যাকগ্রাউন্ড ফাংশন কমপক্ষে একবার ইভেন্ট ডেলিভারি শব্দার্থ গ্রহণ করে, যার মানে হল যে কিছু পরিস্থিতিতে তারা ডুপ্লিকেট ইভেন্ট পেতে পারে। সুতরাং, আপনি ফাংশন বাস্তবায়ন হতে হবে idempotent । যদি আপনার ফাংশন ইতিমধ্যেই অসাধারণ হয়, তাহলে আপনি একই ইভেন্ট ট্রিগার দিয়ে নতুন অঞ্চলে ফাংশনটি পুনরায় স্থাপন করতে পারেন এবং নতুন ফাংশনটি সঠিকভাবে ট্র্যাফিক পাচ্ছে তা যাচাই করার পরে পুরানো ফাংশনটি সরিয়ে ফেলতে পারেন। এই রূপান্তরের সময়, উভয় ফাংশন ইভেন্টগুলি গ্রহণ করবে। দেখুন একটি ফাংশন এর অঞ্চল পরিবর্তন কমান্ড সুপারিশকৃত ক্রম কাজকর্মের জন্য অঞ্চলে পরিবর্তন করার জন্য।

যদি আপনার ফাংশন বর্তমানে আদর্শহীন না হয়, অথবা এর আদর্শ শক্তি এই অঞ্চলের বাইরে প্রসারিত না হয়, তাহলে আমরা সুপারিশ করি যে আপনি প্রথমে ফাংশনটি সরানোর আগে আইডিম্পোটেন্সি প্রয়োগ করুন।

অনুকূল অঞ্চলের সুপারিশগুলি ইভেন্ট ট্রিগার প্রকারের দ্বারা পৃথক হয়:

ট্রিগার টাইপ অঞ্চল সুপারিশ
ক্লাউড ফায়ারস্টোর ক্লাউড ফায়ারস্টোর উদাহরণের নিকটতম অঞ্চল (পরবর্তী বিভাগ দেখুন)
রিয়েলটাইম ডাটাবেস সর্বদা us-central1
মেঘ স্টোরেজ ক্লাউড স্টোরেজ বালতি অবস্থানের নিকটতম অঞ্চল (পরবর্তী বিভাগ দেখুন)
অন্যান্য যদি আপনি একটি রিয়েলটাইম ডাটাবেস উদাহরণ, একটি ক্লাউড ফায়ারস্টোর উদাহরণ, বা ফাংশনের ভিতরে একটি ক্লাউড স্টোরেজ বালতির সাথে ইন্টারঅ্যাক্ট করছেন, তাহলে প্রস্তাবিত অঞ্চলটি একই রকম যদি আপনি সেই সংস্থানগুলির মধ্যে একটি দ্বারা চালু একটি ফাংশন করেন। তা না হলে, ডিফল্ট অঞ্চল ব্যবহার us-central1 । এছাড়াও মনে রাখবেন Firebase সংযুক্ত ফাংশন হোস্টিং অবস্থিত হওয়া আবশ্যক us-central1

ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজ অবস্থানের উপর ভিত্তি করে অঞ্চল নির্বাচন করা

ফাংশনগুলির জন্য উপলব্ধ অঞ্চলগুলি সবসময় আপনার ক্লাউড ফায়ারস্টোর ডাটাবেস এবং আপনার ক্লাউড স্টোরেজ বালতিগুলির জন্য উপলব্ধ অঞ্চলের সাথে সঠিকভাবে মেলে না।

নোট আপনার ফাংশন এবং আপনার সংস্থান (ডাটাবেস ইনস্ট্যান্স বা ক্লাউড স্টোরেজ বালতি) বিভিন্ন স্থানে হয়, তাহলে আপনি সম্ভাব্য অভিজ্ঞতা লেটেন্সি বৃদ্ধি এবং পারে যে বিলিং খরচ

এখানে নিকটতম ফাংশন সমর্থিত ক্লাউড Firestore এবং ক্লাউড স্টোরেজ জন্য অঞ্চলে একটি ম্যাপিং, মামলা জন্য যেখানে একই অঞ্চলে সমর্থিত নয় আছে:

ক্লাউড ফায়ারস্টোর এবং ক্লাউড স্টোরেজের জন্য অঞ্চল/বহু-অঞ্চল ফাংশনের জন্য নিকটতম অঞ্চল
nam5 বা us-central (বহু-অঞ্চল) us-central1
eur3 বা europe-west (বহু-অঞ্চল) europe-west1
asia-south1 (মুম্বাই) asia-east2