• “粘包”是一个不存在的概念。提出这个概念的人肯定没有理解 TCP。send 不表示把数据作为一个包发出去了,receive 也不表示接收到的一定是一个包。开发者需要自己定义包格式以及解析规则,正好 Protocol Buffers 把这些事都做好了,直接用就好了。

    我见过有人为了解决所谓的“粘包”问题,每次 send 之后都来一次 sleep,以此保证另一端 receive 的时候不会受到多于一个包的数据,显然这是一种非常蠢的做法。之所以用这么蠢的做法,是因为脑子里臆想了一个更蠢的“粘包”概念。

  • 报名

  • !! 注意 delete_all 的坑 at 2017年07月07日

    前一段时间正好遇到了这个问题,当时没深入研究,原来是这样的。👍

  • production 环境的 assets:precompile 会压缩 JavaScript 代码,压缩代码用的 Uglify 需要解析代码,Uglify 目前还不支持 ES2015 语法,所以就出错了。 本地运行正常是因为 development 环境的 assets:precompile 不会压缩代码。相关的配置是下面这一行代码。

    # Compress JavaScripts and CSS.
    config.assets.js_compressor = :uglifier
    
  • 我把 node_modules 加入 linked_dirs,没遇到什么问题。

    LINKED_DIRS = %w(
      data
      log
      tmp/pids tmp/cache tmp/sockets
      vendor/assets/bower_components
      node_modules
    )
    set :linked_dirs, fetch(:linked_dirs, []).push(*LINKED_DIRS)
    
  • #21楼 @Neilpang 偶遇原作者。

  • Ruby 的爬虫世界 at 2016年12月04日

    https://github.com/httprb/http 用过这个写爬虫,遇到两个问题:

    • 貌似没有日志,RestClientFaraday 都有日志功能,可以把实际发送的请求写到日志中,可以检查请求的格式、参数是否正确。
    • 貌似不能自动处理压缩过的响应,比如这个地址 http://www.bilibili.com/index/index-icon.json 返回的就是 gzip 压缩过的响应。最后还是用 net/http 解决的。

    不知道有没有遇到类似问题的同学,欢迎分享解决方案。

  • #5楼 @piecehealth 还是这个最简单,终于找到了类似 Python python -m SimpleHTTPServer 的等价命令。不过那个 -run 总有一种黑魔法的感觉,-r un 简写成 -run 会让初学者迷惑吧。

  • gems.ruby-china.org 连不上 at 2016年04月03日

    #1楼 @lgn21st

    % ping gems.ruby-china.org                                                                           ➜
    PING 12f7b4-0.ca.1251971244.clb.myqcloud.com (45.113.69.41): 56 data bytes
    Request timeout for icmp_seq 0
    Request timeout for icmp_seq 1
    Request timeout for icmp_seq 2
    Request timeout for icmp_seq 3
    Request timeout for icmp_seq 4
    Request timeout for icmp_seq 5
    Request timeout for icmp_seq 6
    Request timeout for icmp_seq 7
    Request timeout for icmp_seq 8
    Request timeout for icmp_seq 9
    ^C
    --- 12f7b4-0.ca.1251971244.clb.myqcloud.com ping statistics ---
    11 packets transmitted, 0 packets received, 100.0% packet loss
    

    上海长城宽带,ping 都不通,但是 https://gems.ruby-china.org/ 可以勉强打开。这种情况应该是联系长城宽带还是联系腾讯云,哪种方案更容易解决问题?

  • helper 里面的那些方法本意是在 View 层使用的。可能 Rails 觉得这种情况下写法的便利性更优先,于是就把避免命名冲突的责任交个程序员自己了。