可以用 Faraday
https://github.com/lostisland/faraday
conn = Faraday.new(url: "http://youapp.com") do |conn|
# POST/PUT params encoders:
conn.request :multipart
conn.request :url_encoded
conn.adapter :net_http
end
payload[:file] = Faraday::UploadIO.new('/path/to/avatar.jpg', 'image/jpeg')
conn.put '/upload', payload
在 Faraday 的 README 页面以及有非常多的例子了
给出的信息还不够详细,Puma,Nginx 配置发出来看看,还有 502 的是什么样的功能
上面的 DSL 和 Ruby、Grape 巨像
试了一下,将 Unicorn 的 fork {} 改成 vfork,能跑起来 Rails,Ruby China 的代码上面展示看起来没问题。
我又尝试写了个全局变量,没发现进程之间能共享呢,多次刷新那个全局变量的 object_id 在变 哦,是 Master 和 Child 共享,我搞错了
ps aux 看了一下,两种方式的内存占用量也没区别
来,试试把 Unicorn 的 fork 改成 vfork 看看能否节省内存、共享全局变量
你应该用 Nginx 来处理这些文件
class Abc
def initialize(opts = {})
@title = opts[:title] || ""
@flat = opts[:flag] || ""
end
end
简单啊,假设两个域名
user = User.allocate
user.init_with()
好有 Objective-C 的感觉
新的更新,我们没用 influxdb-ruby 来直接写性能统计数据,而是先用 Logger 写成 rpm.log,内部是 JSON 格式,然后用 Fluentd 来收集,最后再用 fluent-plugin-influxdb 写到 InfluxDB 里面。
这样一来可以尽可能的避免打点的网络请求影响正常的应用,比如耗时、超时异常等
顺便说一句,据我目前的使用来看 influxdb-ruby 这个库还有问题,我们在 Rails + Unicorn 部署的时候,async 模式没法提交数据,write_point 动作一直没写,一直到 Unicorn 重启或停止,数据才一下写进去
异步的代码在这里,https://github.com/influxdb/influxdb-ruby/blob/master/lib/influxdb/worker.rb
都没人维护的,用浏览器吧,Ruby China 在 iPhone 浏览器上面体验还是很好的
/api 是反向代理到 rubygems.org 官方的,这里由于是数据库的,没法做缓存、预先下载这类的
因为 /api 关了,RubyGems 没法获取正确信息,所以都拉了 如果 /api 开着的话,有很大几率反向代理会失败,而导致无法正确安装 Gem
所以,权衡下来,暂时将 /api 的反向代理关闭了
用 Slack 接通知的想法不错!
刚刚讲 /api 的反向代理切到了 bb-m.rubygems.org 现在似乎好了
我把 /api 关掉了
RubyGems 官方的 API 有时候无法访问,淘宝镜像必须要反向代理那个服务,不然某些 Gem 无法正常安装
rvm get stable
sed -i .bak 's!cache.ruby-lang.org/pub/ruby!ruby.taobao.org/mirrors/ruby!' $rvm_path/config/db
rvm install 2.2.0
我就说它能赶在我们项目发布前 release
楼主错误那个截图不能截得全一点么?