我们在18GB的mysql中有一个表,其中有一个“html_view”列,用于存储我们在页面上显示的HTML源数据,但现在它花了太多时间从“html_view”列获取html数据,使页面加载缓慢。
我们想要一种可以简化现有结构的方法,以便从db或其他任何方式更快地加载html数据。
我们计划的一个想法是将HTML数据存储在.txt文件中,在db中我们只存储txt文件的路径,并通过读取文件从该特定文件中获取数据。但是我们担心它会在我们的服务器上进行大量的读写操作,然后可能会降低服务器的速度。
有没有更好的方法,让这种情况更快?
答案 0 :(得分:2)
首先,为什么要在数据库中存储HTML?为什么不按需渲染呢?
对于大文本表,您可以将压缩文本存储在字节数组中,或者在base64中压缩和编码为纯文本。
当你有一个包含大文本列的数组时,该表有多少个其他列?如果它不是太多,您可以对表进行分区并创建一个两列键值存储。这应该比从磁盘读取文件更快更简单。
答案 1 :(得分:1)
查看Apache Caching guide
它解释了磁盘和内存缓存 - 如果内容是静态的(如数据表所示),我应该使用Apaches功能而不是编写自己的慢速机制,因为你在顶部添加了多个层。
通常的措施而不是估计仍然适用; - )。