我目前正在构建一个 API 并且正在寻找一种工具来允许我监视(在 GUI 中)和速率限制使用情况。我遇到了一些企业解决方案,包括:
Apigee 企业计划正是我正在寻找的,但计划的起价为 3000 美元/月,超出了我的价格范围。其他解决方案要么太贵,要么不提供我正在寻找的解决方案。
这让我看到了一些开源选项,包括:
清漆似乎是一个相当完整的解决方案;但是,我需要构建一个 GUI 来可视化数据。
我的最后一个选择是使用 EventMachine 和 ruby 从头开始构建解决方案。
有什么建议吗?
乘客最近获得了对 Nginx 的支持,它作为 Rails 应用程序的 Web 服务器与 Apache 相比有什么优缺点?
我安装了 Ruby 2.1.2 和 Rails 4.2。
捆绑安装运行没有错误。
我可以毫无错误地执行 Rails C。
Rails s -p3004 使用 webrick 或 Thin 启动,没有错误
当我浏览到 mytestsite:3004 safari、firefox 和 chrome 时都报告“无法连接到服务器”
任何系统日志中都没有错误显示;syslog、lfd.log、auth.log 或任何 apache 日志。
如果我启动我的 4.04 站点,端口 3001、3002 工作正常。如果我关闭 4.04,并在端口 3001 或 3002 上启动 4.2,我会收到“无法连接到服务器”错误。这对我来说似乎意味着它不是阻止端口的防火墙问题。尽管如此, iptables -L 报告端口 3004 已打开:
ACCEPT tcp -- anywhere anywhere ctstate NEW tcp dpt:3004
Run Code Online (Sandbox Code Playgroud)
Rails 报告:
=> Booting WEBrick
=> Rails 4.2.0.beta1 application starting in development on http://localhost:3004
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown …Run Code Online (Sandbox Code Playgroud) 经过多年的共享托管,我刚刚切换到 VPS,所以我需要提高我的管理技能。几年前,我是 UNIX 管理员,但我很生疏,特别是不知道管理网络堆栈 (LAMP) 的细节,并投入了一点 RoR。
关于快速管理此堆栈的良好参考的任何建议?这是一个个人网站,所以我不需要对安全/性能过于执着。
我已经设置了一个 Postfix + Courier 服务器,并且有一个使用 SMTP 服务器设置配置的 Rails 应用程序。每当 Rails 应用程序尝试发送电子邮件时,这就是 Postfix 日志中显示的内容(在 master.cf 中设置的其他日志详细程度)
Feb 22 03:57:24 alpha postfix/smtpd[1601]: Anonymous TLS connection established from localhost[127.0.0.1]: TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)
Feb 22 03:57:24 alpha postfix/smtpd[1601]: smtp_get: EOF
Feb 22 03:57:24 alpha postfix/smtpd[1601]: match_hostname: localhost ~? 127.0.0.0/8
Feb 22 03:57:24 alpha postfix/smtpd[1601]: match_hostaddr: 127.0.0.1 ~? 127.0.0.0/8
Feb 22 03:57:24 alpha postfix/smtpd[1601]: lost connection after STARTTLS from localhost[127.0.0.1]
Feb 22 03:57:24 alpha postfix/smtpd[1601]: disconnect from localhost[127.0.0.1]
Feb 22 03:57:24 alpha …Run Code Online (Sandbox Code Playgroud) 我在这里遇到了一个非常奇怪的问题,每次我尝试在非 SSL 模式下浏览我的 Rails 应用程序时,Chrome (v16) 和 Firefox (v7) 一直强制我的网站在 HTTPS 中提供服务。
我的 Rails 应用程序使用 Capistrano、nginx、Passenger 和通配符 SSL 证书部署在 Ubuntu VPS 上。
我在 nginx.conf 中为端口 80 设置了这些参数:
passenger_set_cgi_param HTTP_X_FORWARDED_PROTO http;
passenger_set_cgi_param HTTPS off;
Run Code Online (Sandbox Code Playgroud)
我的 nginx.conf 的长版本可以在这里找到:https : //gist.github.com/2eab42666c609b015bff
ssl-redirect.include 文件包含:
rewrite ^/sign_up https://$host$request_uri? permanent ;
rewrite ^/login https://$host$request_uri? permanent ;
rewrite ^/settings/password https://$host$request_uri? permanent ;
Run Code Online (Sandbox Code Playgroud)
这是为了确保这三个页面在来自非 SSL 请求时使用 HTTPS。
我的 production.rb 文件包含这一行:
# Enable HTTP and HTTPS in parallel
config.middleware.insert_before Rack::Lock, Rack::SSL, :exclude => proc { |env| env['HTTPS'] != …Run Code Online (Sandbox Code Playgroud) 我在一个项目中,我们将在我们拥有的 Linux 服务器上托管 Ruby on Rails 应用程序。是否所有版本的 Linux 都能够托管 Rails 应用程序?如果不是,那么某些 Linux 发行版中存在哪些功能,而其他对于托管 Rails 应用程序必不可少的功能则没有?
目前我只在我的 Rails 应用程序日志文件中获得 ActiveRecord 和视图渲染输出,因为我从 WEBrick 切换到 Puma。我一直找不到可以修改 Puma 日志记录输出级别的地方。想法?
目前您无法使用 yum 安装 yarn,因此似乎没有一种简单的方法来创建在资产预编译之前安装它的配置。
我们在许多应用程序服务器上安装了 3 个 Ruby on Rails 应用程序(A、B 和 C)。我们的前端是 HAProxy,后端是 Apache + Phusion Passenger。最初我们在每个应用程序服务器上都安装了所有 3 个 Rails 应用程序,但是这个设置很慢,因为 HAProxy“不知道”给定的 Rails 应用程序在给定的支持服务器上是否“热”。

每个乘客实例配置为最多运行 8 个 Rails 应用程序实例。
考虑以下场景(简化):
在每分钟有大量请求的大计划中,所有 3 个 Rails 应用程序经常在每个应用程序服务器上启动和停止,这很慢。
在完美世界中,应用程序启动一次并处理大量请求,而无需关闭和重新启动。这就是为什么我们必须在 3 个 Rails 应用程序之间划分我们的应用程序服务器:
问题:是否有一个负载均衡器软件可以“感知”后端并且知道并使用以下信息来平衡负载:
load-balancing haproxy ruby-on-rails phusion-passenger high-load
ruby-on-rails ×10
nginx ×3
linux ×2
ssl ×2
apache-2.2 ×1
haproxy ×1
high-load ×1
hosting ×1
https ×1
lamp ×1
logging ×1
monitoring ×1
port ×1
postfix ×1
proxy ×1
starttls ×1
tls ×1
web-server ×1