Skip to content

Add ActionCable benchmarks for PostgreSQL and Redis #54

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Feb 10, 2016
Merged

Add ActionCable benchmarks for PostgreSQL and Redis #54

merged 3 commits into from
Feb 10, 2016

Conversation

maclover7
Copy link
Contributor

First kick at this. Let me know if any improvements need to be made!

cc @tgxworld @SamSaffron

Benchmark.rails("actioncable_postgres", time: 10) do
pg_config = { adapter: 'postgresql', url: PG_DB_URL }.with_indifferent_access
with_puma_server(ActionCable.server, 4001, pg_config) do |port|
sleep
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This server needs to run in the background. Not sure how that will be handled, given that the actual benchmark itself needs to be run.

@tgxworld
Copy link
Member

tgxworld commented Feb 2, 2016

@maclover7 I didn't forget about this :P Was busy last week. I'll get merge in by this week

@maclover7
Copy link
Contributor Author

👍

@maclover7
Copy link
Contributor Author

ping @tgxworld

@bf4
Copy link
Contributor

bf4 commented Feb 9, 2016

In beta2 actioncable runs in ssme process

@@ -25,3 +25,5 @@ gem 'sqlite3', '1.3.10'
gem 'mysql2', '0.3.18'
gem 'pg', '0.18.1'
gem 'benchmark-ips', '~> 2.2.0'
gem 'em-hiredis', '~> 0.3.0'
gem 'redis', '~> 3.0'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we might need to add faye-websocket in here too

@tgxworld
Copy link
Member

Hi @maclover7 Sorry for dropping the ball on this 😢 . Anyway I couldn't get the benchmark to run. Here is what I tried:

RAILS_MASTER=1 bundle install
RAILS_MASTER=1 ruby benchmarks/actioncable_redis.rb

I got this

rails/vendor/bundle/ruby/2.3.0/bundler/gems/rails-00a5eb6aeb12/actioncable/lib/action_cable/server/configuration.rb:18:in `initialize': undefined method `join' for nil:NilClass (NoMethodError)

@maclover7
Copy link
Contributor Author

^ The above commit works for me.

@tgxworld
Copy link
Member

Hmmm ok let me look into it then..

@maclover7
Copy link
Contributor Author

Sorry -- wasn't clear there. Pushed up a commit number 2 that fixes the error you were seeing. I was seeing it as well before my fix 😄

@@ -25,3 +25,7 @@ gem 'sqlite3', '1.3.10'
gem 'mysql2', '0.3.18'
gem 'pg', '0.18.1'
gem 'benchmark-ips', '~> 2.2.0'
gem 'em-hiredis', '~> 0.3.0'
gem 'redis', '~> 3.0'
gem 'faye-websocket'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I usually lock the versions so that we know any performance changes are not due to the gems

@tgxworld
Copy link
Member

Thanks @maclover7!!!!

tgxworld added a commit that referenced this pull request Feb 10, 2016
Add ActionCable benchmarks for PostgreSQL and Redis
@tgxworld tgxworld merged commit e3254d5 into ruby-bench:master Feb 10, 2016
@maclover7 maclover7 deleted the add-ac-benchmarks branch February 14, 2016 03:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants