小编zet*_*run的帖子

在Heroku上进行热部署,无需停机

推送到Heroku的一个不好的方面是我必须在运行数据库迁移之前推送代码(并且服务器自动重启).

这显然会导致用户在没有新表/属性的情况下浏览具有新代码的网站时出现大约500个错误:Heroku提出的解决方案是使用维护模式,但我想要一种没有缺点的方法让我的webapp每次都运行!

有办法吗?例如Capistrano:

  • 我准备代码部署在一个新的目录中
  • 我运行(向后)迁移,旧代码继续完美运行
  • 我将mongrel实例转换到新目录并重新启动服务器

......我没有停机时间!

ruby deployment capistrano heroku uptime

34
推荐指数
4
解决办法
9740
查看次数

Heroku应用程序的数据库管理

我对Rails和Heroku都很陌生,但我正在认真地将它用作部署我的Ruby/Rails应用程序的平台.

我想使用Heroku的所有功能,所以我更喜欢由Heroku管理的"嵌入式"PostgreSQL而不是Amazon RDS for MySQL的插件,但是我没有在SQL客户端访问我的数据的可能性. ..

我知道在一个制作精良的应用程序中你不需要访问数据库,但有一些情况(在配置表中添加行,查看未在视图中映射的数据,更新一些列以进行调试问题,性能监视,运行查询报告等)当这可能是好的...

你怎么解决这个问题?您在Heroku的真实应用程序中体验到了什么?

谢谢!

ruby database deployment ruby-on-rails heroku

18
推荐指数
2
解决办法
8039
查看次数

使用Ruby/Rails应用程序中的Google Analytics跟踪JSON调用

我搜索了很多关于这个问题,但我找不到任何好的东西.我认为这是一个常见问题:您拥有一个Web应用程序并在您的平台上构建JSON API,因此您可以开发一些小部件,移动应用程序或第三方应用程序.

我知道有很多通过API的特定分析服务(如Mixpanel,Kissmetrics和许多其他),但我想通过Google Analytics跟踪所有JSON调用.

我发现最好的方法是使用__utm.gif图像但奇怪的是我找不到任何插件或gem来使用这个图像.所以我试图建立自己的方法但没有成功(参见下面的代码)......有人可以帮忙吗?

def google_analytics_call(page_title)
      today = Time.now.to_i
      utma = cookies[:__utma].to_s
      utmb = cookies[:__utmb].to_s
      utmc = cookies[:__utmc].to_s
      utmz = cookies[:__utmz].to_s
      utma = (rand(8).to_s + "." + rand(10).to_s + "." + today.to_s + "." + today.to_s+ "." + today.to_s) unless cookies[:__utma]
      utmb = rand(8).to_s unless cookies[:__utmb]
      utmc = rand(8).to_s unless cookies[:__utmc]
      utmz = rand(8).to_s+ "." + today + ".2.2.utmccn%3D(direct)%7Cutmcsr%3D(direct)%7Cutmcmd%3D(none)" unless cookies[:__utmz]

      Thread.new do
        params = {
          :utmac => GOOGLE_ANALYTICS,
          :utmcc => "__utma%3D"+utma+"%3B%2B"+"__utmb%3D"+utmb+"%3B%2B"+"__utmc%3D"+utmc+"%3B%2B"+"__utmz%3D"+utmz+"%3B%2B",
          :utmcn => "1",
          :utmcs => "-",
          :utmdt …
Run Code Online (Sandbox Code Playgroud)

ruby json google-analytics ruby-on-rails

7
推荐指数
1
解决办法
2530
查看次数