I need a progress indicator that shows the progress of a parser that writes the progress to a db. I have several other examples of the need of informing the users of proress. I will not put the parser in background process, as I think there should be a more simple solution, considering all the code that needs a background process for this solution to work Could one use a remote ajax call to start the e.g the parser and then onBefore call and Ajax function that asks the server about the progress as defined in the db Is this a possible approach? I so what Ajax function that asks the server about the progress should be used? Are better solutions? -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Sorry but there were too many typos Here is a corrected verion I need a progress indicator that shows the progress of a parser that also writes the progress state to a db. I have several other examples of the need of informing the users of progress of processes that takes some time. I will not put the parser in a background process, as I think there should be a more simple solution, considering all the code that needs a background process for this solution to work i my situation with many progress indicators Could one use a remote ajax call to start the e.g the parser and then call an Ajax function at the onBefore call back, that asks the server about the progress as defined in the db Is this a possible approach? If so what Ajax function should be used to ask the server db about progress? Are there other better solutions? -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On Mar 29, 2011, at 7:17 AM, Hans wrote:> Sorry but there were too many typos Here is a corrected verion > > I need a progress indicator that shows the progress of a parser that > also writes the progress state to a db. I have several other examples > of the need > of informing the users of progress of processes that takes some time. > > I will not put the parser in a background process, as I think there > should be a more simple solution, considering all the code that needs > a background process for this solution to work i my situation with > many progress indicators > > Could one use a remote ajax call to start the e.g the parser and then > call an Ajax function > at the onBefore call back, that asks the server about the progress as > defined in the dbThis should work, although you''re possibly going to hit some problems with server time-out on that initial request. All browsers will give you 2 request threads at a time, some will give you more than that. So you''d be filling your pipe with the one long-running one and the second intermittent "polling" call. If your parsing operation can be broken into multiple, shorter requests, then that would be the avenue I would pursue first. Otherwise, you stand to hit some very difficult- to-diagnose problems going down this route. As far as how to gauge progress, what sort of data are you storing, and can you do something lightweight like get a count of the number of rows when you start, estimate how many rows you will add, and then do a quick count at each status update request? Walter> > Is this a possible approach? > If so what Ajax function should be used to ask the server db about > progress? > Are there other better solutions? > > -- > You received this message because you are subscribed to the Google > Groups "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails- > talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org > . > For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en > . >-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Thanks for your advices My parsing operation is updating the db about each second I do not really understand what you mean by "your parsing operation can be broken into multiple, shorter requests", but in the current implementation is the parsing operation broken into steps and each step is performed each time the corresponding controller method is called from the periodically remote Ajax function Yes, I can do "something lightweight like get a count etc" I am doing it now and storing the result in the database Although this approach works for the parsing I do not think it is the way to go for all processes that needs a progress indicator. It seems to complicated for just beeing able to inform the user about progress. I am looking for a simplier method How is this problem solved bythe rails community? What is best practice ? On Mar 29, 3:05 pm, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote:> On Mar 29, 2011, at 7:17 AM, Hans wrote: > > > > > Sorry but there were too many typos Here is a corrected verion > > > I need a progress indicator that shows the progress of a parser that > > also writes the progress state to a db. I have several other examples > > of the need > > of informing the users of progress of processes that takes some time. > > > I will not put the parser in a background process, as I think there > > should be a more simple solution, considering all the code that needs > > a background process for this solution to work i my situation with > > many progress indicators > > > Could one use a remote ajax call to start the e.g the parser and then > > call an Ajax function > > at the onBefore call back, that asks the server about the progress as > > defined in the db > > This should work, although you''re possibly going to hit some problems > with server time-out on that initial request. All browsers will give > you 2 request threads at a time, some will give you more than that. So > you''d be filling your pipe with the one long-running one and the > second intermittent "polling" call. If your parsing operation can be > broken into multiple, shorter requests, then that would be the avenue > I would pursue first. Otherwise, you stand to hit some very difficult- > to-diagnose problems going down this route. > > As far as how to gauge progress, what sort of data are you storing, > and can you do something lightweight like get a count of the number of > rows when you start, estimate how many rows you will add, and then do > a quick count at each status update request? > > Walter > > > > > Is this a possible approach? > > If so what Ajax function should be used to ask the server db about > > progress? > > Are there other better solutions? > > > -- > > You received this message because you are subscribed to the Google > > Groups "Ruby on Rails: Talk" group. > > To post to this group, send email to rubyonrails- > > talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > > To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org > > . > > For more options, visit this group athttp://groups.google.com/group/rubyonrails-talk?hl=en > > . > >-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On Mar 29, 2011, at 4:19 PM, Hans wrote:> Thanks for your advices > > My parsing operation is updating the db about each second > I do not really understand what you mean by "your parsing operation > can be > broken into multiple, shorter requests", > but in the current implementation is the parsing operation broken into > steps and each step is performed each time the corresponding > controller method is called from the periodically remote Ajax functionMy mistake. I was thinking that your parsing operation was something larger, like maybe breaking down a large input into multiple records within the span of one request. Walter> > Yes, I can do "something lightweight like get a count etc" I am doing > it now and storing the result in the database > > Although this approach works for the parsing I do not think it is the > way to go for all processes that needs a progress indicator. > It seems to complicated for just beeing able to inform the user about > progress. I am looking for a simplier method > How is this problem solved bythe rails community? What is best > practice ? > > On Mar 29, 3:05 pm, Walter Lee Davis <wa...-HQgmohHLjDZWk0Htik3J/w@public.gmane.org> wrote: >> On Mar 29, 2011, at 7:17 AM, Hans wrote: >> >> >> >>> Sorry but there were too many typos Here is a corrected verion >> >>> I need a progress indicator that shows the progress of a parser that >>> also writes the progress state to a db. I have several other >>> examples >>> of the need >>> of informing the users of progress of processes that takes some >>> time. >> >>> I will not put the parser in a background process, as I think there >>> should be a more simple solution, considering all the code that >>> needs >>> a background process for this solution to work i my situation with >>> many progress indicators >> >>> Could one use a remote ajax call to start the e.g the parser and >>> then >>> call an Ajax function >>> at the onBefore call back, that asks the server about the progress >>> as >>> defined in the db >> >> This should work, although you''re possibly going to hit some problems >> with server time-out on that initial request. All browsers will give >> you 2 request threads at a time, some will give you more than that. >> So >> you''d be filling your pipe with the one long-running one and the >> second intermittent "polling" call. If your parsing operation can be >> broken into multiple, shorter requests, then that would be the avenue >> I would pursue first. Otherwise, you stand to hit some very >> difficult- >> to-diagnose problems going down this route. >> >> As far as how to gauge progress, what sort of data are you storing, >> and can you do something lightweight like get a count of the number >> of >> rows when you start, estimate how many rows you will add, and then do >> a quick count at each status update request? >> >> Walter >> >> >> >>> Is this a possible approach? >>> If so what Ajax function should be used to ask the server db about >>> progress? >>> Are there other better solutions? >> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Ruby on Rails: Talk" group. >>> To post to this group, send email to rubyonrails- >>> talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org >>> To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org >>> . >>> For more options, visit this group athttp://groups.google.com/group/rubyonrails-talk?hl=en >>> . >> >> > > -- > You received this message because you are subscribed to the Google > Groups "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails- > talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org > . > For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en > . >-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.