All Products
Search
Document Center

Function Compute:Konfigurasikan kebijakan pemeriksaan kesehatan kustom untuk instance

Last Updated:Mar 19, 2026

Topik ini menjelaskan latar belakang, batasan, dan perilaku pemeriksaan kesehatan instance fungsi. Topik ini juga menjelaskan cara mengonfigurasi kebijakan pemeriksaan kesehatan untuk instance fungsi di konsol Function Compute.

Informasi latar belakang

Jika Anda memilih Use Custom Runtime atau Use Container Image saat membuat fungsi dan menggunakan gambar kontainer Anda sendiri sebagai lingkungan runtime fungsi, lingkungan runtime kustom Anda mungkin tidak stabil, yang dapat menyebabkan pengecualian pada instance fungsi. Function Compute mendukung pemeriksaan kesehatan berkala untuk instance fungsi guna menghindari kegagalan permintaan akibat pengecualian instance.

Batasan

Anda hanya dapat mengonfigurasi kebijakan pemeriksaan kesehatan untuk instance fungsi yang berjalan di lingkungan runtime kustom dan instance yang dimulai menggunakan gambar kustom.

Perilaku pemeriksaan kesehatan

Startup instance

Bagian ini menjelaskan perilaku startup instance fungsi setelah Anda mengonfigurasi kebijakan pemeriksaan kesehatan untuk sebuah fungsi:

  1. Hooks Initializer dieksekusi pertama kali jika didefinisikan. Jika hooks Initializer tidak didefinisikan, pemeriksaan kesehatan pertama langsung dilakukan.

  2. Instance dianggap sehat jika mereka lulus pemeriksaan kesehatan pertama. Setelah itu, mereka memasuki siklus pemeriksaan kesehatan berkala. Jika mereka gagal dalam pemeriksaan kesehatan pertama, instance dianggap gagal memulai dan proses pemeriksaan kesehatan dihentikan. Pesan kesalahan terkait kemudian dilaporkan.

    • Jika jumlah kegagalan pemeriksaan kesehatan berturut-turut mencapai nilai dari Maximum Failures, instance fungsi dianggap tidak sehat. Dalam hal ini, Function Compute mencoba mengalokasikan instance lain untuk memproses permintaan.

    • Ketika jumlah pemeriksaan kesehatan yang berhasil untuk instance yang tidak sehat mencapai nilai dari Threshold for Successful Detections, instance dianggap sehat.

Untuk informasi lebih lanjut tentang cara mengonfigurasi Threshold for Successful Detections dan Maximum Failures, lihat Konfigurasikan Kebijakan Pemeriksaan Kesehatan di Konsol Function Compute.

Pemeriksaan kesehatan tunggal

Bagian ini menjelaskan perilaku pemeriksaan kesehatan tunggal di Function Compute.

  1. Permintaan GET dikirim ke jalur HTTP tertentu berdasarkan konfigurasi fungsi.

  2. Jika permintaan GET tidak habis waktu dan kode status respons HTTP kurang dari 400 dan lebih besar dari atau sama dengan 200, instance lulus pemeriksaan kesehatan. Sebaliknya, instance dianggap gagal dalam pemeriksaan kesehatan.

Alokasi setelah instance gagal dalam pemeriksaan kesehatan

Jika instance fungsi tidak sehat, Function Compute mencoba mengalokasikan instance lain untuk mengeksekusi permintaan.

  • Jika Function Compute berhasil mengalokasikan instance baru, permintaan dieksekusi oleh instance baru.

  • Jika Function Compute gagal mengalokasikan instance lain untuk mengeksekusi permintaan dalam waktu yang tepat, kesalahan pemeriksaan kesehatan dikembalikan. Instance baru dialokasikan selama pemeriksaan kesehatan berikutnya.

Konfigurasikan kebijakan pemeriksaan kesehatan di konsol Function Compute

Topik ini menjelaskan cara mengonfigurasi kebijakan pemeriksaan kesehatan untuk fungsi yang dibuat dari Use Custom Runtime dan Runtime Environments-nya adalah Node.js 14 dan Request Type adalah Event Requests.

Langkah 1: Buat fungsi

  1. Masuk ke konsol Function Compute. Di panel navigasi di sebelah kiri, klik Services & Functions.

  2. Di bilah navigasi atas, pilih wilayah. Pada halaman Services, klik layanan yang diinginkan.

  3. Pada halaman Functions, klik Create Function.

  4. Pada halaman Create Function, pilih Use Custom Runtime, konfigurasikan parameter berdasarkan kebutuhan bisnis Anda, dan kemudian klik Create.

    Tabel berikut menjelaskan parameter yang harus Anda konfigurasikan. Pertahankan nilai default untuk parameter lainnya.

    Parameter

    Deskripsi

    Function Name

    Masukkan nama untuk fungsi tersebut.

    Request Type

    Pilih Event Request.

    Runtime Environments

    Pilih Node.js 14.

  5. Pada halaman detail fungsi, klik tab Code, edit kode fungsi di editor kode, dan kemudian deploy kode dan jalankan fungsi tersebut.

    Contoh berikut memberikan kode sampel untuk index.js:

    'use strict';
    
    // Constants
    const PORT = 9000;
    const HOST = '0.0.0.0';
    const REQUEST_ID_HEADER = 'x-fc-request-id'
    
    const express = require('express');
    const bodyParser = require('body-parser');
    const app = express();
    
    app.use(bodyParser.urlencoded({ extended: true }));
    app.use(bodyParser.json());
    app.use(bodyParser.raw());
    
    app.get('/readyz', (req, res) => {
      console.log(`receive health check`);
      res.status(200);
      console.log(`i am ready`);
      res.send('i am ready\n');
    });
    
    // invocation
    app.post('/invoke', (req, res) => {
      var rid = req.headers[REQUEST_ID_HEADER]
      console.log(`FC Invoke Start RequestId: ${rid}`)
      res.send('OK');
      console.log(`FC Invoke End RequestId: ${rid}`)
    });
    
    var server = app.listen(PORT, HOST);
    console.log(`Running on http://${HOST}:${PORT}`);
    
    server.timeout = 0; // never timeout
    server.keepAliveTimeout = 0; // keepalive, never timeout

    Dalam kode sebelumnya, readyz adalah handler dari kebijakan pemeriksaan kesehatan yang ditentukan untuk memproses permintaan HTTP GET di jalur /readyz. Setelah Anda menyelesaikan Langkah 2, Anda dapat mengonfigurasi handler ini untuk dijalankan secara berkala guna memeriksa apakah instance normal.

    Function Compute mencoba mengalokasikan instance lain ketika menentukan bahwa instance fungsi abnormal. Jika Function Compute gagal mengalokasikan instance lain, kesalahan pemeriksaan kesehatan dikembalikan.

    Sebagai contoh, jika Anda mengganti potongan kode untuk pemeriksaan kesehatan dalam kode sampel sebelumnya dengan kode berikut, kode kesalahan 500 dikembalikan.

    app.get('/readyz', (req, res) => {
      console.log(`receive health check`);
      res.status(500);
      console.log(`i am not ready`);
      res.send('i am not ready\n');
    });

    Informasi berikut dikembalikan jika fungsi dijalankan lagi.

    {
        "ErrorCode": "FunctionNotStarted",
        "ErrorMessage": "check function health failed with status code: 500 "
    }

Langkah 2: Konfigurasikan kebijakan pemeriksaan kesehatan untuk instance

  1. Masuk ke konsol Function Compute. Di panel navigasi di sebelah kiri, klik Services & Functions.

  2. Di bilah navigasi atas, pilih wilayah. Pada halaman Services, klik layanan yang diinginkan.

  3. Pada halaman Functions, temukan fungsi yang diinginkan dan klik Configure di kolom Actions.

  4. Di bagian Health Check Settings, konfigurasikan parameter dan klik Save. Tabel berikut menjelaskan parameter tersebut.

    Parameter

    Deskripsi

    Health Check

    Tentukan apakah akan mengaktifkan fitur pemeriksaan kesehatan. Jika Anda memilih Enable, Anda harus mengonfigurasi parameter berikut:

    Request Path

    Jalur HTTP GET untuk pemeriksaan kesehatan. Function Compute mengirimkan permintaan HTTP GET ke jalur ini untuk pemeriksaan kesehatan. Nilainya harus dimulai dengan garis miring (/).

    Delay for First Detection

    Tentukan waktu tunggu sebelum pemeriksaan kesehatan pertama.

    Detection Interval

    Tentukan interval pengiriman permintaan HTTP GET.

    Timeout Period

    Tentukan periode timeout permintaan HTTP GET. Ketika periode timeout berakhir, permintaan dianggap gagal.

    Maximum Failures

    Tentukan ambang batas untuk kegagalan permintaan HTTP GET. Ketika jumlah permintaan HTTP GET yang gagal berturut-turut mencapai nilai yang ditentukan selama pemeriksaan kesehatan berkala, instance dianggap gagal dalam pemeriksaan kesehatan.

    Threshold for Successful Detections

    Ambang batas sukses untuk permintaan HTTP GET. Ketika jumlah permintaan HTTP GET yang berhasil berturut-turut mencapai nilai ini, instance dianggap telah lulus pemeriksaan kesehatan.

Informasi tambahan

Function Compute juga memungkinkan menggunakan alat Serverless Devs atau Anda untuk memanggil operasi API guna mengonfigurasi fitur pemeriksaan kesehatan untuk instance. Untuk informasi lebih lanjut, lihat topik-topik berikut: