草庐IT

ssh连接服务器经常断开连接的解决方案

全部标签

ruby - 使用 Ruby Net 实现重新连接策略

我正在开发一个将XML发布到某些网络服务的小型应用程序。这是使用Net::HTTP::Post::Post完成的。但是,服务提供商建议使用重新连接。类似于:第一个请求失败->2秒后重试第二个请求失败->5秒后重试第三次请求失败->10秒后重试...这样做的好方法是什么?简单地在循环中运行以下代码,捕获异常并在一定时间后再次运行?或者还有其他聪明的方法吗?也许Net包甚至有一些我不知道的内置功能?url=URI.parse("http://some.host")request=Net::HTTP::Post.new(url.path)request.body=xmlrequest.con

ruby-on-rails - 将 Rails/ClearDB App 推送到 Heroku 错误 'Can' t 连接到 '127.0.0.1' 上的 MySQL 服务器

每次我跑:gitpushherokumaster我收到以下错误:Running:rakeassets:precompilerakeaborted!Can'tconnecttoMySQLserveron'127.0.0.1'我在运行rails-vRails3.2.11和ruby-vruby1.9.3p194(2012-04-20revision35410)[x86_64-darwin12.2.0]我已经通过HerokuCLI安装了ClearDB,它似乎工作正常,但我无法找出这个错误。这是我用于生产的yml:production:adapter:mysql2encoding:utf8hos

ruby - Sidekiq 服务器未加载配置文件

我正在尝试使用我的sinatra应用程序设置sidekiq,并且我有使用配置文件启动sidekiqworker在守护进程模式下运行时遇到问题。我的项目有以下结构:project-config--sidekiq.yml#SidekiqConfigFile-app--app.rb#SinatraApplicationFile-Rakefile-Gemfile-etc.最终目标是创建一些rake任务来处理所有sidekiq任务。现在,我只是想通过命令行让它正常工作,然后我会通过rake让它工作。sidekiq.yml#SidekiqConfiguration---development:lo

ruby-on-rails - Rails (3) 服务器 - 现在用什么?

我一直在使用RubyEnterpriseEdition和Passenger(用于Apache,因为我无论如何都运行Apache来做其他事情),但我想知道现在是否有关于在服务器上使用什么的新趋势。例如,我听说过Thin、Unicorn……我也知道1.9.2比REE快,但我想知道RAM消耗情况。我宁愿它消耗更少的RAM,即使以牺牲一些速度为代价。感谢所有建议。 最佳答案 如果您想要最少的内存,您应该尝试Thin。它没有像Unicorn或Passenger这样的masterworker,因此使用较少的内存。假设你有一个非常小的应用程序需要

ruby-on-rails - 为什么 Rails 服务器会出现 "Could not find ' railties 错误?

当我使用railss启动Rails服务器时,出现以下错误:/usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:296:in`to_specs':Couldnotfind'railties'(>=0)among10totalgem(s)(Gem::LoadError)from/usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:307:in`to_spec'from/usr/local/lib/site_ruby/1.8/rubygems/core_ext/kernel_gem.rb:4

ruby - 使用 Ruby 和 net-ssh,如何通过 Net::SSH.start 使用 key_data 参数进行身份验证?

我已经阅读了net-ssh文档,但我仍然感到困惑。我可以手动进行身份验证(使用ssh-i...),也可以将key放在文件中并使用:keys参数。但是,我不想使用:keys参数,我想使用:key_data参数。任何人都可以举一个工作的例子吗?出于某种原因,直接将字符串输入:key_data是行不通的,它给出了错误:“既不是PUBkey也不是PRIVkey::嵌套的asn1错误”。当然,我用谷歌搜索了一下,它基本上告诉我要确保key是PEM格式。而且,当然是。有任何想法吗?如果需要,我可以提供更详细的信息... 最佳答案 我看到这个问题

第1部分 实验拓扑、终端服务器

目录1.1访问Cisco路由器的方法1.1.1通过Console口访问路由器1.1.2通过Telnet访问路由器1.1.3终端访问服务器1.2终端访问服务器配置命令汇总1.1访问Cisco路由器的方法    路由器没有键盘和鼠标,要初始化路由器需要把计算机的串口和路由器的Console口进行连接。访问Cisco路由器的方法还有Telnet、WebBrowser和网络管理软件(如CiscoWorks)等,本节讨论前2种。1.1.1通过Console口访问路由器    计算机的串口和路由器的Console口是通过反转线(Rollover)进行连接的,反转线的一端接在路由器的Console口上,另一

nginx配置https后报错nginx: [emerg] https protocol requires SSL support in XXX.conf详细解决方法

一、前言最近,在测试环境的nginx里增加了一个https配置:location/api-meeting-qq/{proxy_passhttps://api.meeting.qq.com/;}然后,执行命令://这个是nginx启动文件的路径,根据实际情况自行更改sudo/home/useradmin/nginx/sbin/nginx-sreload结果,nginx就报错了:nginx:[emerg]httpsprotocolrequiresSSLsupportin/home/useradmin/nginx/conf.d/trainNginx.conf:9二、解决方法百度发现,是之前安装ngi

ruby-on-rails - 无法连接到 chromedriver http://127.0.0.1:9515 (Selenium::WebDriver::Error::WebDriverError)

我已经从http://chromedriver.storage.googleapis.com/index.html安装了chrome-driver|而且我还安装了Google-chrome浏览器。我想使用chrome浏览器而不是Firefox浏览器运行cucumber测试用例,但我遇到了这个错误。任何帮助表示赞赏。谢谢 最佳答案 我遇到这个问题是因为rbenvshim覆盖了路径。值得检查whichchromedriver指向的位置。对我来说,解决方法是:gemuninstallchromedriver-helper和brewinst

ruby - 如何将哈希连接到 URL 参数?

一个快速的Ruby问题:params={:q=>"Aquery",:foo=>"bar",:nasty=>"Schrödinger'scat"}pdo_it(params)=>q=A%20query&foo=bar&nasty=Schr%C3%B6dinger%27s+cat(我认为ö是这样编码的,如果错了,请原谅)有没有比下面的更简单的方法来做到这一点?:defdo_it(params)out=[]params.each_pair{|key,val|out.push"#{CGI.escape(key.to_s)}=#{CGI.escape(val)}"}out.join("&")en