sktston / aries-cloudagent-python

Hyperledger Aries Cloud Agent Python (ACA-Py) is a foundation for building decentralized identity applications and services running in non-mobile environments.

Home Page:https://wiki.hyperledger.org/display/aries

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

aries-askar review

baegjae opened this issue · comments

현재 issuing performance는 5 TPS 수즌으로 낮음
sktston/acapy-controller-java#5

askar
https://github.com/hyperledger/aries-askar
https://github.com/hyperledger/aries-cloudagent-python/tree/shared-components

참고하여 성능 개선 방안 검토

shared-components branch 구동을 위한 준비

3가지 라이브러리가 필요함
aries_askar - https://github.com/hyperledger/aries-askar
indy_vdr - https://github.com/hyperledger/indy-vdr
indy_credx - https://github.com/hyperledger/indy-shared-rs

aca-py에서 아래 명령으로 편하게 설치 가능
pip3 install --no-cache-dir -r requirements.dev.txt

흥미로운 점은 python library를 설치하면 dylib 또는 so 파일 (rust binary) 이 자동으로 받아진다는 점
(libindy는 별도로 빌드해서 library path에 넣어 주어야 했음)

aca-py 실행시

--wallet-type indy -> --wallet-type askar
파라미터를 변경하면 libindy를 사용하지 않고 위의 3가지 라이브러리를 사용하게 됨

sqlite 와 postgres 를 둘 다 지원

구동을 위한 코드 준비

https://github.com/sktston/aries-cloudagent-python/tree/develop-shared
우리 코드 base에 shared-compnents 를 merge 시킴.
그리고 일부 에러들 수정

성능 측정

1 alice 구동 - libindy 대비 성능 동등
2 alices 구동 - 멈추는 증상 발생. 성능 측정 불가 (lock contention 이 발생하는 것으로 추정 - multi threading에 대한 처리가 아직 부족)

대응 방향

아직 초기 단계로 판단 - 추후 필요에 따라 개발에 참여하는 것도 방법

BBS+ JSON-LD 사용한 성능 향상 가능성 확인
#47