i could'nt hope a more detailed answer ! I've never use ruby thread before and it seems to be a the perfect pretext to try . merci Bluebie
2013/12/10 Bluebie <a...@creativepony.com> > Unless you’re running your camping app as a CGI script, the ruby instance > keeps running, so you could just create a looping thread to do it every now > and then: > > hours = 2 # cleanup every two hours > Thread.new do > loop do > # some database cleanup stuff > sleep hours * 60 * 60 > end > end > > The only trouble with that is you’d have it happening multiple times if > you run multiple ruby servers behind a proxy like nginx, which is a pretty > common configuration. Probably cron is the best way to go if you can easily > do that. Otherwise you could attach it to some other event - like you could > spawn a thread whenever a user logs in, which cleans up the sessions. If > you wanted it to happen less frequently you could use rand() to generate a > random number, then, say, cleanup if rand < 0.01 if you only wanted to > cleanup sessions every 1 out of 100 times someone logs in, roughly. That’s > a stratergy people use a lot with systems like PHP where cron can be > difficult to setup and access. > > I wouldn’t worry about it too much though. Your sessions will probably > still be quite small (only a couple dozen kilobytes, right?) so you can > probably just let them build up and then every six months or year or so go > and delete all the database records that are more than a week old in that > table. Storage is so cheap these days! > > — > Bluebie > > On Tuesday, 10 December 2013 at 9:29 pm, Francois Sery wrote: > > Bonjour, > Thanks for your help. Here is how i've modified my app. > now i have > - a 'session' model > - a "sessions" table with a column for my data... > - a session cookie: @state[:sessionid]=SecureRandom.hex > It works as wanted but i have one more question. > > how do you handle all the obsolete sessions in the database ? my code > already delete some sessions. but some other sessions can't be deleted > from the "flow" of my app. What are the available solutions? cron ? or > something else maybe? > > Merci. > > > > > 2013/12/7 Bluebie <a...@creativepony.com> > > If you fill the session cookie with 4kb of data, that means every http > request after that to that domain will require the user to upload 4kb of > data, which may not seem like much, but on a mobile phone for instance, > loading a page with 50 images, that becomes 4*50 = 200kb - pretty > significant considering most home internet connections do not have very > fast upload in many countries. On my own internet on a good day that’s at > least 2 seconds of uploading. > > So it is best to use session cookies only to store a very small > identifier, then store more information in a local database or file. If you > have a look in the rack project you’ll see some other session handlers > which do exactly this, so you can keep writing data in to the ‘session’ but > have it stored locally, with only a small cookie with an ID number to > lookup the local data stored in to the browser. > > — > Bluebie > > On Saturday, 7 December 2013 at 8:27 am, Charles McKnight wrote: > > Sure wish the W3C would devise a better state mechanism than cookies... > > On Dec 6, 2013, at 12:49 PM, Magnus Holm <judo...@gmail.com> wrote: > > You should not store a large amount of data in the session. The > session is stored in a cookie, and everything you store there has to > be sent back and forth over the network. You can however store an ID > in the session and lookup data in your database. > > // Magnus Holm > > > On Tue, Dec 3, 2013 at 12:04 PM, Francois Sery <sery.franc...@gmail.com> > wrote: > > hi , i need some advices. > I a little Camping app i have to store a cart in a session . i tried > achieving it using the default camping/session but it is limited to 4K and > my card miss some data. > how can store more than 4k in a session ? thanks. > > _______________________________________________ > Camping-list mailing list > Camping-list@rubyforge.org > http://rubyforge.org/mailman/listinfo/camping-list > > _______________________________________________ > Camping-list mailing list > Camping-list@rubyforge.org > http://rubyforge.org/mailman/listinfo/camping-list > > > "The game's afoot. Follow your spirit, and upon this charge, cry God for > Harry, England, and St. George." --- Sherlock Holmes > > _______________________________________________ > Camping-list mailing list > Camping-list@rubyforge.org > http://rubyforge.org/mailman/listinfo/camping-list > > > > _______________________________________________ > Camping-list mailing list > Camping-list@rubyforge.org > http://rubyforge.org/mailman/listinfo/camping-list > > > _______________________________________________ > Camping-list mailing list > Camping-list@rubyforge.org > http://rubyforge.org/mailman/listinfo/camping-list > > > > _______________________________________________ > Camping-list mailing list > Camping-list@rubyforge.org > http://rubyforge.org/mailman/listinfo/camping-list >
_______________________________________________ Camping-list mailing list Camping-list@rubyforge.org http://rubyforge.org/mailman/listinfo/camping-list