Sdílet prostřednictvím


Rychlý start: Aktualizace možností běhového prostředí prováděcího engine JavaScriptu na prostředku Azure Managed CCF

Někdy je nutné aktualizovat možnosti prostředí runtime interpretu CCF JavaScript, aby se prodloužila doba trvání provádění požadavku nebo aktualizovala velikost přidělení haldy či zásobníku. V tomto průvodci se naučíte aktualizovat nastavení modulu runtime. Tento kurz vychází z prostředku Azure Managed CCF (Managed CCF) vytvořeného v Quickstart: Vytvoření prostředku Azure Managed CCF pomocí Azure portálu.

Požadavky

Stažení identity služby

Prostředek Azure Managed CCF má jedinečnou identitu označovanou jako identita služby reprezentovaná certifikátem a vytvořená během vytváření prostředku. Každý jednotlivý uzel, který je součástí prostředku Azure Managed CCF, má svou vlastní podepsanou certifikaci, podepsanou identitou služby, která vytváří důvěru.

Zákazníkům se doporučuje stáhnout certifikát identity služby a použít ho k navázání připojení TLS při interakci se službou. Následující příkaz stáhne certifikát a uloží ho do souboru service_cert.pem.

curl https://identity.confidential-ledger.core.azure.com/ledgerIdentity/confidentialbillingapp --silent | jq ' .ledgerTlsCertificate' | xargs echo -e > service_cert.pem

Aktualizace možností modulu runtime

Poznámka:

Při provádění příkazů na Macu nahraďte date -Is .date +%FT%T%z

  1. Připravte souborset_js_runtime_options.json a odešlete ho pomocí tohoto příkazu:
    $ cat set_js_runtime_options.json
    {
      "actions": [
        {
          "name": "set_js_runtime_options",
          "args": {
            "max_heap_bytes": 1024,
            "max_stack_bytes": 1024,
            "max_execution_time_ms": 5000, // increase the request execution time
            "log_exception_details": false,
            "return_exception_details": false
          }
        }
      ]
    }
    
    $ proposal_id=$( (ccf_cose_sign1 --content set_js_runtime_options.json --signing-cert member0_cert.pem --signing-key member0_privk.pem --ccf-gov-msg-type proposal --ccf-gov-msg-created_at `date -Is` | curl https://confidentialbillingapp.confidential-ledger.azure.com/gov/proposals -H 'Content-Type: application/cose' --data-binary @- --cacert service_cert.pem | jq -r ‘.proposal_id’) )
    
  2. Dalším krokem je přijetí návrhu odesláním hlasování.
    cat vote_accept.json
    {
      "ballot": "export function vote (proposal, proposerId) { return true }"
    }
    
    ccf_cose_sign1 --content vote_accept.json --signing-cert member0_cert.pem --signing-key member0_privk.pem --ccf-gov-msg-type ballot --ccf-gov-msg-created_at `date -Is` --ccf-gov-msg-proposal_id $proposal_id | curl https://confidentialbillingapp.confidential-ledger.azure.com/gov/proposals/$proposal_id/ballots -H 'Content-Type: application/cose' --data-binary @- --cacert service_cert.pem
    
  3. Opakujte výše uvedený krok pro každého člena ve spravovaném prostředku CCF.
  4. Po přijetí návrhu se možnosti modulu runtime použijí na následné žádosti.

Další kroky