Sdílet prostřednictvím


Rychlý start: Aktualizace možností modulu runtime javascriptového prováděcího modulu na prostředku Azure Managed CCF

Někdy je nutné aktualizovat možnosti modulu runtime interpretu CCF JavaScript, aby se prodloužila doba trvání provádění požadavku nebo aktualizovala velikost přidělení haldy nebo 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 rychlém startu : Vytvoření prostředku SPRAVOVANÉ CCF Azure pomocí kurzu webu Azure Portal .

Předpoklady

  • Python 3+.
  • Nainstalujte nejnovější verzi balíčku CCF Python.

Stažení identity služby

Prostředek AZURE Managed CCF má jedinečnou identitu označovanou jako identita služby. Reprezentuje ho certifikát a vytvoří se během vytváření prostředku. Každý jednotlivý uzel, který je součástí prostředku Azure Managed CCF, má svůj certifikát podepsaný svým držitelem, schválený identitou služby, která na něm vytváří vztah důvěryhodnosti.

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 soubor set_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