I am writing here after so long. Actually was busy with new search implementation. Elgg 1.7 really did a great job of full text search. From full text search point of view, there is nothing to do. But what for the high traffic elgg sites. Entity Attribute Database Model could be hell for the search of 1000s of records. We are dealing with high traffic site and that's why i am always digging for the available options.
We have implemented elgg search plugin based on Apache Solr. And it is asolutely what i was looking for. Great search capabilities. Particularly for high traffice sites. Yet plugin is under development. Almost 70% is done. I will soon release this plugin to the community.
Here you can read more about Elgg + Solr implementation. http://tarunjangra.com
The way elgg is growing now really need a serious look at the possible performance aspects. We can see lots of discussion on elgg's community related to performance issues. I am particularly pointing out towards the database. Because elgg's database model is following "EAV" (Entity attribute value) model. No doubt it gives us such lots of flexibility over plugin development. Plugin development is totally independent from the database. Without touching even a single table, column we can create full working plugins with lots of functionality. But on the other hand, This model is lil harsh on database. So we are researching on such performance aspects. According to me, there could be two important factors we can take benefit from.
- Cloud computing like offering by( Amazon EC2).
- Any caching technique like APC ( Alternative PHP Cache), MemCache.
Well Memcache is considered by elgg's core team which is yet under experimental stage. And i don't think, if there could anyone who is taking benefit from MemCache. According to our point of view, APC could be better option. In the cloud by distributing resources, we can really get an exceptional performance boost. So with the mixture of all these, Elgg really could be a power house.


