avoid reading sites.json in every operation.