مشاركة عبر


استخدام Java وGradle لإنشاء دالة ونشرها إلى Azure

توضح هذه المقالة كيفية إنشاء مشروع دالة Java ونشره إلى Azure Functions باستخدام أداة سطر الأوامر Gradle. عند الانتهاء من ذلك، يتم تشغيل التعليمات البرمجية للدالة في Azure في خطة استضافة بلا خادم ويتم تشغيلها بواسطة طلب HTTP.

Note

إذا لم تكن Gradle هي أداة التطوير المفضلة لديك ، فراجع برامجنا التعليمية المماثلة لمطوري Java باستخدام Maven و IntelliJ IDEA و VS Code.

Prerequisites

لتطوير الدالات باستخدام Java، يجب أن يكون ما يلي مثبتًا لديك:

تحتاج أيضًا إلى اشتراك Azure نشط. إذا لم يكن لديك حساب Azure، فأنشئ حساباً مجانياً قبل أن تبدأ.

Important

يجب تحديد متغير بيئة التشغيل JAVA_HOME على مكان تثبيت JDK لإكمال هذا التشغيل السريع.

إعداد مشروع دالات

استخدم الأمر التالي لنسخ نموذج المشروع:

git clone https://github.com/Azure-Samples/azure-functions-samples-java.git
cd azure-functions-samples-java/triggers-bindings

افتح build.gradle وقم بتغيير appName في المقطع التالي إلى اسم فريد لتجنب تعارض اسم المجال عند التوزيع إلى Azure.

azurefunctions {
    resourceGroup = 'java-functions-group'
    appName = 'azure-functions-sample-demo'
    pricingTier = 'Consumption'
    region = 'westus'
    runtime {
      os = 'windows'
    }
    localDebug = "transport=dt_socket,server=y,suspend=n,address=5005"
}

افتح ملف Function.java الجديد من مسار src / main / java في محرر نصوص وراجع التعليمات البرمجية التي تم إنشاؤها. هذه التعليمات البرمجية هي دالة يتم تشغيلها بواسطة HTTP تعكس نص الطلب.

تشغيل الدالة محليًا

قم بتشغيل الأمر التالي لإنشاء مشروع الدالة ثم تشغيله:

gradle jar --info
gradle azureFunctionsRun

تشاهد الإخراج كما يلي من Azure Functions Core Tools عند تشغيل المشروع محليًا:

...

Now listening on: http://0.0.0.0:7071
Application started. Press Ctrl+C to shut down.

Http Functions:

    HttpExample: [GET,POST] http://localhost:7071/api/HttpExample
...

قم بتشغيل الدالة من سطر الأوامر باستخدام الأمر cURL التالي في نافذة محطة طرفية جديدة:

curl -w "\n" http://localhost:7071/api/HttpExample --data AzureFunctions

الإخراج المتوقع هو التالي:

Hello, AzureFunctions

Note

إذا قمت بتعيين authLevel إلى FUNCTION أو ADMIN، فإن مفتاح الوصول غير مطلوب عند التشغيل محليا.

استخدم Ctrl+C في المحطة لإيقاف التعليمة البرمجية للدالة.

نشر الدالة في Azure

يتم إنشاء تطبيق الدالات والموارد ذات الصلة في Azure عند توزيع تطبيق الدالات لأول مرة. قبل أن تتمكن من النشر، استخدم الأمر az login Azure CLI لتسجيل الدخول إلى اشتراك Azure.

az login

Tip

إذا كان حسابك يمكنه الوصول إلى اشتراكات متعددة، فاستخدم az account set لتعيين الاشتراك الافتراضي لهذه الجلسة.

استخدم الأمر التالي لنشر المشروع إلى تطبيق دالة جديد.

gradle azureFunctionsDeploy

يؤدي هذا إلى إنشاء الموارد التالية في Azure، استنادًا إلى القيم الموجودة في ملف build.gradle:

  • مجموعة الموارد. تمت تسميته بمجموعة الموارد التي قمت بتوفيرها.
  • حساب التخزين. مطلوب من الدالات. يتم إنشاء الاسم بشكل عشوائي استنادًا إلى متطلبات اسم حساب التخزين.
  • خطة خدمة التطبيق. استضافة خطة الاستهلاك بلا خادم لتطبيق الوظائف الخاص بك في المنطقة المحددة. يتم إنشاء الاسم بشكل عشوائي.
  • تطبيق الوظائف. تطبيق الدالة هو نشر الدالات الخاصة بك وتنفيذها. الاسم هو اسم التطبيق الخاص بك، وملحقا برقم تم إنشاؤه عشوائيا.

يقوم النشر أيضا بحزم ملفات المشروع ونشرها في تطبيق الوظائف الجديد باستخدام النشر المضغوط، مع تمكين وضع التشغيل من الحزمة.

authLevel الخاص بمشغل HTTP في نموذج المشروع هو ANONYMOUS، والذي سيتخطى المصادقة. ومع ذلك، إذا كنت تستخدم authLevel آخر مثل FUNCTION أو ADMIN، فأنت بحاجة إلى الحصول على مفتاح الدالة لاستدعاء نقطة نهاية الدالة عبر HTTP. أسهل طريقة للحصول على مفتاح الوظيفة هي من مدخل Microsoft Azure.

الحصول على عنوان URL لمشغل HTTP

يمكنك الحصول على عنوان URL المطلوب لتشغيل الدالة، باستخدام مفتاح الدالة، من مدخل Azure.

  1. استعرض وصولا إلى مدخل Microsoft Azure، وقم بتسجيل الدخول، واكتب appName الخاص بتطبيق الوظائف الخاص بك في البحث في أعلى الصفحة، واضغط على Enter.

  2. في تطبيق الوظائف، حدد الوظائف، واختر الدالة، ثم انقر على الحصول على عنوان URL للوظيفة في أعلى اليسار.

    نسخ عنوان URL الخاص بالدالة من مدخل Azure

  3. اختر (مفتاح دالة) افتراضي وحدد نسخ.

يمكنك الآن استخدام عنوان URL المنسوخ للوصول إلى الدالة.

التحقق من الدالة في Azure

للتحقق من تطبيق الدالات قيد التشغيل على Azure باستخدام cURL، استبدل عنوان URL من النموذج أدناه بعنوان URL الذي قمت بنسخه من المدخل.

curl -w "\n" http://azure-functions-sample-demo.azurewebsites.net/api/HttpExample --data AzureFunctions

يؤدي هذا إلى إرسال طلب POST إلى نقطة نهاية الدالة مع AzureFunctions في نص الطلب. يجب أن ترى الاستجابة التالية.

Hello, AzureFunctions

الخطوات التالية

لقد قمت بإنشاء مشروع دالات Java باستخدام دالة مشغلة بواسطة HTTP، وتشغيله على جهازك المحلي، وتوزيعه إلى Azure. الآن، قم بتوسيع الدالة الخاصة بك من خلال...