搜尋

首頁  >  問答  >  主體

mysql - redis 适合做一个小型网站的数据存储么?

小弟对于数据库这方面的知识实在有限,只是相较于mysql觉得redis用得很是顺手与舒服,但是看到诸大牛者都只将redis用于临时存储。我不禁对于自己将redis当做主力数据库的做法感到紧张,虽还不至于遇到什么过不去的难题,但是为了现在做的项目在未来能够好好运行,不由的来此诚心请教:

1. 是否redis可以用于小型项目的主要数据库。
2. 如若否,是何原因?隐患在何处?
3. 如若可,在使用redis时有何注意事项,而使系统稳定平稳。

谢谢。

PHPzPHPz2785 天前635

全部回覆(4)我來回復

  • 巴扎黑

    巴扎黑2017-04-17 11:03:10

    可以,从redis主页上可以看到已经有很多项目和公司使用了redis作为数据库方案。redis很多应用场景是内存型的临时存储,但是redis也提供了持久化存储的功能,所以数据落地是没有问题的。但是数据落地怎么做是比较重要的,如果比较频繁的dump数据到磁盘会比较吃力,不过你这里是小型网站的话应该问题不大。如果有必要可以把所有的落地操作在slaver机器上做来分散压力,redis对现在的master-slaver机制还不是很好,2.6好像还没能做到完全自动化的死机替换机制。可以参考下这里的文章可能对你有帮助:
    http://blog.nosqlfan.com/html/3537.ht...

    回覆
    0
  • 阿神

    阿神2017-04-17 11:03:10

    小型网站,如果并发不高,最好还是用MySQL之类的DB,毕竟数据有保证。
    并不是说Redis不安全,如果用Redis,你要权衡好持久化的方案,综合考虑性能和数据安全。
    其实两个都用是最好的,数据写到MySQL中,再从Redis读。。。

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 11:03:10

    首先我不建议你使用Redis做网站的主要数据库。
    首先Redis的数据结构是kv格式的,非常单一,虽然提供了丰富的排列和整理方法,但仍然比较单一。他的优势在于,满足需求的条件下,速度快。
    对于一个完整的网站,你要存储的数据结构一定较复杂,而且还有产生很多条件查询,这些都是Redis满足不了的。如果采用某些方式让Redis支持了,也会在性能上大打折扣。
    最后,你说网站规模较小,那么我认为使用MySQL是完全可以满足你性能和安全性的需求的。
    所以,我的建议是用MYSQL做为你的主要存储,对于某些缓存,数字,榜单等可以考虑放在Redis里。

    回覆
    0
  • 阿神

    阿神2017-04-17 11:03:10

    1. 是否redis可以用于小型项目的主要数据库。
    当然可以,对于key-value类型完全可以,对于按条件查询就不能满足了
    2. 如若否,是何原因?隐患在何处?
    (1)容量有限制
    (2)不支持按条件查询
    3. 如若可,在使用redis时有何注意事项,而使系统稳定平稳。
    (1)使用redis做为数据库,容量就受内存的限制,使用前需要做好容量规划,当然后期也可以做分库(如果不娴太麻烦的话)
    (2)数据量太大的话,性能是会受到影响的
    (3)做好主从同步备份

    回覆
    0
  • 取消回覆