Membina Seni Bina Tanpa Pelayan Awan dengan C++: Masa Depan Aplikasi Atas Permintaan

WBOY
Lepaskan: 2024-06-01 20:58:00
asal
613 orang telah melayarinya

Membina Seni Bina Tanpa Pelayan Awan dengan C++: Masa Depan Aplikasi Atas Permintaan

Seni Bina Tanpa Pelayan Awan dalam C++: Masa Depan Aplikasi Atas Permintaan

Seni bina tanpa pelayan awan menjadi cara popular untuk membina aplikasi, terutamanya untuk penskalaan atas permintaan. Panduan ini membimbing anda membina aplikasi tanpa pelayan dalam awan menggunakan C++.

Persediaan

Pastikan anda mempunyai prasyarat berikut:

  • C++ compiler (seperti Clang atau GCC)
  • Amazon Web Services (AWS) akaun
  • CLI
an Persekitaran tanpa pelayan WS

Pasang Rangka Kerja Tanpa Pelayan: npm install -g serverless
  1. Buat fail kelayakan AWS (~/.aws/credentials): Mengandungi kunci akses dan ID kunci anda npm install -g serverless
  2. 创建 AWS 凭证文件(~/.aws/credentials):包含您的访问密钥和密钥 ID
  3. 配置 Serverless Framework:serverless config credentials --provider aws --key your_key_id --secret your_secret_key

创建无服务器函数

  1. 创建一个新的 Node.js 项目:mkdir my-function && cd my-function
  2. 初始化 Serverless 项目:serverless init --template helloworld
  3. 修改 handler.cpp 以使用 C++ 编写您的函数

    #include < aws/lambda/lambda.h >
    namespace lambda = Aws::Lambda;
    
    using namespace function::helloworld;
    
    int main(int argc, char** argv) {
      auto handler = lambda::MakeHandler<hello_world, Input, Output>();
      return lambda::RunWithHandler(handler, argc, argv);
    }
    Salin selepas log masuk

部署函数

  1. 修改 serverless.yml 以指定函数配置:

    provider:
      name: aws
      runtime: cpp17
    functions:
      hello:
        handler: handler.main
    Salin selepas log masuk
  2. 部署函数:serverless deploy

测试函数

  1. 使用 AWS CLI 调用函数:aws lambda invoke --function-name hello
  2. 查看结果:jq .Payload | base64 --decode
  3. Konfigurasikan Rangka Kerja Tanpa Pelayan: kelayakan konfigurasi tanpa pelayan --aws penyedia --key your_key_id --secret your_secret_key

Buat fungsi tanpa pelayan

>buat projek baharu NodeCrej mkdir my-function && cd my-function

Memulakan projek Tanpa Pelayan: serverless init --template helloworld

    Ubah suai handler.cpp untuk Menulis anda fungsi dalam C++
  1. functions:
      resize_image:
        handler: handler.main
        events:
          - s3:
              bucket: my-images
              event: s3:ObjectCreated:*
    Salin selepas log masuk

  2. Fungsi penggunaan

Ubah suai serverless.yml untuk menentukan konfigurasi fungsi:

auto scaled_image = resize_image(input.file_name);

Aws::S3::Model::PutObjectRequest request(s3_config.bucket(), scaled_image.file_name,
                                            scaled_image.data, scaled_image.data.length());
s3_client.PutObject(request);
Salin selepas log masuk
fungsi tanpa pelayan

: serverless.yml

🎜Fungsi uji🎜🎜🎜🎜Gunakan AWS CLI untuk memanggil fungsi: aws lambda invoke --function-name hello🎜🎜Lihat hasil: jq .Payload | /code>🎜🎜🎜🎜Kes praktikal🎜🎜🎜🎜Penskalaan automatik imej🎜🎜🎜Gunakan fungsi tanpa pelayan untuk mengecilkan imej yang dimuat naik ke Amazon S3 secara automatik. 🎜🎜🎜🎜 Cipta fungsi pencetus S3: 🎜rrreee🎜🎜🎜 Kecilkan imej dalam fungsi: 🎜rrreee🎜🎜🎜🎜 Kesimpulan 🎜🎜🎜 Dengan menggunakan C++ tanpa kos, anda boleh membina awan tanpa kos dan Mudah untuk mengekalkan aplikasi. Dengan panduan ini, anda telah memperoleh kemahiran yang anda perlukan untuk membina aplikasi tanpa pelayan anda sendiri. 🎜

Atas ialah kandungan terperinci Membina Seni Bina Tanpa Pelayan Awan dengan C++: Masa Depan Aplikasi Atas Permintaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!