这是我的问题。我正在开发一个网站,允许用户在世界各地预订酒店,就像booking.com、expedia.com等。
当用户搜索某个城市的酒店时,我通过Web服务与不同的提供者连接,然后显示结果。在几乎每一个提供者中,这意味着:
1)调用WS中的方法,返回城市中选定日期的可用酒店。其中每一家酒店:
从一个非常大的XML文件(通常超过1)读取以获取静态信息,如地址、电话、传真、描述、服务等。information.
我的问题与页面加载时间有关,这是这些网站的一个关键因素。
对于WS的第一个调用(第一点),它是必要的,在这个过程中,我无能为力,所以这次我必须接受。另外两点也是必要的,但我的目的是通过在酒店加载时显示用户体验来改善用户体验。
假设你在布宜诺斯艾利斯找旅馆。你进入“布宜诺斯艾利斯”作为你的目的地,然后按下“公共汽车”按钮。您可能会注意到,将显示一条加载消息,直到完全加载下一页为止。与其等待所有酒店装载,我想做的是,我认为这将改善用户的体验:
我一直在寻找描述如何实现这一目标的ajax示例,但还没有找到任何明确的文章。我非常赞同有人能指出我的正确方向。
谢谢!
尝试使用多线程,但结果不显示。我使用文字控件显示结果。下面是代码的一部分:
HotelList.aspx
<asp:Literal ID="HotelesResultadoBusqueda" runat="server"></asp:Literal>HotelList.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
...
...
ThreadStart job = new ThreadStart(CargarHoteles);
Thread thread = new Thread(job);
thread.Start();
}
private void CargarHoteles()
{
// Load Hotels
ArrayList hotels = WebService......
foreach(Hotel hotel in hotels)
{.....}
....
this.HotelesResultadoBusqueda.Text = "...";
}发布于 2011-04-30 18:51:41
在“到达”时,最简单的方法是在后端构建一个(线程安全的)挂起的项队列,例如,队列中有新的结果,每隔几秒钟就会对队列中的新数据进行JSON查询轮询(用于该会话)。
重新性能;只需分析它并攻击配置文件所显示的伤害的位元。我的主要猜测是将XML预加载到某种索引结构(甚至数据库)中.
https://stackoverflow.com/questions/5843841
复制相似问题