Fungsi Azure dengan Python: Pencetus
Pembangun Python boleh menggunakan Azure Functions untuk mencipta aplikasi tanpa pelayan yang ringan, berskala dan cekap. Dalam siaran ini, kami akan menumpukan pada pencetus.
Apakah Pencetus dalam Fungsi Azure?
Pencetus adalah asas kepada Fungsi Azure. Mereka menentukan cara fungsi dipanggil. Setiap fungsi mesti mempunyai tepat satu pencetus, dan jenis pencetus menentukan muatan data yang tersedia untuk fungsi tersebut. Azure menyokong pelbagai pencetus, termasuk:
1. Pencetus HTTP
- Membenarkan fungsi digunakan melalui permintaan HTTP.
- Berguna untuk membina API atau membalas webhooks.
- Contoh:
import azure.functions as func import datetime import json import logging app = func.FunctionApp() @app.route(route="http_trigger", auth_level=func.AuthLevel.ANONYMOUS) def http_trigger(req: func.HttpRequest) -> func.HttpResponse: logging.info('Python HTTP trigger function processed a request.') return func.HttpResponse("Hello world from HTTP trigger")
Parameter:
-
laluan: Menentukan laluan URL yang akan bertindak balas oleh pencetus HTTP. Dalam kes ini, fungsi boleh diakses di
/api/http_trigger. -
auth_level: Menentukan tahap pengesahan untuk fungsi. Pilihan termasuk:
- TANPA NAMA: Tiada pengesahan diperlukan.
- FUNGSI: Memerlukan kunci khusus fungsi.
- ADMIN: Memerlukan kunci peringkat pentadbir.
2. Pencetus Pemasa
- Melaksanakan fungsi berdasarkan jadual.
- Ungkapan Cron digunakan untuk penjadualan.
- Contoh:
import azure.functions as func import datetime import json import logging app = func.FunctionApp() @app.timer_trigger(schedule="0 */5 * * * *", arg_name="myTimer", run_on_startup=False, use_monitor=False) def timer_trigger(myTimer: func.TimerRequest) -> None: if myTimer.past_due: logging.info('The timer is past due!') logging.info('Python timer trigger function executed.')
Parameter:
- jadual: Mentakrifkan jadual menggunakan ungkapan CRON. Di sini, 0 */5 * * * * menentukan fungsi berjalan setiap 5 minit bermula pada saat ke-0.
- arg_name: Nama hujah yang dihantar ke fungsi, mewakili objek TimerRequest.
- run_on_startup: Jika ditetapkan kepada Benar, fungsi tersebut dilaksanakan serta-merta apabila apl dimulakan. Lalai ialah Palsu.
- use_monitor: Menentukan sama ada Azure harus memantau pelaksanaan jadual yang terlepas. Jika Benar, Azure memastikan pelaksanaan yang terlepas dicuba semula. Lalai adalah Benar. Dalam contoh ini, ia ditetapkan kepada Palsu.
3. Pencetus Blob
- Membalas kepada perubahan dalam Storan Azure Blob (cth., muat naik fail).
- Contoh:
import azure.functions as func import datetime import json import logging app = func.FunctionApp() @app.blob_trigger(arg_name="myblob", path="blobname", connection="BlobStorageConnectionString") def BlobTrigger(myblob: func.InputStream): logging.info(f"Python blob trigger function processed blob" f"Name: {myblob.name}" f"Blob Size: {myblob.length} bytes")
Parameter:
- arg_name: Menentukan nama hujah dalam fungsi yang mewakili data gumpalan. Inilah myblob.
- laluan: Laluan dalam bekas Blob Storage yang fungsi mendengar. Dalam contoh ini, ia adalah blobname.
- sambungan: Merujuk kepada nama tetapan aplikasi yang mengandungi rentetan sambungan untuk akaun Blob Storage. Ini ialah BlobStorageConnectionString.
4. Pencetus Baris
- Dicetuskan oleh mesej yang ditambahkan pada Barisan Storan Azure.
- Contoh:
import azure.functions as func import datetime import json import logging app = func.FunctionApp() @app.route(route="http_trigger", auth_level=func.AuthLevel.ANONYMOUS) def http_trigger(req: func.HttpRequest) -> func.HttpResponse: logging.info('Python HTTP trigger function processed a request.') return func.HttpResponse("Hello world from HTTP trigger")
Parameter:
- arg_name: Menentukan nama argumen yang mewakili mesej baris gilir dalam fungsi. Di sini, ia adalah azqueue.
- queue_name: Nama Baris Storan Azure yang fungsi mendengar. Dalam kes ini, ia adalah nama gilir.
- sambungan: Merujuk kepada tetapan aplikasi yang mengandungi rentetan sambungan untuk Barisan Storan Azure. Ini ialah QueueConnectionString.
5. Pencetus EventHub
- Dicetuskan oleh acara yang dihantar ke Hab Acara Azure.
- Contoh:
import azure.functions as func import datetime import json import logging app = func.FunctionApp() @app.timer_trigger(schedule="0 */5 * * * *", arg_name="myTimer", run_on_startup=False, use_monitor=False) def timer_trigger(myTimer: func.TimerRequest) -> None: if myTimer.past_due: logging.info('The timer is past due!') logging.info('Python timer trigger function executed.')
Parameter:
- arg_name: Ini menentukan nama parameter yang akan menerima data peristiwa dalam fungsi anda. Dalam kes ini, azeventhub akan menjadi pembolehubah yang mewakili EventHubEvent masuk.
- event_hub_name: Ini menandakan nama Event Hub yang fungsi sedang mendengar. Gantikan nama eventhub dengan nama sebenar Hab Acara anda.
- sambungan: Ini merujuk kepada nama tetapan aplikasi yang mengandungi rentetan sambungan untuk Hab Acara. Pastikan tetapan Apl Fungsi Azure anda termasuk entri bernama EventHubConnectionString dengan nilai rentetan sambungan yang sesuai.
6. Pencetus Barisan Servis
- Dicetuskan oleh mesej yang ditambahkan pada baris gilir Bas Perkhidmatan Azure.
- Contoh:
import azure.functions as func import datetime import json import logging app = func.FunctionApp() @app.blob_trigger(arg_name="myblob", path="blobname", connection="BlobStorageConnectionString") def BlobTrigger(myblob: func.InputStream): logging.info(f"Python blob trigger function processed blob" f"Name: {myblob.name}" f"Blob Size: {myblob.length} bytes")
Parameter:
- arg_name: Ini menentukan nama parameter yang akan menerima data mesej dalam fungsi anda. Dalam kes ini, azservicebus akan menjadi pembolehubah yang mewakili ServiceBusMessage yang masuk.
- nama_baris: Ini menandakan nama baris gilir Bas Perkhidmatan yang sedang didengari oleh fungsi itu. Gantikan servicebusqueuename dengan nama sebenar baris gilir Bas Perkhidmatan anda.
- sambungan: Ini merujuk kepada nama tetapan aplikasi yang mengandungi rentetan sambungan untuk Bas Perkhidmatan. Pastikan tetapan Apl Fungsi Azure anda termasuk entri bernama ServiceBusConnectionString dengan nilai rentetan sambungan yang sesuai.
7. Pencetus Topik ServiceBus
- Dicetuskan oleh mesej yang diterbitkan pada topik Bas Perkhidmatan Azure.
- Contoh:
import azure.functions as func import datetime import json import logging app = func.FunctionApp() @app.route(route="http_trigger", auth_level=func.AuthLevel.ANONYMOUS) def http_trigger(req: func.HttpRequest) -> func.HttpResponse: logging.info('Python HTTP trigger function processed a request.') return func.HttpResponse("Hello world from HTTP trigger")
Parameter:
- arg_name: Menentukan nama hujah yang mewakili mesej Bas Perkhidmatan dalam fungsi. Ini ialah azservicebus.
- subscription_name: Nama langganan Bas Perkhidmatan yang didengari oleh pencetus.
- nama_topik: Nama topik Bas Perkhidmatan yang didengari oleh pencetus. Dalam contoh ini, ia ialah servicebustopicname.
- sambungan: Merujuk kepada tetapan aplikasi yang mengandungi rentetan sambungan untuk ruang nama Bas Perkhidmatan Azure. Ini ialah ServiceBusConnectionString.
Pencetus Lain
- Pencetus DB Cosmos: Membalas perubahan (sisipan dan kemas kini) dalam pangkalan data DB Azure Cosmos dengan menggunakan mekanisme suapan perubahan.
- Pengikatan Output Terbitan Dapr: Membenarkan fungsi untuk menerbitkan mesej kepada topik Dapr semasa pelaksanaan, memudahkan komunikasi antara perkhidmatan mikro.
- Pencetus Invokasi Perkhidmatan Dapr: Membolehkan fungsi digunakan secara langsung oleh perkhidmatan lain yang didayakan Dapr, menyokong komunikasi perkhidmatan ke perkhidmatan.
- Pencetus Topik Dapr: Melaksanakan fungsi sebagai tindak balas kepada mesej yang diterbitkan pada topik tertentu melalui corak pemesejan terbitkan-langganan Dapr.
- Pencetus Grid Peristiwa: Mengaktifkan fungsi apabila acara dihantar ke topik Grid Peristiwa Azure, membenarkan seni bina dipacu peristiwa reaktif.
Atas ialah kandungan terperinci Fungsi Azure dengan Python: Pencetus. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Penyelesaian kepada Isu Kebenaran Semasa Melihat Versi Python di Terminal Linux Apabila anda cuba melihat versi Python di Terminal Linux, masukkan Python ...

Apabila menggunakan Perpustakaan Pandas Python, bagaimana untuk menyalin seluruh lajur antara dua data data dengan struktur yang berbeza adalah masalah biasa. Katakan kita mempunyai dua DAT ...

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...

Cara mengelakkan dikesan semasa menggunakan fiddlerevery di mana untuk bacaan lelaki-dalam-pertengahan apabila anda menggunakan fiddlerevery di mana ...

Ekspresi biasa adalah alat yang berkuasa untuk memadankan corak dan manipulasi teks dalam pengaturcaraan, meningkatkan kecekapan dalam pemprosesan teks merentasi pelbagai aplikasi.

Bagaimanakah Uvicorn terus mendengar permintaan HTTP? Uvicorn adalah pelayan web ringan berdasarkan ASGI. Salah satu fungsi terasnya ialah mendengar permintaan HTTP dan teruskan ...

Artikel ini membincangkan perpustakaan Python yang popular seperti Numpy, Pandas, Matplotlib, Scikit-Learn, Tensorflow, Django, Flask, dan Permintaan, memperincikan kegunaan mereka dalam pengkomputeran saintifik, analisis data, visualisasi, pembelajaran mesin, pembangunan web, dan h

Di Python, bagaimana untuk membuat objek secara dinamik melalui rentetan dan panggil kaedahnya? Ini adalah keperluan pengaturcaraan yang biasa, terutamanya jika perlu dikonfigurasikan atau dijalankan ...
