全部产品
Search
文档中心

Function Compute:Kompilasi dan Penyebaran Paket Kode

更新时间:Jun 24, 2025

Go adalah bahasa dengan tipe statis yang tidak mendukung pengeditan kode secara daring di konsol Function Compute. Anda perlu mengkompilasi program pada mesin lokal dan mengemasnya sebagai file .zip. Topik ini menjelaskan cara mengemas SDK Function Compute untuk pustaka Go bersama dengan kode Anda dan mengunggahnya ke Function Compute.

Prasyarat

Go telah terinstal. Function Compute mendukung Go 1.x. Kami menyarankan menggunakan Go 1.8 atau versi lebih baru.

Kompilasi dan Pengemasan File di Linux atau macOS

  1. Unduh SDK Function Compute untuk Go.

    go get github.com/aliyun/fc-runtime-go-sdk/fc
  2. Siapkan file kode main.go dan jalankan perintah berikut di direktori file untuk mengompilasi file tersebut:

    GOOS=linux go build main.go
    null
    • File main.go digunakan sebagai contoh. Gantikan dengan nama file sebenarnya.

    • Setelah kompilasi, file biner dengan nama yang sama dengan file akan dihasilkan di direktori.

    Tambahkan GOOS=linux untuk memastikan bahwa file biner yang dikompilasi kompatibel dengan waktu proses Go dari Function Compute. Perhatikan hal ini dengan seksama saat Anda mengompilasi file dalam lingkungan non-Linux.

    Catatan:

    • Untuk Linux, kami sarankan menambahkan CGO_ENABLED=0 untuk menggunakan kompilasi statis murni. Dengan cara ini, file yang dapat dieksekusi tidak memerlukan dependensi eksternal seperti pustaka libc. Ini mencegah ketidakcocokan antara lingkungan kompilasi dan dependensi waktu proses Go. Contoh:

      GOOS=linux CGO_ENABLED=0 go build main.go
    • Jika mesin Anda menggunakan komputer dengan macOS dan chip M1 atau arsitektur ARM lainnya, tambahkan GOARCH=amd64 untuk mengizinkan kompilasi lintas platform. Contoh:

      GOOS=linux GOARCH=amd64 go build main.go
  3. Kemas file biner yang dihasilkan pada langkah sebelumnya.

    zip fc-golang-demo.zip main

Kompilasi dan Pengemasan File di Windows

  1. Siapkan file kode main.go dan jalankan perintah berikut di direktori file untuk mengompilasi file tersebut.

    1. Tekan Win+R untuk membuka kotak dialog Run.

    2. Masukkan cmd, tekan tombol Enter, lalu jalankan perintah berikut di jendela command prompt:

      set GOOS=linux
      set GOARCH=amd64
      go build -o main main.go
      null
      • File main.go digunakan sebagai contoh. Gantikan dengan nama file sebenarnya.

      • Setelah kompilasi, file biner dengan nama yang sama dengan file akan dihasilkan di direktori.

  2. Gunakan alat build-fc-zip untuk mengemas file biner yang dihasilkan pada langkah sebelumnya.

    1. Jalankan perintah go install untuk mengunduh alat build-fc-zip.

      set GOOS=windows
      set GOARCH=amd64
      go install github.com/aliyun/fc-runtime-go-sdk/cmd/build-fc-zip@latest

      Saat menggunakan perintah go install untuk mengunduh alat build-fc-zip, alat tersebut biasanya diinstal di direktori %USERPROFILE%\go\bin.

    2. Jalankan perintah berikut di direktori tempat kode berada untuk mengemas kode:

      %USERPROFILE%\go\bin\build-fc-zip.exe -output main.zip main

Buat fungsi dan konfigurasikan penanganan

  1. Buat fungsi acara dan atur Runtime ke Go 1.

  2. Unggah paket kode dan konfigurasikan penanganan untuk fungsi tersebut. Untuk informasi lebih lanjut, lihat Buat fungsi acara.

    image

    Go adalah bahasa yang dikompilasi. Anda perlu mengunggah file biner yang dapat dieksekusi sebagai paket ZIP setelah file dikompilasi di mesin lokal. Saat mengonfigurasi parameter Handler untuk fungsi Go Function Compute di konsol Function Compute, atur parameter Handler ke [Nama file]. "Nama file" menunjukkan nama file biner yang dikompilasi. Saat fungsi dipanggil, Function Compute menjalankan file biner tersebut.

    • Jika file biner yang dikompilasi disimpan di direktori root paket ZIP, seperti yang ditunjukkan pada gambar berikut, atur parameter Handler dari fungsi Function Compute ke main.go-main

    • Jika file biner yang dikompilasi tidak disimpan di direktori root paket ZIP, tetapi disimpan di direktori bin/, seperti yang ditunjukkan pada gambar berikut, atur parameter Handler ke bin/main.gp-bin-main