u shouldnt use the server for processing collisions,and also an array would cause severe lag, just the matter of writing in everythings position each frame is a lag machine, take that "fluid sim cap (it was sand)" that i made a while ago as an example, at over around 2000 pixels it started to kill the cpu, and thats barely anything, its a 50x40 sprite and an mmo has lots of sprites. . what i would do is is write each players progress, items, xp ect. to the server and actually handle the matter of collisions using parties and hosts, parties of 10-20 per host could probably work
the person with the best connection in the party would be chosen as the host automatically for his party and when you break from a party you become your own host, i dont know excactly what u need to do in your mmo, but id use parties and hosts, instead of one huge server which is guarenteed to lag, servers could be used to hold stats, things that dont need to be constantly acsessed, and with clever script you could make things work very nicely