mediagoblin-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GMG-Devel] Plugin for page view counter


From: Nathan Yergler
Subject: Re: [GMG-Devel] Plugin for page view counter
Date: Mon, 14 Jan 2013 08:29:26 -0800

I'd like to advocate for *not* doing a database write on a page view,
particularly not one that's going to be subject to a high degree of
lock contention on a higher traffic site. Write-on-GET should be a
signal to think about things carefully, as it imposes a limit on how
you can scale the software. If I recall correctly the stack still has
Celery in it; tossing a job into the queue and accepting some latency
with the stats isn't free, but it would reduce the amount of
contention.

Also keep in mind that either proxying the media file to trigger a
stats increment, or embedding it in the HTML surrounding the media,
mean you can't do any caching in front of the application: every
request needs to hit the application server.

Best,

NRY

On Mon, Jan 14, 2013 at 7:36 AM, Christopher Allan Webber
<address@hidden> wrote:
> Tiberiu C. Turbureanu writes:
>
>> Thanks for the pointer, Chris!
>>
>> I need a way to increment the view counter only when the media file is
>> loaded. How can I achieve this?
>
> I'm not sure what you mean.  Do you mean:
>  - only when the page is loaded
>  - or something more complex: only if someone clicks "play" on a song or
>    video?
>
> The solution I was talking about involves number one.  As for number
> two, that would be a lot more complex, but I imagine it could be
> achieved via one of two things:
>  - Easier solution: javascript callback on play that notifies the
>    browser of playing starting.
>  - Much, much trickier solution: you might be able to set up a proxy
>    view before serving the actual video that first increments the file,
>    but then tells the web server to send the video via X-Sendfile.  That
>    sounds too complex to me though, and might be especially hard if a
>    browser "seeks" the media to read just a few frames to get a preview
>    image or do some preloading, which it might do in some
>    configurations.
>
>> Also, Sebastian Spaeth told me that at the moment there is no way for a
>> plugin to alter the template of the media page, but a hook mechanism is
>> being discussed. That why until the implementation is ready, I think I
>> will go for a new page under a route like this
>> /u/<string:user>/m/<string:media>/viewcount.
>
> Spaetz is right, there's no present solution to this.  After I go
> through my merge-a-thon this week though, I'll be switching onto some
> plugin development, and will be looking into a solution to allow plugins
> to extend pages more easily.
>
>  - Chris
> _______________________________________________
> devel mailing list
> address@hidden
> http://lists.mediagoblin.org/listinfo/devel


reply via email to

[Prev in Thread] Current Thread [Next in Thread]