问题标签 [exq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
redis - Phoenix with exq:如何在不运行 redis 的情况下执行混合测试
我在 Phoenix 1.4.16 的 Phoenix 应用程序中使用 exq 来运行一些后台作业。
其中之一可以像这样简单:
它在开发环境中完美地与redis一起运行。
问题是当我将代码推送到没有 redis 的 CI 服务器时,所有测试都失败了。
测试配置是这样的
在config/test.exs 中:
在test/test_helper.exs 中:
当我在没有运行 redis 的机器上运行“混合测试”时,它会像这样失败:
实际上我尝试了所有 3 种模式:redis、:fake和:inline,但它们都无法启动混合测试。
问题:我可以在没有 redis 的机器上运行“混合测试”吗?
原因是我们公司不想在Travis CI机器上安装redis。
我希望在测试环境中使用 Exq Mock 可以让测试在没有 redis 的情况下运行,但事实并非如此。
ruby-on-rails - 使用 exq 和 Sidekiq 在 rails 和 phoenix 之间进行通信
我正在尝试在 Rails 和 Phoenix 框架之间添加桥梁以进行通信。到目前为止,我可以在 Rails 中排队工作,这些工作由 Exq 在 phoenix 框架中获取。
但是我在从 Elixir 排队工作以获取 Rails 时遇到问题。我试过这个,它排队工作
但是 Rails 一侧的 Sidekiq 会抛出错误"error_message\":\"undefined method jid=' for #< RailsQueueJob:0x00007fe599dfda50>
。碰巧没有这方面的文档。我怎样才能从 elixir 中入队并让 Sidekiq 接手工作。
elixir - 运行 Elixir exq 工作人员时模块不可用
我使用 Elixir exq构建了一个异步作业处理应用程序。文档说我可以使用终端(带有iex -S mix
)或作为独立应用程序(带有mix exq.run
)运行应用程序。当我在终端上运行时,一切正常,但是当我运行独立应用程序时,我在获取作业时收到此消息:
我究竟做错了什么?
这是我的lib/my_worker.ex
文件:
和我的mix.exs
我的config/config.exs
: