如果用 CodeIgniter 框架开发一个 V2EX 这样访问量大小的网站,数据库用什么好呢? 本来 PHP 配 MySQL 挺好的,但是好像 V2EX 上的讨论大家觉得 MySQL 是个坑。

2014-02-18 11:55:18 +08:00
 meteor2013
5893 次点击
所在节点    PHP
35 条回复
Shared
2014-02-18 12:25:38 +08:00
坑?
wwek
2014-02-18 12:25:38 +08:00
什么东西都可以是坑`` 用kv的没坑了?
我看未必.
我还是选mysql + nosql搭配
shiny
2014-02-18 12:26:47 +08:00
你确定不是说MongoDB才是个坑…… MySQL哪里坑了……
chloerei
2014-02-18 12:27:44 +08:00
照这么说编程就是个坑。
simapple
2014-02-18 12:32:45 +08:00
想的多了,先做出一个再说
2code
2014-02-18 12:34:15 +08:00
淘宝都可以使用mysql,你怕啥
hsu
2014-02-18 12:36:31 +08:00
1.V2EX只是社区,说MySQL是坑只可能是某些人的个人观点
2.数据库只是工具,为了更好的达成你的目标,你可以选择合适的工具,但不能觉得某种工具是坑,关键点在于工具使用者自身
3.我觉得连Facebook都可以用MySQL,那么我猜测你的站点应该也可以。
FrankFang128
2014-02-18 12:38:51 +08:00
MySQL 是坑的话谁敢说自己不是坑
raincious
2014-02-18 12:39:48 +08:00
不是坑。V2EX后台不知道怎么运算的,但是由于这么多功能(比如Block判断等等),占用了很多数据库的运算资源。优化好了(或者干脆去掉)或许能省掉一些。

另外用Redis给我最大的感觉是,原先用MySQL,只跟服务器聊一句然后取出所有数据的习惯改变了。用Redis的时候得蹭在服务器上,跟服务器聊很多句才能把数据取全。(先跟数据库连接,然后取list,然后根据list取hash什么的)。

当然,如果想节省MySQL,可以利用缓存。渲染好页面之后,把页面存在那里,访问的时候读缓存就好了,数据有变更的时候通知程序清理然后重建缓存,产生页面所需的查询只需要一次。

反正我的网站被我优化到大部分页面打开时,如果无需判断权限和用户是否登陆(安全相关的操作)的话,不需要蹭任何数据库,只需要从磁盘里把缓存读出来然后输出就好了。

// 当然,一旦涉及到权限判断,数据库肯定得蹭。但是我限制到每个页面大约10次查询。大部分页面30毫秒内能渲染好。

// 如果不蹭数据库只读缓存的话,5毫秒内几乎能搞定。
misaka
2014-02-18 13:50:01 +08:00
照这个标准啥不坑啊。。。这些都只是工具而已,很无辜的。
chenwl
2014-02-18 14:21:33 +08:00
用过的人玩的好才会觉得其中的坑,你没用过怎么知道坑在哪?说坑那是为了给别人参考而已。坑不是缺陷,只是一个想象中的不同。
highkay
2014-02-18 14:40:35 +08:00
mysql的复杂度在访问量上去以后运维压力直线上升,官方的解决方案还很初级,比较依赖第三方的解决方案,比如前面提到的facebook,淘宝和360开源的项目。相当来讲新一代的数据库,比如nosql的mongo,对scale out的需求充分的进行了设计,所以整体解决方案上是一种简化。另外,v2ex真不算什么大访问量……所以mysql妥妥的没问题,redis用来辅助处理一些关系型数据库不太好解决的需求。脱离具体需求谈数据库没什么意义。
Mihuwa
2014-02-18 15:01:59 +08:00
先做出来再说吧,“坑”后续还是可以填的。
kstsca
2014-02-18 15:10:25 +08:00
就算v2ex 用mysql 保证坨坨的。还没到那层面呢,真到那层面,各服务都是坑了。。
kchum
2014-02-18 15:42:42 +08:00
看设计,能缓存的都缓存吧。
tioover
2014-02-18 16:20:11 +08:00
说 mysql 是坑是不是因为甲骨文老贼?可以用开源分支
justfindu
2014-02-18 16:48:43 +08:00
先做一个出来再说是不是坑~ 反正ci换DBDriver还是挺方便~
66beta
2014-02-18 17:29:53 +08:00
我觉得坑是CI,换Laravel :)
Sivan
2014-02-18 17:58:37 +08:00
被忽悠的不用 MySQL 才是坑。
yakczh
2014-02-18 18:13:36 +08:00
ci才是坑,先忽悠进来,然后说不开发了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/100707

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX