با توابع ابری چه کاری می توانید انجام دهید؟

Cloud Functions به توسعه دهندگان امکان دسترسی به رویدادهای Firebase و Google Cloud را به همراه قدرت محاسباتی مقیاس پذیر برای اجرای کد در پاسخ به آن رویدادها می دهد. در حالی که انتظار می‌رود برنامه‌های Firebase از توابع Cloud به روش‌های منحصربه‌فردی برای برآوردن نیازهای منحصربه‌فرد خود استفاده کنند، موارد استفاده معمولی ممکن است در این زمینه‌ها قرار بگیرند:

موارد استفاده و مثال‌ها را برای هر دسته‌ای که مورد علاقه‌تان است مرور کنید، و سپس به آموزش شروع ما یا راهنمای نحوه خاص رویدادهای احراز هویت ، رویدادهای تحلیلی و موارد دیگر بروید.

هنگامی که اتفاق جالبی می افتد به کاربران اطلاع دهید

توسعه‌دهندگان می‌توانند Cloud Functions استفاده کنند تا کاربران را درگیر و به‌روز نگه دارند تا اطلاعات مربوط به یک برنامه را به‌روز کنند. به عنوان مثال، اپلیکیشنی را در نظر بگیرید که به کاربران امکان می دهد فعالیت های یکدیگر را در برنامه دنبال کنند. هر بار که کاربر خود را به عنوان دنبال کننده کاربر دیگری اضافه می کند، یک نوشتن در Realtime Database رخ می دهد. سپس این رویداد نوشتن می‌تواند عملکردی را برای ایجاد اعلان‌های Firebase Cloud Messaging (FCM) راه‌اندازی کند تا به کاربران مناسب اطلاع دهد که دنبال‌کنندگان جدیدی به دست آورده‌اند.

نموداری که جریان برنامه را نشان می دهد که در زیر توضیح داده شده است

  1. این تابع در مسیر Realtime Database که در آن فالوورها ذخیره می شوند، نوشتن را آغاز می کند.
  2. تابع یک پیام برای ارسال از طریق FCM می سازد.
  3. FCM پیام اعلان را به دستگاه کاربر ارسال می کند.

برای بررسی کد کار، کد نمونه را در GitHub ببینید:

موارد استفاده جالب دیگر از اعلان ها

  • برای کاربرانی که در یک خبرنامه مشترک هستند ایمیل های تایید ارسال کنید.
  • هنگامی که کاربر ثبت نام خود را کامل کرد، یک ایمیل خوش آمدگویی ارسال کنید.
  • هنگامی که کاربر یک حساب کاربری جدید ایجاد می کند، یک پیامک تأیید ارسال کنید.

انجام پاکسازی و نگهداری پایگاه داده

با مدیریت رویداد پایگاه داده Cloud Functions ، می توانید Realtime Database یا Cloud Firestore را در پاسخ به رفتار کاربر تغییر دهید و سیستم را در وضعیت دلخواه خود نگه دارید. برای مثال، می‌توانید رویدادهای نوشتن را نظارت کنید و قالب (مثلاً تغییر به تمام حروف بزرگ) رشته‌های خاص در پیام‌های کاربران را تغییر دهید. در اینجا این است که چگونه می تواند کار کند:

نموداری که جریان برنامه را نشان می دهد که در زیر توضیح داده شده است

  1. کنترل کننده رویداد پایگاه داده تابع به رویدادهای نوشتن در یک مسیر خاص گوش می دهد و داده های رویداد حاوی متن یک پیام را بازیابی می کند.
  2. تابع متن را پردازش می کند تا رشته ها را به حروف بزرگ تغییر دهد.
  3. تابع متن به روز شده را به پایگاه داده باز می نویسد.

برای بررسی کد کار، کد نمونه را در GitHub ببینید:

سایر موارد استفاده از پاکسازی و نگهداری پایگاه داده

  • محتوای کاربر حذف شده را از Realtime Database پاک کنید.
  • تعداد گره های فرزند را در پایگاه داده Firebase محدود کنید.
  • تعداد عناصر موجود در لیست Realtime Database را ردیابی کنید.
  • داده ها را از Realtime Database در Google Cloud BigQuery کپی کنید.
  • تبدیل متن به ایموجی
  • مدیریت ابرداده های محاسبه شده برای سوابق پایگاه داده.

کارهای فشرده را در فضای ابری به جای برنامه خود اجرا کنید

می‌توانید به جای اجرای آن بر روی دستگاه کاربر، از Cloud Functions برای بارگذاری روی کار فشرده Google cloud (CPU یا شبکه‌سازی سنگین) استفاده کنید و پاسخگویی برنامه خود را بهبود بخشید. به عنوان مثال، می‌توانید تابعی بنویسید تا به آپلود تصاویر در Cloud Storage گوش دهد، تصویر را در نمونه‌ای که عملکرد را اجرا می‌کند دانلود کنید، آن را تغییر دهید و دوباره به Cloud Storage آپلود کنید. تغییرات شما می تواند شامل تغییر اندازه، برش یا تبدیل تصاویر با ابزارهایی مانند شارپ یا Pillow باشد.

نموداری که جریان برنامه را نشان می دهد که در زیر توضیح داده شده است

  1. زمانی که یک فایل تصویری در Cloud Storage آپلود می‌شود، یک تابع فعال می‌شود.
  2. این تابع تصویر را دانلود می کند و یک نسخه کوچک از آن ایجاد می کند.
  3. تابع آن مکان تصویر کوچک را در پایگاه داده می نویسد، بنابراین یک برنامه مشتری می تواند آن را پیدا کرده و استفاده کند.
  4. این تابع تصویر کوچک را در مکانی جدید به Cloud Storage بارگذاری می‌کند.
  5. برنامه لینک تصویر کوچک را دانلود می کند.

برای توضیح یک مثال پردازش تصویر، راهنمای مدیریت رویدادهای Cloud Storage را ببینید.

نمونه های دیگر از کارهای دسته ای در فضای ابری Firebase

  • حذف دوره ای حساب های Firebase استفاده نشده Node.js | پایتون .
  • پشتیبان گیری خودکار از تصاویر آپلود شده Node.js | پایتون .
  • ارسال ایمیل انبوه برای کاربران
  • داده ها را به صورت دوره ای جمع آوری و خلاصه کنید.
  • یک صف از کار معلق را پردازش کنید.

با سرویس ها و API های شخص ثالث یکپارچه شوید

Cloud Functions می‌تواند به برنامه شما کمک کند با تماس و افشای APIهای وب، با سرویس‌های دیگر بهتر کار کند. به عنوان مثال، برنامه ای که برای همکاری در توسعه استفاده می شود، می تواند تعهدات GitHub را در یک اتاق گفتگوی گروه کاری ارسال کند.

نموداری که جریان برنامه را نشان می دهد که در زیر توضیح داده شده است

  1. یک کاربر تعهدات را به مخزن GitHub فشار می دهد.
  2. یک تابع HTTPS از طریق GitHub webhook API فعال می شود.
  3. این تابع اعلان commit را به کانال Slack تیم ارسال می کند.

راه های دیگر برای ادغام با سرویس ها و API های شخص ثالث

  • از Google Cloud Vision API برای تجزیه و تحلیل و برچسب گذاری تصاویر آپلود شده استفاده کنید.
  • پیام ها را با استفاده از Google Translate ترجمه کنید.
  • از تأیید سفارشی برای ورود کاربران استفاده کنید.
  • ارسال درخواست به وب هوک در Realtime Database می نویسد.
  • جستجوی متن کامل را در عناصر Realtime Database فعال کنید.
  • پردازش پرداخت از سوی کاربران
  • ایجاد پاسخ خودکار به تماس های تلفنی و پیام های SMS.
  • با استفاده از Google Assistant یک چت بات ایجاد کنید.