V2EX 首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 是一个什么样的地方?
• 这里大量的成员热爱编程和图形设计
• 这里有关于虚拟世界话题的讨论
• 也有真实世界的
• 信息量的多少在这里是始终重要的
• 作为立场,我相信这个世界在持续变得更好
V2EX  ›  V2EX

V2EX 从过去一年半中学到的几件事

  •  
  •   Livid · 2013-09-16 15:53:05 +08:00 · 8313 次点击
    这是一个创建于 1495 天前的主题,其中的信息可能已经有所发展或是发生改变。
    38 回复  |  直到 1970-01-01 08:00:00 +08:00
        1
    sethverlo   2013-09-16 16:03:54 +08:00   ♥ 3
    突然发现感谢楼层和感谢主题金币数还不一样……
        2
    66450146   2013-09-16 16:09:08 +08:00
    @Livid 在可定制忽略节点的情况下,默认技术还那么有必要吗
        3
    Livid   V2EX Moderator   2013-09-16 16:11:43 +08:00   ♥ 1
    @66450146 给从来没有访问过这里的人的第一印象。
        4
    moroumo   2013-09-16 16:41:16 +08:00
    那个ppt里提到,不要把redis作为主要存储DB(应该没理解错吧)。
        6
    zhou533   2013-09-16 17:08:38 +08:00
    @moroumo 我们是MySQL管写,redis管读,这样会有一个一致性的问题
        7
    kdlijian   2013-09-16 17:13:06 +08:00
    首页时间轴问题,看豆瓣的首页变化了多少回就可以理解楼主所说不假。
        8
    linsk   2013-09-16 17:14:15 +08:00 via iPhone
    学到很多。赞。
    很多方面都在成长!那么 内容质量也成长了吗?
        9
    ipconfiger   2013-09-16 17:20:31 +08:00
    @Livid Redis现在用起来了么?怎么用地?
        10
    aisk   2013-09-16 17:22:07 +08:00
    现在v2ex几台机器了?
        11
    est   2013-09-16 17:41:22 +08:00
    v2ex都跑到一百万行了?看来大水车很强啊!
        12
    toctan   2013-09-16 18:44:04 +08:00   ♥ 1
    @Livid 关于首页时间轴,有一类主题我觉得很有信息量,比如说你发那一类英文标题加一个链接的主题,但是吸引不到回复,因为一般人就算打开链接看了之后也不知道除了“碉堡了”也不知道说什么,但这类回复在 V2EX 是不受欢迎的。这个问题我觉得可以通过鼓励感谢主题并加重感谢主题在排序的权重部分解决,防止这类主题过快掉出主页。
        13
    Livid   V2EX Moderator   2013-09-16 18:45:17 +08:00
    @toctan 我考虑过专门为这类信息设计一些更好的发布流程和展现方式。其实 Daring Fireball 就是这样的一个 linklog。
        14
    Livid   V2EX Moderator   2013-09-16 18:45:28 +08:00
    @est 金融系统的数据……
        15
    raincious   2013-09-16 18:54:47 +08:00
    那么多纠结的方案。

    为什么不考虑默认是“最热”?这样也能体现网站的主题内容吧?
        16
    buru   2013-09-16 18:58:18 +08:00 via iPhone
    链接的帖子可以参考hacknews的投票
        17
    Numbcoder   2013-09-16 19:28:47 +08:00
    已经迁移到 Redis 了吗?
    很好奇具体的架构方案。
        19
    est   2013-09-16 19:59:47 +08:00
    @Livid 这个理解~!reddit也遇到这样的问题。后来是通过cassandra解决的。
        20
    jimliu   2013-09-16 20:22:38 +08:00
    @宝玉xp:看了《V2EX 从过去一年半中学到的几件事》http://t.cn/z8Y1mn4 我这几年做Openlab,感受差不多。小站的首页时间轴,简单做就可以了,数据量不大就不要做复杂的算法;中小型网站,数据库直接用Redis就足够了,可以去掉MySql或SqlServer,这也是我接下来想做的。另外补充一条:屏蔽匿名用户防内容审查。
        21
    yukirock   2013-09-16 20:42:17 +08:00
    请问一下例如什么样的 DNS 服务是 CF 不支持的?
        22
    passluo   2013-09-16 21:11:03 +08:00
    so,到现在你们还在为 V2EX 运营而自掏腰包么?没有实现收支平衡?

    业界良心!
        23
    Livid   V2EX Moderator   2013-09-16 21:12:29 +08:00 via iPhone   ♥ 1
    @passluo 最大也最贵的投入是时间。
        24
    passluo   2013-09-16 21:15:50 +08:00
    @Livid 谢谢你和你们。

    :)

    中秋快乐。
        25
    remaerd   2013-09-16 21:28:10 +08:00
    谢谢 @livid!一直在关注 V2EX 被攻击的消息。我也从中学到不少东西。
    我记得您之前说过 现在的 V2EX 在 Digital Ocean 跑。我有点好奇像 V2EX 这样的网站,现在用了多少个 Droplets?
        26
    Livid   V2EX Moderator   2013-09-16 21:31:25 +08:00 via iPhone
    @remaerd 目前只用了一个。
        27
    remaerd   2013-09-16 22:01:10 +08:00
    @Livid =_= 我还以为会用到很多,看来性能不错。谢谢你的 Reply
        28
    ufo22940268   2013-09-16 22:17:28 +08:00   ♥ 1
    看了之后学到很多新名词,谢谢livid
        29
    iamsk   2013-09-16 23:16:08 +08:00
    @Livid 完全去掉 MySQL 直接用 Redis 是怎样考虑的,看文章是性能的考虑,实际大家应该都是结合使用的,像是时间轴这些可以只用 Redis,但多数重要数据还是存 MySQL 或其他关系型数据库的,如果切换为 Redis,安全性,数据恢复这些方面怎样考虑呢,毕竟宕机重启这些情况是比较常见的。完全用 Redis 就得自己手动维护 Schema,应该也是比较耗时的,并且不像 MySQL 那样直观
        30
    Ricepig   2013-09-17 00:01:17 +08:00
    感谢 @Livid

    我发现这居然是介绍Vagrant是什么的最通俗易懂的一篇文章
        31
    sitin   2013-09-17 00:13:42 +08:00
    感谢@Livid 学习了。
        33
    virushuo   2013-09-17 12:47:21 +08:00
    我想问问redis的持久性问题怎么解决?我记得是到秒级别的硬盘同步?这样很容易丢数据。我曾经设计的解决方案是多个node做cluster,但还是对缺乏持久化比较担心,所以我一直没敢单独用redis。

    我用redis一般是把mysql中已有的持久化数据换一个更利于性能的结构放进来,即当作一种稍微复杂的缓存用。如果我没理解错,你的意思是想把redis当作主要数据库用?
        35
    Livid   V2EX Moderator   2013-09-17 13:23:19 +08:00
    @virushuo 对,下一个项目中,打算完全不用 MySQL。

    可能还是会需要用到一个 Redis 的 ORM,这个语法和我们目前在用的 ORM 挺接近的:

    https://pypi.python.org/pypi/rom
        36
    hlcfan   2013-09-17 19:23:33 +08:00
    我看到对 POST/PUT 请求频次限制机制,对于时间段和请求URI同时做限制的话是不是粒度有点细了?仅仅只限制请求IP会不会好一点。
        37
    diamondtin   2013-09-26 15:13:25 +08:00
    @virushuo Redis 默认的 rdb 方式是 snapshot 的,可以自己定义触发 snapshot 的条件,可以是定时,也可以是单位时间写入超过一定数量才触发。还有 AOF 方式,是 append 的方式写入增量 journal,可以自己定义 fsync 的触发条件(默认每秒一次),这种方式丢数据的概率就很小了。但是 AOF 方式对 IO 会比较敏感。redis 的 sentinel 做 failover,所以服务可用性也有保证,我们用 gevent patch 过的 redis driver,监听 sentinel 的 pubsub channel,failover 的切换非常快。我们游戏的 leaderboard 都是用 redis 做主存的,连接不高的部分用 mongodb。
        38
    virushuo   2013-09-26 16:06:48 +08:00
    @diamondtin 多谢分享。fsync这个方式对IO压力还是很大的,如果这样,感觉就失去用redis的意义了。所以一般应该还是要靠failover的吧。


    @livid 不错,等你切换了分享经验。
    DigitalOcean
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   鸣谢   ·   1574 人在线   最高记录 3541   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.0 · 63ms · UTC 06:54 · PVG 14:54 · LAX 23:54 · JFK 02:54
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1