我可以从一个交通数据服务器获取XML文件,里面包含我需要的信息(例如:从A点到B点:20分钟的行驶时间,18英里的距离等等)。我下载这个XML文件(已经被压缩),然后解压、处理并存储到数据库中。每次请求仅允许下载一次XML文件,但是必须满足上一次下载已经过去5分钟。交通服务器上的XML每30秒至5分钟更新一次。在这5分钟内,任何请求网页的用户都将从数据库中检索数据(没有更新),因此限制了向交通服务器发出的请求数量。
我的问题在于当前的方法需要一些时间(3-7秒)来处理新的XML文件,这使得用户在获得任何内容之前等待太久。但是,当不需要下载XML文件且所有数据直接从数据库显示时,处理速度非常快。归档的XML大约100-200KB,而未压缩的文件大约2MB。XML文件包含3或4个州的交通数据,而我只需要一个州的数据。这就是为什么我目前使用数据库方法的原因。
这种方法好吗?我想知道是否应该针对每个请求直接从下载的XML文件中提取数据,并以某种方式限制XML文件的下载频率。或者,有人能指点我更好的方法吗?
XML文件样例: 这是它在我的网站上的样子:
我的问题在于当前的方法需要一些时间(3-7秒)来处理新的XML文件,这使得用户在获得任何内容之前等待太久。但是,当不需要下载XML文件且所有数据直接从数据库显示时,处理速度非常快。归档的XML大约100-200KB,而未压缩的文件大约2MB。XML文件包含3或4个州的交通数据,而我只需要一个州的数据。这就是为什么我目前使用数据库方法的原因。
这种方法好吗?我想知道是否应该针对每个请求直接从下载的XML文件中提取数据,并以某种方式限制XML文件的下载频率。或者,有人能指点我更好的方法吗?
XML文件样例: 这是它在我的网站上的样子: