روزنوشت

می نویسم؛ تا به یاد آورم روزی، بودم

روزنوشت

می نویسم؛ تا به یاد آورم روزی، بودم

روزنوشت

من آرزویی ندارم، من از چیزی نمی‌ترسم، من آزادم...

«کازانتزاکیس»

دنبال کنندگان ۲ نفر
این وبلاگ را دنبال کنید
آخرین نظرات

Parse SDK ، ابزاری قدرتمند برای توسعه دهنده گان نرم افزار

پنجشنبه, ۱۴ فروردين ۱۳۹۳، ۰۳:۳۵ ق.ظ

 

این مطلب رو چندماه پیش نوشته بودم، اما منتشرش نکردم، دلیلش این بود که قصد داشتم فقط ابزار رو معرفی نکرده باشم و همه ی قابلیت های این فریم وورک رو در قالب یک یا چند اپلیکیشن اندروید نمایش بدم، اما متاسفانه فرصتش پیش نیومد و تصمیم گرفتم همین مطلب رو منتشر کنم.

این اواخر در یکی از پروژه های اندروید نیاز به استفاده از قابلیت Push Notification داشتم، برای اندروید Google Cloud Messaging یا GCM موجود هست که بسیار هم قدرتمند هست، اما پیاده سازی اون (برای بار اول) کمی زمانبر هست و من فرصت کافی نداشتم.

دنبال یک فریم ورک خوب برای Push Notification بودم که با Parse SDK آشنا شدم.

من بنا به نیازم فقط از قابلیت Push Notification ش استفاده کردم اما قابلیت ها و توانایی های گسترده ی این SDK اون رو تبدیل به یک ابزار مناسب برای توسعه دهندگان نرم افزار می‌کنه. (و بخصوص توسعه دهندگان بدون پشتوانه ی مالی و دانش فنی برای اجاره و مدیریت سرور برای Backend نرم افزار)

 

این فریم ورک قابلیت زیادی داره و سرویس های متنوعی در اختیار برنامه نویس قرار میده از جمله:

  • Push Notification: با این سرویس میتونید به دستگاه هایی که برنامه ی شما رو نصب کردن پیامی رو ارسال کنید که بنا به پیاده سازی شما میتونه بصورت notification نمایش داده بشه و یا خودتون مدیریتش کنید.
  • Analytics: این سرویس قابلیت ساده ی آماری رو در اختیارتون قرار میده که بصورت پیشفرض به شما اطلاع میده چند بار برنامه ی شما باز شده. البته میتونید Eventهای دلخواه رو بهش اضافه کنید (قدرت این سرویس به اندازه ی Flurry یا Google Analytics نیست)
  • Cloud Code: با افزایش میزان نفوذ اینترنت، نیاز به اپلیکیشن هایی که وابسته به وب هستن هر روز بیشتر احساس میشه، شما به عنوان توسعه دهنده به احتمال زیاد به سرویس های تحت وب نیاز پیدا خواهید کرد. هزینه ی راه اندازی سرور برای توسعه دهنده ی های مستقل میتونه مشکل آفرین باشه، این سرویس به شما امکان میده که منطق تحت وب خودتون رو پیاده سازی کنید و در برنامه ازش استفاده کنید، مثلاً کدی داشته باشید که امتیاز کسب شده توسط کاربر رو در بازی در سرور ذخیره کنه و هربار که وارد حسابش شد امتیازش رو نمایش بده
  • File Storage: با ثبت نام در این سرویس 1 گیگابایت ۲۰ گیگابایت فضای ذخیره سازی به شما تعلق می گیره.
  • در کنار اینها این سرویس به شما این امکان رو میده که به سادگی کاربران رو ثبت نام کنید، اجازه ی ورود به حساب کاربریشون رو بدید (Login & Signup)، امکان Login توسط Facebook و Twitter رو به کاربر بدید و این امکان رو دارید که ایمیل کاربر رو Verify کنید. همه ی اینها به سادگی هرچه تمام تر و بدون نیاز به مدیریت شما انجام میشه.
  • پشتیبانی از پلتفرم های مختلف از جمله: Andoid, iOS, Windows Phone 8, JavaScript, OSX, Windows و Unity

 

با طرح رایگان Parse شما 1 میلیون Push Notification در ماه میتونید ارسال کنید می تونید بینهایت Push Notification به ۱ میلیون کاربر منحصربفرد (Unique) در ماه ارسال کنید که خیلی زیاد هست، ۲۰ گیگابایت فضای ذخیره سازی دارید و 1 میلیون API Request درماه ۳۰ Request در ثانیه خواهید داشت که برای بیشتر برنامه ها کافی بنظر میرسه مگر اینکه تعداد کاربرانتون خیلی زیاد باشه و یا درخواست های زیادی رو با هربار باز شدن برنامه به سرور ارسال کنید.

 

در ادامه یک اپلیکیشن اندروید رو می نویسیم که قابلیت های این SDK رو نمایش بده. { امیدوارم فرصتی پیش بیاد تا این نوشته رو تکمیل کنم }

 

آپدیت۱:

جدیداً Parse خیلی از محدودیت ها رو از روی اکانت رایگانش برداشته، الان دیگه تعداد Push Notification در ماه ملاک نیست، بلکه تعداد کاربران ملاک هست، یعنی در ماه برای ۱ میلیون کار Unique، بینهایت Push می تونید ارسال کنید.

همچنین فضای ذخیره سازی به ۲۰ گیگ افزایش پیدا کرده و محدودیت های قبلی مثل قسمت هدف فرار دادن مخاطبان بر اساس فیلد های دیگه (بجز channel) هم برداشته شده.

 

همچنین دیگه محدودیت ۱ میلیون  API Request در ماه وجود نداره و در عوض محدودیت ۳۰ درهواست در ثانیه اعمال شده.

 

همچنین یک ویدئوی آموزشی برای کار با نسخه ی 1.7.1 آماده کردم که در این پست می تونید ببینید

 

نظرات (۵)

امیدوارم بنویسیش
پاسخ:
چشم حامد :)
منم منتظرم
پاسخ:
در آینده ی نزدیک :)
به انجمن برنامه نویس یه سر بزن
خیلی خوب میشد اگه مینوشتینش
پاسخ:
در اولین فرصت :)
سلام
ممنون از توضیحات فوق العاده تون ...

محدودیت ۳۰ درخواست در ثانیه ؟؟
اگر تعداد درخواست ها در ثانیه از 30 بیشتر باشه ارسال نمیشه ؟
بعد این که من چطور می تونم بفهمم که پروژه ی من در حد 1 میلیون کارuniqe هست یا نه ؟؟
یعنی من اگر 20000 کاربر داشته باشم که اپ منو نصب کردن هر روز بخوام به 5000 تاشون نوتیفیکیشن بفرستم ایا همچنان میتونم از امکاناتش به صورت رایگان استفاده کنم؟؟؟

درک 30 در خواست در ثانیه برام مبهمه :)

بازم ممنون از راهنماییاتون 
پاسخ:
در سرویس Parse چیزی وجود داره بعنوان API Request، ساده ترین حالتش این هست که کاربر جدید رو اضافه کنید یا رویداد باز شدن صفحه یا Push Notification رو به سرور بفرستید، تا بهتون آمارهایی رو ارائه بده.
گرچه کاربرد ها بیشتر از این هست چون Parse به شما یک دیتابیس میده، ۲۰ گیگ فضا میده و میتونید کل Backend رو روی سرور Parse ایجاد کنید.

خب اگر مصرف ما از محدوده بیشتر شد چی میشه ؟
اگر کارت اعتباری اضافه کرده باشید که به ازای مازاد مصرف حسابتون شارژ میشه، اگر هم نه، تا زمانی که مصرف بیشتر از حد مجاز باشه، هیچ API Requestی پاسخ داده نمیشه، یعنی کاربر جدید ثبت نمیشه و...

مثلاً برای من زمانی که Push ارسال می کنم این اتفاق می افته، چون تعداد زیادی کاربر همزمان آنلاین میشن و همزمان تعداد زیادی درخواست برای سرور پارس ارسال میشه که اینا Push رو باز کردن. پارس قبل از رسیدن به اون حد بهم ایمیل میده. چون کارت اعتباری ندارم تو حساب پارس، وقتی مصرف از حد گذشت، تا ۱ دقیقه بعدش هیچ درخواستی پاسخ داده نمیشه. تو دقیقه ی بعد اگه بازم مصرف بیشتر از حد مجاز بود، هیچی ثبت نمیشه.
تا زمانی که مصرف بیاد پایین تر از حد مجاز، باز همه چی برمیگرده سرجای اولش و درخواست ها جواب داده میشن.
ضمن اینکه ۳۰ درخواست در ثانیه یعنی ۱۸۰۰ در دقیقه، یعنی اگه تعداد درخواست ها در یک دقیقه بیشتر از ۱۸۰۰ بشه، تا آخر اون دقیقه هیچ درخواستی جواب داده نمیشه.

تو پنلی که بهتون میده میگه چندتا کاربر دارید. شما اگر ۲۰٫۰۰۰ تا کاربر داشته باشید، تو هر ساعت میتونید به همشون هم نوتیفیکیشن بدید، تعداد نوتیفیکیشن ها دیگه ملاک نیست، تعداد کاربرها ملاک هست.

همونطور که گفتم حتی اگر تعداد درخواست ها در یک بازه زمانی بیش از حد بشه، اگه تعدادشون کم بشه بازم جواب میده. اگر هم از حد گذشت، درخواست ها جواب داده نمیشه، اما Push رو می تونید بفرستید.
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی