用户
 找回密码
 入住 CI 中国社区
搜索
查看: 5922|回复: 2
收起左侧

[HELP] 求教,关于新闻博客类的网站,文章图片是怎么存储的

[复制链接]
发表于 2016-1-14 15:36:13 | 显示全部楼层 |阅读模式
本帖最后由 Closer 于 2016-1-14 16:04 编辑

想问下,关于新闻博客类的网站中,都会有大量的新闻,新闻的内容是主要是以文字,图片,视频展现的,那文字图片是怎么存储在数据库中的呢,我在网上找了些,不过讲的比较含糊,我是这样想的

第一种方法,将文章中文字部分,以html直接存入数据库表中,图片只存连接,这样用户在看新闻时,后台从数据库读取内容,传到前台

第二种方法是,在编辑新闻的时候,根据新闻内容的格式会生成新闻的内容html代码,当然这里也有图片的连接,之后将这些html代码保存在一个html静态页中,也就是每新增一则新闻就生成一个相应的html静态页文件,这样将这些静态页文件保存磁盘指定的文件夹内(包括图片),之后在做个新闻映射表,表中有个字段是记录相应新闻存在磁盘中的位置,之后后台直接调用静态页文件展现到前台

据我分析,按第一种的方法,随着时间,新闻数据量肯定大,数据库也自然会变大,第二种发放呢,新闻数据量也会变大,但不会造成数据库存储变大,因为大量新闻数据在磁盘上已文件形式保存,请大神指点,通常新闻网站都是怎么做的

发表于 2016-1-14 20:19:01 | 显示全部楼层
文章的数据是要存储在数据库中的,并且要规划好数据格式(表字段),比如:文章标题、简介、正文等等。

图片文件一般是以文件形式存储在网站对应目录中的,但图片的信息一般是保存在“附件表”中的,附件表需要与文章表建立对应关系,这样便于附件的管理,比如:查询某篇文章包含的图片,删除某篇文章同时删除对应的附件等等。

随着信息量的增加,数据库固然增大。但是可以通过缓存或生成静态文件减少对数据库的访问,以减轻数据压力。但并不是所有信息都需要缓存或生成静态文件的,因为你要知道大量碎小文件对磁盘同样是构成压力的。这时候你需要权衡利弊,根据实际情况采用不同的方法,比如:你可以把访问量高的文章以静态文件的方式存在磁盘上,或者根据信息的时效性,把最近一个月的文章生成静态文件,清理掉过期的静态文件 等等...

 楼主| 发表于 2016-1-15 09:44:17 | 显示全部楼层
pcjingl 发表于 2016-1-14 20:19
文章的数据是要存储在数据库中的,并且要规划好数据格式(表字段),比如:文章标题、简介、正文等等。

图 ...

有道理,理解了,学习了,谢谢

本版积分规则