first version, judge depends on last-modified and request interval is static