Alchemy, 필터링된 대기 중 트랜잭션 알림 출시
작성자: Ben Godlove
처음으로 개발자는 자신의 스마트 컨트랙트에 대한 실시간 참여 상황을 볼 수 있게 되었고, 최종 사용자는 트랜잭션 수명 주기에 대한 실시간 업데이트를 받을 수 있게 되었습니다.
여러분이 스마트 컨트랙트 소유자이고 자신의 컨트랙트에 대한 모든 대기 중인 트랜잭션을 확인하고 싶다고 가정해 봅시다. 컨트랙트의 상태 모니터링을 구축하는 중일 수도 있고, 사용자에게 대기 중인 알림을 전달하려는 중일 수도 있습니다. 어느 쪽이든 현재 생태계에서는 이를 구현하기가 상당히 번거롭습니다.
Alchemy 없이 컨트랙트 트랜잭션 스트리밍하기
먼저 Alchemy 없이 이를 어떻게 구현하는지 살펴보겠습니다. Ethereum은 eth_newPendingTransactions API를 제공하며, 이를 통해 대기 중인 트랜잭션 해시의 스트림을 받을 수 있습니다. 이후 각 트랜잭션 해시에 대해 전체 트랜잭션 페이로드를 가져와 컨트랙트 주소를 추출하고, 해당 주소가 여러분의 컨트랙트와 일치할 경우 비즈니스 로직을 실행하면 됩니다.
이 과정은 초당 수십 건의 트랜잭션을 확인해야 하고, 그중 대부분은 여러분과 무관하며, 각 트랜잭션마다 네트워크 호출을 해야 하기 때문에 비용이 매우 빠르게 증가합니다.
Alchemy의 필터링된 트랜잭션 API 소개
전체 대기 중인 트랜잭션 해시 스트림을 받아 각각을 확인하는 대신, Alchemy는 스트리밍 전에 확인 작업을 대신 수행합니다. 주소를 alchemy_pendingTransactions 엔드포인트에 전달하면, 해당 주소로 들어오거나 나가는 대기 중인 트랜잭션을 스트리밍해 드립니다.
실제로 어떻게 동작하는지 살펴보겠습니다. SushiSwap의 라우터 주소에 대한 대기 중인 트랜잭션을 관찰해 보겠습니다.

보시다시피 SushiSwap은 활동이 상당히 활발합니다.
이것으로 무엇을 만들 수 있을까요?
여러분이 어떤 것을 만들어낼지 기대됩니다! 아이디어를 위해 이제 훨씬 쉽게 구축할 수 있게 된 애플리케이션 몇 가지를 소개합니다:
스마트 컨트랙트의 활동 모니터를 만들어보세요. 컨트랙트로의 대기 중인 트랜잭션을 스트리밍하는 구독을 설정할 수 있습니다. 일정 시간 내에 트랜잭션을 받지 못하면 알림을 발생시키세요!
특정 주소가 "활성화"되는 시점을 알아내세요. 누군가 검증된 스캠 주소로 ETH를 보낼 때 알고 싶을 수도 있습니다. 혹은 블랙햇 해커가 특정 주소에서 마침내 자금을 빼낼 때를 알고 싶을 수도 있습니다.
트랜잭션이 대기 중일 때 최종 사용자에게 알려주세요. 최종 사용자가 트랜잭션을 제출할 때 클라이언트 측에서 구독을 설정하고, 트랜잭션이 mempool에 제출되면 사용자에게 알려주세요. 이제 곧 블록 탐색기를 계속 새로고침할 필요가 없어질지도 모릅니다.
다른 구독 기능 및 웹훅에 대해서는 Alchemy의 Notify 서비스를 확인해 보세요.
Alchemy 뉴스레터
출시 소식을 가장 먼저 받아보세요
뉴스레터 구독하기
Alchemy의 최신 제품 업데이트와 리소스 받기
이메일 주소를 입력하면 마케팅 커뮤니케이션 및 제품 업데이트 수신에 동의하게 됩니다. Alchemy는 저희 개인정보 처리방침에 따라 수집한 정보를 처리합니다. 언제든지 구독을 취소할 수 있습니다.
관련 아티클

업계 최고 수준의 속도와 안정성을 위한 Solana RPC 읽기 아키텍처
Alchemy는 가장 낮은 Solana 읽기 지연 시간을 제공합니다: 9.21ms로, 차순위 제공업체보다 약 26% 빠릅니다.

Alchemy, 도쿄 리전 지원 출시
Node RPC, WebSockets, Dedicated Clusters가 도쿄에서 지원되며, 일본에서의 요청 중간 지연 시간이 최대 8배 감소합니다.

엔터프라이즈를 위한 Activity Log 출시
Activity Log가 이제 엔터프라이즈 팀에서도 사용 가능합니다. 대시보드에서 계정 변경 내역을 확인하거나 SIEM으로 전송하세요.