2010-10-08 67 views
0

我正在构建一个CMS类型的web应用程序,允许用户输入任意大小的HTML块。这些块由用户在他们的管理区域输入,并在页面交付时插入到他们选择的模板中。性能:需要阅读LONGTEXT

我猜测用户不会添加超过50-100个块,我不会在短时间内获得超过1000个用户。

我打算使用mySQL的LONGTEXT类型来存储这些,但我想知道如果将文件存储在目录中将会更加高效,因为Linux操作系统将缓存它们?鉴于我正在构建最多(1000 * 100)文本块,使用mySQL有没有合理的性能问题?

很明显,我会在发送之前缓存HTML,所以我不会在每次发送时读取这些块 - 读取只会在有人更新/创建新内容时才会发生。

我可以使用memcached /其他缓存/ noSQL实现或其他一些存储机制,但我专注于保持简单并尽快提供,所以不想介绍其他我没有经验的东西,除非有一个显着的性能问题。

回答

0

我建议你使用平面文件而不是Mysql来存储这种数据。
Html是一个“文件”而不是“价值信息”,因此它不在数据库中。
此外,你一定会有更好的表现。

您还可以阅读this post.

2

是HTML内容的块要保存的唯一的事情?如果是这样,一个文件可能是最简单的。

但是,您可能希望将其他位信息与HTML一起保存,并能够根据这些位数据进行查询。例如:创建日期,上次修改日期,块的名称,编辑块的用户。

如果是这种情况,那么数据库可能是最好的选择。既然你说你不希望有很多用户(至少不是第一个),我会专注于找到最快/最灵活的解决方案,并在你的网站开始增长后,专注于性能和缓存。