我的网站出现了一些问题,因为它正在进行大量的SQL查询,所以它很慢,点击页面上的其中一个元素重新加载。
这是一个例子: Example
第一次打开页面时需要一些时间。然后,当您点击排序选项,如“3Way”,“Over / Under”,“Asian Handicap”等时,它将再次花费相同的时间,因为页面将与left&右列和顶部菜单。
但是,如果您再次单击其中一个排序选项,则会在页面缓存时非常快。
我希望不重新加载静态元素(未更改的元素)。如果可能的话,自动。如果没有,我希望能够手动分配哪些元素重新加载,哪些不重新加载。
此外,当我在示例网址上点击“Over / Under”时,向下滚动到1.75,然后点击“OVER 1.75”旁边的小箭头,页面将重新加载并发送到顶部。我不希望它转到顶部,但结果应该在没有页面重新加载的情况下进行排序。
如果有人可以就这两个问题提供一些帮助我会很感激,因为我不是很有经验,而且我只是在.htaccess中启用远期未来的过期标题。
网站是用PHP / HTML / CSS编写的,它是一个动态网站,使用查询从3 GB SQL数据库中获取所有结果。
如果有人可以帮助我,请提前感谢,特别是因为我给出的描述非常一般。如果需要,我可以提供代码,但不知道哪个部分会有用。
答案 0 :(得分:2)
您可以使用Varnish缓存网页。 Varnish是位于Web服务器前面的HTTP代理。这需要一些时间和配置它的知识,但它是非常好的软件。
或者,您可以使用shared memory,memcache或redis将SQL结果缓存到内存中。
为了获得最佳效果,您可以结合使用这两种技术!
答案 1 :(得分:0)
答案 2 :(得分:0)
你选择了错误的措辞 因此,通常这样的类型,只阅读标题,但从不打扰问题的身体,做出错误的答案。
你不需要缓存,但需要一些AJAX / Javascript。例如,按某些列对表进行排序对于javascript来说是一项微不足道的任务。请注意,这仅适用于整个表在一个屏幕上显示的情况。否则你无论如何都会重新加载页面。
另外,您提高网站加载速度的想法是错误的 首先,对于静态元素,无论是否重新加载都无关紧要 - 两者都会很快。 接下来,优化查询而不是缓存整个站点总是更好的主意。 最后,我要说你必须先配置你的网站,找到最慢的元素,然后在速度优化方面做一些步骤。