Too many sessions in a rails 4 app.

I am building an E-commerce website on ruby on rails from scratch.

My product belongs to a subcategory which in-turn belongs to a category.

My filters partial include multiple check-boxes for category,subcategory,additional_category(Like hand made clothes,factory built etc.),lifestyle(relaxed,corporate etc) and cloth_material_type(this has around 30 options)

I am sending an array for each of these 5 cases to the backend to search through the associations.

Now when a non logged in user reloads the page the filters set by user resets to default.

To avoid this I have three options in mind.

Option 1. Store the filter values set by the user in the cookies which is fast.But it might slow down the user's browser.

Option2 . Store the values in a session using ActiveRecord::SessionStore gem which will increase the size of session for me to 65K but would slow down the application.

Option 3 .Using jquery modify/create document.url options so that every filter option gets appended to the document.url and on reload I get the parameters set by the user for filtering.But this looks very cumbersome to implement.

Option 4. Use ruby gems like rails temporary data etc.

Can someone guide me which would the best way to store temporarily these details for a non logged in user.

Edit: I have opted for creating session with Session Store gem but I will become cumbersome to maintain this.

Please suggest as to which would be suitable for this situation (Sorry for the bad English!)

This isn’t terribly difficult to implement, especially if you’re reloading the page when the products are filtered - just make the form use GET and the URL will have all the user’s selections. This is also helpful for users who want to bookmark or share the filtered list, as the entire state of the view is encoded in the URL.

–Matt Jones