草庐IT

ruby-on-rails - 有没有办法在所有 Heroku 测功机上运行命令?

我有N个Rails应用程序测功机,我想对所有测功机运行一个命令。有办法吗?运行railsr"SomeRubyCode"是否会在所有dynos上执行?我使用的插件每M分钟与第三方同步一次。问题是,有时第3方服务会超时,我想再次运行它而不必再等待M分钟。 最佳答案 没有。一次性命令(如herokurunbash)在另一个一次性dyno上运行。您需要设置某种pubsub/消息队列,所有dynos都会收听以完成此操作。https://devcenter.heroku.com/articles/one-off-dynos

ruby-on-rails - 在 Heroku 上的 Sinatra 应用程序中, session 未跨 Dynos 共享

这是有道理的。但是,这个问题有哪些首选解决方法? 最佳答案 在我的评论中,我建议使用rackcookiebasedsessions,但仔细观察,Sinatrasession无论如何都是Rackcookiesession。进一步看,我foundthisintheSinatradocs:Toimprovesecurity,thesessiondatainthecookieissignedwithasessionsecret.ArandomsecretisgenerateforyoubySinatra.However,sincethiss

ruby-on-rails - 1 个 Heroku dyno 上有多少个 Rails 应用程序?

我只是找不到一个dyno可以在heroku上托管多少个应用程序?我计划托管很多流量很小的小应用。感谢您的回答 最佳答案 Dynos是根据每个应用程序计算的。但是,这并不意味着您需要购买3个测功机才能运行3个应用程序。您可以创建3个应用程序,每个应用程序有1个dyno。 关于ruby-on-rails-1个Herokudyno上有多少个Rails应用程序?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

ruby-on-rails - Heroku dynos/worker 的性能如何?

在www.Heroku.com上具有1或2个Dynos的站点可以处理多少流量增加worker会改善这一点吗?对测功机/worker的任何帮助将不胜感激。 最佳答案 这blogentry可能有用。他详分割析了heroku可能遇到的瓶颈类型,以及增加dynos的帮助,并提供了officialperformanceguideonheroku的链接和信息。以及一些可帮助您测试自己的应用的工具。工作人员的表现实际上取决于您的网站是如何构建的以及您将它们用于什么目的。称为DelayedJobs的后台处理(图像格式化、帐户修剪等)是你如何让他们工

javascript - 是否可以在没有 web dyno 的情况下将 Node.js 应用程序部署到 Heroku?

对于一些背景故事和引用,这里引用了一些Heroku文档页面。来自HerokuNode.jsSupport>Activation:TheHerokuNode.jsbuildpackisemployedwhentheapplicationhasapackage.jsonfileintherootdirectory.来自HerokuNode.jsSupport>Defaultwebprocesstype:First,HerokulooksforaProcfilespecifyingyourprocesstypes.IfnoProcfileispresentintherootdirectory

java - 你能以编程方式访问当前的 Heroku dyno id/name 吗?

在Heroku上,您能否以编程方式从应用程序中获取当前正在执行代码的dyno的某种标识符?例如dyno名称(例如“web.1”或“worker.1”)或其他一些ID。如果是,如何在Java中执行此操作? 最佳答案 总是有机器的主机名(看起来像d.LONG_GUID。我想(虽然没有尝试过)这应该有效:Stringlocalhostname=java.net.InetAddress.getLocalHost().getHostName();此外,还有一个鲜为人知的secret,但您可以通过查看环境变量PS1的值来获取“web.1”、“w

node.js - 使用 Redis 的 Heroku Node.js 应用程序上的 WebSocket 和多个 Dyno

我正在构建一个部署到Heroku的应用程序,它使用WebSocket和Redis。当我只使用1个dyno时,WebSocket连接工作正常,但是当我扩展到2个时,我发送事件我的应用程序执行两次。constws=require('ws')constjwt=require('jsonwebtoken')constredis=require('redis')constUser=require('../models/user')functionverifyClient(info,callback){lettoken=info.req.headers['sec-websocket-protoco

具有多个 Heroku Dynos 的 Django session

我在Django中构建了一个带有登录/注销功能的简单网站,并将其部署到Heroku。我正在使用内置的Django身份验证用户。我已经验证,当用户登录时,他们会看到一个个人资料页面,并且在刷新后他们会保持登录状态。当我将Heroku测功机的数量增加到超过1时,session不再持久。我的意思是,在用户登录后,一两次刷新后,用户将注销。我相信这是因为每个请求都转到一个特定的测功机,每个测功机都隔离地维护session状态?显然,当session仅在用户碰巧从正确的dyno请求时才有效时,我的网站无法运行。为了尝试解决这个问题并允许我的Django应用程序使用多个dyno,我使用了djang

ruby - Heroku worker dyno 进程间的 TCP Socket 通信

我想知道如何在Herokuworkerdyno上的进程之间进行通信。我们希望Resqueworker读取队列并将数据发送到在同一个dyno上运行的另一个进程。“其他进程”是一个现成的软件,通常使用TCP套接字(端口xyz)来监听命令。它被设置为在Resqueworker启动之前作为后台进程运行。但是,当我们尝试在本地连接到该TCP套接字时,我们一无所获。我们设置队列的Rake任务是这样做的:task"resque:setup"do#Firstlaunchourlistenerprocessinthebackground`./some_process_that_listens_on_po

python - 在 Heroku dyno 上运行多个进程是否可行?

我知道Heroku平台的内存限制,而且我知道将应用程序分成Web和workerdynos的可扩展性要高得多。但是,出于测试目的,我仍然希望与Web进程一起运行异步任务。Dynos很昂贵,我想在Heroku提供的免费实例上制作原型(prototype)。在与Web进程相同的dyno中生成新作业作为进程或子进程是否有任何问题? 最佳答案 在较新的Cedar堆栈上,生成多个进程没有问题。每个dyno都是一个虚拟机,除了内存和CPU使用率(我认为大约512MB内存和1个CPU核心)外没有特别的限制。遵循某些堆栈(例如Python)的较新安装