-Re: Multi-user PlusAnonymousUserDataModel
Aleksei Udatšnõi 2012-02-02, 10:51
The goal is to produce anonymous "cold start" user-based
recommendations in an environment of 100-200 concurrent users.
It may work in a synchronized way as is with only one fixed
TEMP_USER_ID. However while one anonymous user insert its temp data
into the model, other threads have to wait until the TEMP_USER_ID is
With high volume of concurrent users, it may become a serious
bottleneck. So I would like to improve the throughout.
If you find it is not a useful feature for core, I can implement it in
my custom recommender.
On Thu, Feb 2, 2012 at 11:21 AM, Sean Owen <[EMAIL PROTECTED]> wrote:
> Why does this make it useful in a multi-user environment? you can already
> use it just fine, with synchronization.
> I am wary of making this hacky wrapper more complex.
> 2012/2/2 Aleksei Udatšnõi <[EMAIL PROTECTED]>
>> I would like to make a change to PlusAnonymousUserDataModel. Currently
>> the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
>> of temp data can be inserted into the model and used at one time.
>> I propose the change to enable multiple users to insert into this
>> model concurrently in a thread-safe manner.
>> The idea is to define a pool of available anonymous user IDs. Every
>> time a new anonymous user makes a request, the next available
>> TEMP_USER_ID is pulled from the queue. After recommendations are
>> retrieved, the TEMP_USER_ID can be returned to the pool.
>> As the result this model will become usable in a production multi-user
>> Waiting for your feedback,