use iterator to read many consistently in api

for a read api, it not uses lock, so multi read in a api may cause some
unpredictable when something writes at same time.