Quantcast
Channel: Recent Questions - Solana Stack Exchange
Viewing all articles
Browse latest Browse all 8046

Faster method to retrieve pool keys [Raydium]

$
0
0

Currently I am downloading the whole json file from here https://api.raydium.io/v2/sdk/liquidity/mainnet.json and save it into json file, then get the pool info. Code given below for further understanding:

def fetch_pool_keys(mint: str):    amm_info = {}    all_pools = {}    try:        # Using this so it will be faster else no option, we go the slower way.        with open('all_pools.json', 'r') as file:            all_pools = json.load(file)        amm_info = extract_pool_info(all_pools, mint)    except:        resp = requests.get('https://api.raydium.io/v2/sdk/liquidity/mainnet.json', stream=True)        pools = resp.json()        official = pools['official']        unofficial = pools['unOfficial']         all_pools = official + unofficial        # Store all_pools in a JSON file        with open('all_pools.json', 'w') as file:            json.dump(all_pools, file)        try:            amm_info = extract_pool_info(all_pools, mint)        except:            return "failed"

As you can see, I first check it in the downloaded file but if the key which is base mint and quote mint (SOL/USDC/USDT) is not there, then it downloads the file again.

My main concern:At the time of sending request, the code takes longer to download mainnet.json file and as we all know raydium updates the pools every minute or so. Due to which, I am asking for suggestions to speed up the download process or implement an alternative method to downloading mainnet.json


Viewing all articles
Browse latest Browse all 8046


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>