add cache to reduce requests times,improve performance