Ruby China
  • Topics
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • Sign Up
  • Sign In
@quakewang
VIP
NO. 162 / 2011-11-22

[email protected]
上海
26 Topics / 752 Replies
212 Followers
4 Following
22 Favorites
GitHub Public Repos
  • rfcs 1

    This repository contains proposals, standards and documentations related to Nervos Network.

  • linux 1

    Linux kernel source tree

  • cfn-node 0

  • ckb 0

    CKB is a public/permissionless blockchain, the layer 1 of Nervos network.

  • ractor 0

    Rust actor framework

  • autocorrect 0

    A linter and formatter for help you improve copywriting, to correct spaces, punctuations between ...

  • ckb-vm 0

    CKB's vm, based on open source RISC-V ISA

  • ckb-auth 0

    A consolidated library featuring numerous blockchains authentication techniques on CKB-VM

  • hyprnote 0

    Privacy-first AI Notepad for back-to-back meetings

  • fiber-scripts 0

More on GitHub
  • Overview
  • Topics
  • Replies
  • Favorites
  • Following
  • Followers
  • 请教如何让 ActiveRecord 的查询按照某个虚拟字段排序 at March 03, 2014

    我们的应用有类似需求,不同的是用牛顿冷却算法,比你这个稍微复杂一点点,我们加了 2 个字段 initial_score 和 current_score 在内容创建地时候算一个原始分(根据用户等级,内容质量等),然后用 crontab 每天执行一次 sql: update xxx set current_score = initial_score * exp(timestampdiff(day, created_at, now()) * -0.12) 需要用到排序的地方就按 current_score 来排序就可以了。

    hacker news 的算法因为不需要保留原始分,你只需要加一个字段,用 crontab 每小时执行一次 sql 计算既可。

  • 升级 Ruby 2.1 以及 GC 调整 at March 01, 2014

    #7 楼 @vincent 没有太多空闲服务器资源,我用 ab 跑了一下普通压力的,和 2.0 相比没有什么差别。

    #6 楼 @huacnlee tmm1 的文章里面已经介绍很详细了,主要就是看 major 和 minor GC 发生的频率,旧代和新代 GC 的统计,用来调整 GC 参数看效果用。

  • 关于客户端发送 gzip 压缩数据解析的问题 at February 21, 2014

    apache deflate 模块支持 input gzip,只要配置一下,后端的 app server 就和普通的 http request 一样获取 params 就可以了。

    nginx 不支持,可以在 rails 里面写个 middleware 来处理

    ActiveSupport::Gzip.decompress(request.raw_post)
    
  • rpush The push notification service for Ruby. at February 19, 2014

    我们 iOS apns 后端就是用它的,之前叫 rapns,只支持 apns 和 gcm,现在改名了,加了很多其他服务的支持。

  • ActiveRecord Transaction 的疑问 at February 18, 2014

    #25 楼 @luikore 你这个例子在事务里面只读了一次,没有发生 repeatable read 啊

  • [上海] 沐遥信息技术有限公司诚聘 Ruby 工程师 (五险一金,福利全面,拥有萌妹子运营团队哦,萌妹子照片更新咯,简历投起来,加入我们哦~) at February 17, 2014

    这么萌的妹子,可以兼职吗?

  • [上海][2014年2月23日] 2014 年 2 月 周末聚会 at February 16, 2014

    报名 +1

  • 七牛 gem 'qiniu-rs' at February 13, 2014

    callback 能不能支持视频信息,我不是很确定,但你可以在收到 callback 以后调用他们的 avinfo api 来获取视频信息,然后保存下来,就是要多一次 api 请求。

    最早七牛的照片上传也是无法在 callback 里面附带这些信息的,我提建议后他们很快就加上了,如果视频 callback 没有这个功能,你可以像他们提建议。

  • 七牛 gem 'qiniu-rs' at February 13, 2014

    #5 楼 @liuhui998 我们视频上传目前只有在 app 客户端做的,是先在客户端计算出长度,大小,然后作为附属信息放到 callback url 参数。

    照片是七牛支持在 callback 的时候,自动附上这些属性的。

  • order 方法会导致 SQL Injection 吗? at January 20, 2014

    因为调用的 sql driver 是执行单句查询,不支持加;的多句 sql 语句。 如果不用白名单过滤话,在你附上的文档里面已经解释了可以用 order 来做值猜测(不过没有人在数据库存明文密码吧...),还可以用来做复杂的 sql 计算实现 DDOS 目的。

  • 令人苦恼的性能问题 at January 16, 2014

    这可以通过设计缓存的粒度来解决,我们的应用在 api 上也有类似你说的权限判断问题,比如用户访问一个地点,需要返回该用户是否收藏过这个地点以及该地点的其他信息,可以将这部分拆封开来,我们用的是 rabl 做模板输出,代码类似如下:

    object @attraction
    node :current_user_favorited do |a|
      user_signed_in? && PoiFavorite.where(:poi_type => 'Attraction', :poi_id => a.id, :user_id => current_user.id).present?
    end
    extends "api/attractions/show_cache"
    

    然后在 show_cache 这个文件里面,再可以用 Preload 减少 N+1 的查询:

    object @attraction
    ActiveRecord::Associations::Preloader.new(@attraction, :xxx => xxx).run
    attributes :id, :name, :description, :lat, :lng
    ...
    

    供参考

  • Prawn 中文显示问题 (已解决) at January 14, 2014

    你需要定义一个 font_families,比如用微软雅黑,将字体文件放到这个路径下,

    font_families["msyh"] = {
        :normal => { :file => "#{FONTS_PATH}/msyh/msyh.ttf" },
        :bold => { :file => "#{FONTS_PATH}/msyh/msyhbd.ttf" }
    }
    

    然后用这个字体来显示中文

    font("msyh") do
       font_size 75
       text "中文测试", :align => :center
     end
    
  • Ruby 2.1.0 in Production 的 bug 必须修啊,这个宜早不宜迟啊。 at January 13, 2014

    这个 gist 里面提到的 faraday 错误,正好前 2 天在测试 ruby 2.1 我们的代码也遇到了,搜索了一下 github,有相关 issue: https://github.com/lostisland/faraday/issues/328 根源在: https://github.com/geemus/excon/issues/358 具体的 ruby bug: https://bugs.ruby-lang.org/issues/9352

  • 大家平均多久搬家一次?总共搬了多少次? at January 13, 2014

    出生到现在,小时候同父母搬过 2 次家,自己成家以后就没搬过。 平均 18 年搬家一次,这记录在社区可以 top 3 了吧

  • Production 下大家都是怎么解决定时任务的? at January 06, 2014

    看你的描述没有严格要求必须是间隔 4 秒,这就很简单了,写个 daemon 进程,抓一次,抓取时间设置个合理的 timeout,然后 sleep 4 秒。

  • 打印出数字 2014,但是代码里不能有任何数字 之 Ruby 版 at January 04, 2014

    排名第 2 的 Python 版本也很 cool 啊,不过用 ruby 只要一个函数,感觉有点作弊,哈哈:

    "Happy new year to you!".sum
    
  • 如何让一个 AR 用起来像是另一种 Obj? at January 03, 2014

    第一个可以用 delegate

    class CACertificate < ActiveRecord::Base
      attr_accessor :cert
      delegate :subject, :xxx, :to => :cert
    
      after_find do |record|
        self.cert = OpenSSL::X509::Certificate.new record.raw
      end
    end
    
  • 支持多音字的汉字转拼音 ruby-pinyin 0.3.0 发布了 at December 30, 2013

    #20 楼 @jan OK,这个配置好

  • 支持多音字的汉字转拼音 ruby-pinyin 0.3.0 发布了 at December 30, 2013

    这个和分词有关吧,就例子里面的,如果在这个上下文: 南京市长江大桥在清明节视察了精神病院

    那就是

    南京 市长 江大桥

    长就是 zhang 的音了...

    所以还是不要带分词,让需要的人用分词好的结果再进入这个 gem 来获取拼音。

  • 双色球组合 ruby 版 (just for fun) at December 30, 2013

    #5 楼 @miclle * 展开还可以省掉 to_a

    [[*1..33].sample(6).sort, [*1..16].sample]
    
  • 七牛 gem 'qiniu-rs' at December 30, 2013

    我翻了一下代码,我们用的是 Qiniu::RS.establish_connection!

    是不是文档问题?

  • [已解决] 豆瓣第三方登录总是报错误,请搞过的小伙伴指点一下 at December 28, 2013

    你试试看这个,我们网站就是用这个的。 https://github.com/liluo/omniauth-douban-oauth2

  • Ruby 2.1 is out. at December 26, 2013

    升级完毕,单元测试以及人肉测试中...

  • Teahour.fm 第 41 期发布: 跟 Quake Wang 聊蝉游记 at December 26, 2013

    #13 楼 @n00b1 推荐第一册,第一册是通用介绍,比如人力,组织,产品等各个行业都会有的数据建立模,后面 2 册偏向具体行业,比如医疗,电信等具体行业的模型。

  • Teahour.fm 第 41 期发布: 跟 Quake Wang 聊蝉游记 at December 24, 2013

    第一次做这种远程录音,中间 NG 多次,哈哈。

    #5 楼 @small_fish__ nginx 改了 header,为了方便干掉各种恶意的后缀扫描爬虫

  • 2 个 Ruby 题目,有效率要求 at December 23, 2013

    都是大学算法课教过的东西,第一题就是 DP 的经典例子:

    def max_sum(a)
        max, head, tail, current_head = 0, 0, 0, 0
        sum = [[0, a.first].max]
        1.upto(a.size - 1) do |i|
            sum[i] = [0, sum[i-1] + a[i]].max
            if sum[i-1] == 0 && sum[i] > 0
              current_head = i
            end
            if sum[i] > max
                max, head, tail = sum[i], current_head, i 
            end
        end
        p "#{a[head..tail]} => #{max}"
    end
    

    第 2 题翻书去...我也忘记了...

  • 『思想的火花』12 月 21 日 周末场 -《为什么蝉游记只有一个后台程序员》&《火花 API 设计实践》 at December 12, 2013

    #20 楼 @wikimo 简称全端工程师

  • Prev
  • 1
  • 2
  • …
  • 8
  • 9
  • 10
  • 11
  • 12
  • …
  • 24
  • 25
  • Next
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English