Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggunakan Google Cloud Platform dengan Go?

Bagaimana untuk menggunakan Google Cloud Platform dengan Go?

PHPz
PHPzasal
2023-05-11 15:28:541755semak imbas

Google Cloud Platform (GCP) ialah platform perkhidmatan pengkomputeran awan yang disediakan oleh Google, termasuk pengkomputeran, storan, rangkaian, pangkalan data, kecerdasan buatan dan perkhidmatan lain. Ia membantu pembangun membangun, menguji dan menggunakan aplikasi dengan lebih pantas sambil menyediakan ketersediaan, prestasi dan keselamatan yang tinggi.

Sebagai bahasa pengaturcaraan dengan prestasi tinggi dan keselarasan yang baik, bahasa Go juga telah menarik banyak perhatian dalam bidang pengkomputeran awan. Artikel ini akan memperkenalkan cara menggunakan GCP dalam Go, termasuk cara menyediakan persekitaran pembangunan, cara menyambung dan menggunakan perkhidmatan GCP, dsb.

1 Sediakan persekitaran pembangunan

Pertama sekali, untuk menggunakan perkhidmatan GCP, anda perlu membuat akaun di GCP. Setelah dibuat, anda boleh menggunakan alat baris arahan GCP gcloud untuk menyambung dan mengkonfigurasi.

  1. Pasang gcloud

gcloud ialah alat baris arahan yang disediakan oleh GCP, yang boleh digunakan untuk menyambung dan mengurus perkhidmatan GCP. Kaedah untuk memasang gcloud adalah seperti berikut:

1) Mula-mula, muat turun SDK gcloud yang sepadan dengan sistem pengendalian di https://cloud.google.com/sdk/.

2) Selepas muat turun selesai, nyahmampat fail dan tambah direktori yang dinyahmampat pada PATH pembolehubah persekitaran.

3) Masukkan arahan berikut dalam alat baris arahan untuk mengesahkan sama ada pemasangan berjaya:

$ gcloud version

Jika nombor versi gcloud dikeluarkan, ini bermakna pemasangan berjaya.

  1. Sambung ke akaun GCP

Selepas memasang gcloud, anda boleh menggunakannya untuk menyambung ke akaun GCP. Kaedah untuk menyambung ke akaun GCP adalah seperti berikut:

1) Masukkan arahan berikut dalam alat baris arahan:

$ gcloud auth login

2) Kemudian, gcloud akan membuka antara muka log masuk dalam penyemak imbas , anda boleh menggunakan log masuk Akaun GCP.

3) Selepas melengkapkan log masuk, anda perlu mengesahkan projek disambungkan ke GCP. Pilih projek GCP yang ingin anda sambungkan dan klik Benarkan.

Selepas sambungan berjaya, gcloud boleh menggunakan akaun GCP anda untuk mengakses perkhidmatan GCP. Anda boleh mengesahkan bahawa sambungan berjaya menggunakan perintah berikut:

$ gcloud config list

Perintah ini akan memaparkan projek semasa yang dikaitkan dengan akaun GCP anda bersama-sama dengan sebarang konfigurasi lain.

2 Gunakan perkhidmatan GCP

Setelah persekitaran pembangunan anda disediakan dan disambungkan ke akaun GCP anda, anda boleh mula menggunakan perkhidmatan GCP dalam Go. Di sini kami akan memperkenalkan cara menggunakan dua perkhidmatan GCP: Cloud Storage dan Cloud Vision.

  1. Menggunakan Cloud Storage

Cloud Storage ialah perkhidmatan storan objek yang disediakan oleh GCP yang boleh membantu anda menyimpan pelbagai jenis data.

Dalam bahasa Go, anda boleh menggunakan repositori GCP google.golang.org/cloud/storage untuk menyambung dan menggunakan Cloud Storage. Langkah-langkahnya adalah seperti berikut:

1) Pasang google.golang.org/cloud/storage:

$ go get google.golang.org/cloud/storage

2) Gunakan contoh kod berikut untuk menunjukkan cara menyambung dan menggunakan Cloud Storage:

package main

import (
    "context"
    "fmt"
    "io/ioutil"
    "log"

    "google.golang.org/api/option"
    "google.golang.org/api/storage/v1"
)

func main() {
    // 定义GCP项目ID和GCP Bucket名称
    projectID := "my-project-id"
    bucketName := "my-bucket-name"

    // 使用gcloud配置文件来获取GCP凭据
    ctx := context.Background()
    client, err := storage.NewClient(ctx, option.WithoutAuthentication())
    if err != nil {
        log.Fatal(err)
    }

    // 下载文件
    objName := "file.txt"
    rc, err := client.Bucket(bucketName).Object(objName).NewReader(ctx)
    if err != nil {
        log.Fatal(err)
    }
    defer rc.Close()

    data, err := ioutil.ReadAll(rc)
    if err != nil {
        log.Fatal(err)
    }

    fmt.Printf("Content of %s: %s", objName, string(data))
}
  1. Gunakan Cloud Vision

Cloud Vision ialah perkhidmatan AI visual yang disediakan oleh GCP yang boleh membantu anda menganalisis imej dan video untuk mengekstrak maklumat yang berguna.

Dalam bahasa Go, anda boleh menggunakan repositori GCP google.golang.org/genproto/googleapis/cloud/vision/v1 untuk menyambung dan menggunakan Cloud Vision. Langkah penggunaan adalah seperti berikut:

1) Pasang google.golang.org/genproto/googleapis/cloud/vision/v1:

$ go get google.golang.org/genproto/googleapis/cloud/vision/v1

2) Gunakan contoh kod berikut untuk menunjukkan cara untuk sambung dan gunakan Cloud Vision :

package main

import (
    "context"
    "fmt"
    "log"

    vision "google.golang.org/genproto/googleapis/cloud/vision/v1"
    "google.golang.org/api/option"
)

func main() {
    // 使用gcloud配置文件来获取GCP凭据
    ctx := context.Background()
    client, err := vision.NewImageAnnotatorClient(ctx, option.WithoutAuthentication())
    if err != nil {
        log.Fatal(err)
    }
    defer client.Close()

    // 加载图像
    imageURI := "gs://bucket-name/image_name.jpg"
    image := vision.NewImageFromURI(imageURI)

    // 进行图像注释
    annotation, err := client.DetectLabels(ctx, image, nil)
    if err != nil {
        log.Fatal(err)
    }

    // 输出图像标签
    for _, label := range annotation.LabelAnnotations {
        fmt.Printf("%s (score: %f)
", label.Description, label.Score)
    }
}

Di atas adalah contoh mudah menggunakan bahasa Go untuk menyambung dan menggunakan perkhidmatan GCP Contoh ini hanya menunjukkan kaedah asas untuk menyambung dan menggunakan perkhidmatan ini fungsi perlu dilaksanakan mengikut situasi tertentu.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan Google Cloud Platform dengan Go?. 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