Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Menggunakan AWS Lambda dalam Go: Panduan Lengkap

Menggunakan AWS Lambda dalam Go: Panduan Lengkap

王林
王林asal
2023-06-17 20:00:081002semak imbas

Menggunakan AWS Lambda dalam Go: Panduan Lengkap

AWS Lambda ialah platform pengkomputeran tanpa pelayan yang berkuasa yang membolehkan anda menjalankan kod dalam awan tanpa perlu risau tentang persediaan dan pengurusan pelayan. Untuk aplikasi berasaskan bahasa Go, AWS Lambda menyediakan ketersediaan dan kebolehskalaan yang sangat tinggi, jadi ia merupakan pilihan pertama bagi banyak pembangun Go. Panduan ini akan membawa anda melalui cara menggunakan AWS Lambda dalam bahasa Go.

  1. Menyediakan AWS CLI dan AWS SDK

Sebelum anda bermula, anda perlu memasang AWS CLI dan AWS SDK untuk berinteraksi dengan Lambda. AWS CLI membolehkan anda memanggil perkhidmatan AWS dengan mudah daripada antara muka baris arahan, manakala AWS SDK membolehkan anda memprogram menggunakan pelbagai bahasa pengaturcaraan. Anda boleh memuat turun pemasang yang sesuai untuk platform anda daripada tapak web rasmi AWS.

  1. Buat atau pilih baldi S3

Kod AWS Lambda perlu dimuat naik ke baldi S3. Jika anda belum mencipta baldi lagi, anda boleh mencipta baldi dengan mengikuti langkah berikut:

  • Log masuk ke konsol AWS dan pilih perkhidmatan S3.
  • Klik butang "Buat Baldi".
  • Masukkan nama baldi global yang unik dan pilih rantau.
  • Tandakan pilihan "Dayakan kawalan versi" untuk memastikan kod Lambda anda boleh mengurus versi apabila dikemas kini.
  1. Tulis kod fungsi Lambda

Seterusnya, anda perlu menulis kod fungsi Lambda bahasa Go yang sesuai untuk aplikasi anda.

Pertama, buat folder untuk menyimpan kod dan buat fail bernama main.go di dalamnya. Anda boleh meletakkan kod contoh berikut ke dalam fail:

package main

import (
    "context"
    "fmt"
    "github.com/aws/aws-lambda-go/lambda"
)

type Request struct {
    Name string `json:"name"`
}

type Response struct {
    Greeting string `json:"greeting"`
}

func HandleRequest(ctx context.Context, request Request) (Response, error) {
    message := fmt.Sprintf("Hello, %s!", request.Name)
    return Response{Greeting: message}, nil
}

func main() {
    lambda.Start(HandleRequest)
}

Dalam kod di atas, fungsi HandleRequest membina mesej alu-aluan dengan mengekstrak medan nama daripada permintaan dan menghantarnya sebagai respons. Anda juga menyedari bahawa kami mengimport pakej kod "go-lambda", khususnya "aws/aws-lambda-go/lambda", yang menyediakan fungsi lengkap yang diperlukan oleh pembangun bahasa AWS Lambda Go.

  1. Kompilasi kod fungsi Lambda

Untuk menggunakan kod Go pada Lambda, anda perlu menyusun kod ke dalam fail binari. Berikut ialah langkah-langkah bagaimana untuk melakukannya:

  • Buka terminal dalam direktori kod anda dan laksanakan arahan berikut untuk mencipta boleh laku:
GOOS=linux GOARCH=amd64 go build -o main main.go
  • Muat naik fail ke dalam baldi S3:
aws s3 cp main s3://your-bucket-name/
  1. Cipta Fungsi Lambda

Kini anda boleh menggunakan perkhidmatan AWS Lambda untuk mencipta fungsi Lambda baharu untuk Menjalankan kod anda .

  • Log masuk ke konsol AWS dan pilih perkhidmatan Lambda.
  • Klik butang "Buat Fungsi".
  • Dalam tab Asas Fungsi:

    • Pilih pilihan Gunakan peranan sedia ada dan pilih peranan sedia ada, atau klik Cipta Peranan baharu" dan ikut gesaan untuk mencipta peranan baru. Peranan ini akan digunakan untuk membenarkan fungsi Lambda anda untuk mengakses perkhidmatan dan sumber AWS yang lain.
    • Namakan fungsi Lambda anda dengan nama unik dan pilih masa jalan yang sesuai. Di sini kami menggunakan Go 1.x.
  • Dalam tab "Kod Fungsi":

    • Pilih pilihan "Muat naik fail daripada S3 Bucket" dan masukkan nama baldi S3 anda dan laluan fail binari.
    • Tetapkan nilai medan "Pengendali" kepada nama fail binari (tidak termasuk sambungan ".go" atau ".exe") dan nama fungsi. Contohnya "main.HandleRequest".
  • Dalam "Tetapan Lanjutan", anda boleh mengkonfigurasi lagi fungsi Lambda, seperti mengesahkan saiz memori yang digunakan, tamat masa, pembolehubah persekitaran, dsb. Kemudian klik butang "Buat Fungsi" untuk mencipta fungsi Lambda.
  1. Menguji Fungsi Lambda

Anda boleh menguji fungsi dengan mencipta acara ujian untuknya dalam konsol AWS. Buat acara ujian JSON, contohnya:

{
   "name": "Bob"
}

Kemudian klik butang "Ujian" untuk menjalankan fungsi anda dan semak sama ada ia mengembalikan output yang dijangkakan.

Kesimpulan

Kini, anda telah mempelajari cara menggunakan AWS Lambda dalam bahasa Go. Walaupun ini hanyalah buku asas (terdapat banyak ciri yang tersedia untuk AWS Lambda), ia sepatutnya memberi anda maklumat yang mencukupi supaya anda boleh mula bereksperimen dengan membina dan menggunakan aplikasi anda sendiri menggunakan AWS Lambda. Semoga berjaya!

Atas ialah kandungan terperinci Menggunakan AWS Lambda dalam Go: Panduan Lengkap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn