Partial subscriptions?

I’ve got an app running with a subscription for a fairly large number (~250) of documents from one collection… while each document has a modest amount of data to has to get to the client, there’s only one very small field that needs to be updated in realtime. The other fields in each document are static and cannot be changed within the app.

Unfortunately, using this system, even with a fairly respectable EC2 instance, things are starting to get sluggish around 50 concurrent users…
and I’m wondering if there is any way I could “mix” subscriptions and methods in a client collection ?

I’d like to do something like the following but so far Meteor immediately rejects the client side updates I make

// shared
OneFieldCollection = new Mongo.Collection('onefieldcollection');

// server
Meteor.publish('oneField', function(){
    return OneFieldCollection.find({}, { field : { onefield : 1 }});
});

// client
var sub = Meteor.subscribe('oneField');

var fetchedDataFromAjax = HTTP.get('OneFieldCollectionStaticData');

if(sub.ready()){
    fetchedDataFromAjax.forEach(function(item){
        var data = _.omit(item, 'data');
        OneFieldCollection.update(item._id, {
            $set : data
        });
    });
}

Ideas anyone ?

Hey there. Try, as a hack:

OneFieldCollection._collection.update(item._id, {
    $set : data
});

This should let you do the work client side only.