• 成都人民欢迎你~!

  • Rails 并发处理 at 2017年3月09日

    是。没有代码示例确实有点枯燥

  • Rails 并发处理 at 2017年3月09日

    换rack + sequel吧, rails只能堆机器 + 各种优化来弥补性能上的损失

    不要引入 active X系列 activemodel activerecord activesupport

    太占内存,rails系列,随便一个进程150M+内存是无压力的,代码质量差点,跑的时间久点,内存是会涨的,300M,500M/进程 无压力。

    查询加缓存

    非必要实时写入(指你当前时段写入的数据,在本次并发查询【一定】不会用到),可以考虑做延迟写入; 如果DB是mysql,精通mysql的话,可以自己做binlog收集及批量导入,不精通就算了,风险指数略高。

    rack + sequel + puma 多worker,在目前公司项目中,内存50M一个进程,几月稳定跑,进程不假死,内存固定不涨,不能说太多,说多了算是在黑Rails了。

  • 变量和字符串的拼接

    > ['我爱你', user.name].join
    > ['我爱你', user.name] * ''
    > '我爱你' << user.name
    > '我爱你'.concat(user.name)
    > format('我爱你%s', user.name)
    > '我爱你%s' % user.name
    .......
    

    还有其他的一些方法,当然执行效率是有差别的,也有些是rubocop不建议使用的,这里就不啰嗦了

    其中,array#*(arg) 这个要复杂些,可以看下源码及DOC(http://ruby-doc.org/core-2.4.0/Array.html#method-i-2A)

  • 默默地看你们搞事,我还是继续撸我的Ruby、Rack、Lua、DPDK,...

    Bye, Rails!

  • #40楼 @trenttian 看贴子里面你们都没有提Rails,而是只提了Ruby,现在你们公司应该没有用Rails来写API了吧,我猜你们是自己用Rack定制的一套Ruby API简易框架,我们这边也在这么干。 ^_^

  • #40楼 @trenttian 哈哈。。Robin还是一如既往的腼腆。

  • @trenttian 瞟了一眼,好像照片上木有佘伟大大了,是不在超有爱了么?

  • 邮件配置信息设置 at 2016年6月08日

    目前正在用dotenv来管理env https://github.com/bkeepers/dotenv

  • ActiveRecord::Relation.pluck(:name, :model, :date).group_by(&:shift).transform_values { |x|
      x.group_by(&:shift).transform_values(&:flatten)
    }
    => {"人名1"=>{"机种1"=>["日期1", "日期2", "日期3"], "机种2"=>["日期4"]}, "人名2"=>{"机种2"=>["日期5"]}}
    

RoRer@ChengDu