디파이 수수료 최적화 관련 컨트랙트

안녕하세요 디파이 프로세스를 js 를 통해 구현 하였습니다
예: klayswap 컨트랙트에 klayswap 프론트엔드가 아닌 js 코드를 통해 호출
klayswap 이자 claim → 이자 to kdai 스왑 등의 프로세스를 js 코드를 사용해 호출하게 되면
가스비가 많이 나갑니다
이 과정을 contract 에서 처리 하게 되면 가스비 절감에 도움이 될 것 같은데
solidity 단에선 콜백을 사용 할 수 없어 이전 프로세스의 성공 여부를 확인 할 수가 없습니다
혹 다른 방법이 있을까 하여 문의 넣습니다

일단 Gas fee와 관련해서는, 말씀하시는 부분이 잘 이해가 안되는데, 직접 비교하신 부분이 있을까요?
js에서 구현하시는 경우에는 transaction을 발생하지 않고 데이터를 불러오는 경우 gas fee가 지불되지 않지만, solidity 내에서 구현하시는 경우에는 gas fee 가 발생하기 때문에, 절약이 된다는 부분이 조금 이해가 되지 않습니다.

Gas fee의 계산은 다양한 내부적인 프로세스에 개별적으로 매겨져있기 때문에, 컨트랙트를 경유하게 되면 결국 더 많은 내부적인 프로세싱이 발생해 가스비가 더 나오게 되어있습니다.

solidity 단에서는 require 문을 이용하시거나, Event를 발생시켜서 중간단계들이 확인이 가능한데, 이 경우 모두 gas fee가 발생하게 되기때문에 불필요한 단계는 추가하지 않는것을 추천드립니다.

지금 질문만으로는 구체적으로 어떤 부분이 궁금한지 알 수 없기때문에, 소스코드 및 예제 등을 통해 원하시는 부분을 구체화해주시면 답변드리는데 더 도움이 될것 같습니다.

감사합니다.

1개의 좋아요

lorance.call님의 말씀대로 Contract로 묶어서 처리시에 view function도 gas가 소모될 것이여서 gas fee가 절약될 가능성은 거의 없어 보입니다만…

solidity에서 원하는 method를 abi로 call 하여 첫번째 return 인자로 성공 유무를 확인하는 방법이 있습니다.