Please do not ping community members for non-moderation reasons. Doing so will not solve your issue faster and will make people less likely to want to help you.
Hey @vikiival | KodaDot , I believe you're right, but since that's not directly related to Browser Rendering, I would encourage you to post your question on the Workers channel in order to get a better answer regarding what you're trying to accomplish with WebGL
@Pedro You had mentioned that the team is working on updates to Session handling. Can you give us an idea on when those updates might be available? I understand that you probably can't be very specific, but are we thinking weeks? Months? Q1? Q2?. Can you give any sort of estimate?
What I would like is to be able to start a "Durable Browser" and be charged per "Durable Browser" session started. CF would then handle all that behind the scenes stuff to keep the browser open and running (and restarting after crashes, or memory leaks, or whatever) and I don't have to worry about it. And then I can know in my code that I'm only registering 1 or 5 or 10, and then I can manage it accordingly. I'm not sure how that would work from a scalability perspective. But I can't stomach the volatility of either being charged pennies or thousands of dollars because of a memory leak in the browser, which I can't control, crashing and restarting. Or even things like deploying new code or attaching to the log viewer; if I understand right, my durable objects get reset; which starts a new browser session.
questions about sessions and number of pages and geography. I saw that for $5 a month you get 500 sessions. I was wanting to check multiple search results on certain google searches. 1. Is there a way to define the cloudflare geographic node making the remote request. 2. Is there a limit to how many pages I could view in a single session? 3. Can I block this service from other cloudflare customers using this on my domains? 4. (general puppeteer question..can't find a conclusive answer in google) Is there a good suggestion on how to add a simple timestamp to screen shot with the lowest overhead?
(for #4, I injected a new div node with the time stamp before taking a screenshot and that solved my issue!) Now reading back about needing to create and keep open a durable object to maintain a single session if necessary to avoid going over 500 and seeing that it says open as long as there is not a empty 60 seconds. SO if I had had a cront job that checked perhaps a 100 pages with a sleep delay of 3 seconds to allow the content to load before doing a screen shot, and say this cron runs once a day then theoretically it can run 15 minutes giving me the opportuity to run 15 * 60 / 3 = 300 pages in a single cron job max per session
We are making changed to the product so that in the future you won't have to manage the DO and keepint it alive. We also have plans to add geolocation, so you can choose where the request will be originated, but it is not yet available in current beta. Thanks for sharing your solution for the timestamp
thanks pedro for the update that's great to hear geo location and not have to manage a DO. I dont want to maintain a DO as its one more thing to think about (and haven't played with a DO yet...so far I'm rocking the D1 database and R2 storage)
so.. concurrency is very bad when using browser rendering DOs right? If two requests occur simultaneously, one will often overwrite the puppeteer "page" while the other is waiting for page load. What's the recommended way to avoid this? Durable Object input gates are not suitable for this purpose
Although I'm not entirely sure it's needed? Haven't played around with it too much, but would you not be able to get the existing browser, then create a new page, and use that page? I don't think that overwrites it?