빠른 시작: Azure 관리 CCF 리소스에서 JavaScript 실행 엔진의 런타임 옵션 업데이트
요청 실행 기간을 연장하거나 힙 또는 스택 할당 크기를 업데이트하려면 CCF JavaScript 인터프리터의 런타임 옵션을 업데이트해야 하는 경우가 있습니다. 이 안내 방법에서는 런타임 설정을 업데이트하는 방법을 알아봅니다. 이 자습서는 빠른 시작: Azure Portal을 사용하여 Azure 관리 CCF 리소스 만들기 자습서에서 만든 Azure 관리 CCF(관리 CCF) 리소스를 기반으로 합니다.
필수 조건
- Python 3+.
- CCF Python 패키지의 최신 버전을 설치합니다.
서비스 ID 다운로드
Azure 관리 CCF 리소스에는 서비스 ID라는 고유한 ID가 있습니다. 이는 인증서로 표시되며 리소스 생성 중 만들어집니다. Azure 관리 CCF 리소스의 일부인 모든 개별 노드에는 서비스 ID로 보증되는 자체 서명된 인증서가 있으며, 이를 통해 신뢰가 설정됩니다.
고객은 서비스 ID 인증서를 다운로드하고 이를 사용하여 서비스와 상호 작용할 때 TLS 연결을 설정하는 것이 좋습니다. 다음 명령은 인증서를 다운로드하여 service_cert.pem에 저장합니다.
curl https://identity.confidential-ledger.core.azure.com/ledgerIdentity/confidentialbillingapp --silent | jq ' .ledgerTlsCertificate' | xargs echo -e > service_cert.pem
런타임 옵션 업데이트
참고 항목
Mac에서 명령을 실행할 때 date -Is
를 date +%FT%T%z
로 바꿉니다.
- set_js_runtime_options.json 파일을 준비하고 다음 명령을 사용하여 제출합니다.
$ 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’) )
- 다음 단계는 응답을 제출하여 제안을 수락하는 것입니다.
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
- 관리 CCF 리소스의 모든 멤버에 대해 위 단계를 반복합니다.
- 제안이 수락되면 런타임 옵션이 후속 요청에 적용됩니다.