Samuel Guo wrote:
1) What is the relationship between concurrent users, registered users, the
storage spaces used in mysql, and the storage spaces used in filestore?
It seems that more than 50G disk space will be consumed while loading
1000 concurrent users's files.
Actually, it's a lot more than that now. More like 100 GB. The space
required for the db is still very small - a fraction of a gb (although
we hope to enhance that). Each concurrent user has 100 users in the db
and files corresponding to these 100 users in the filestore. See the
presentation on the olio web page for details on the relationship
between the various entities. There are two tables in the presentation
that gives details on storage. http://incubator.apache.org/olio
2) There are a lot components in a Web 2.0 application: Http Servers, MySql
Databases, Memcached instances and file storage. Each component may become
the bottleneck of the system if I didn't configure it right. Is there any
suggestion that how to configure a SUT(System under test) while comparing
the performance of the system using different filesystems as the backend
filestore. Such as, the scale of the test(the number of concurrent users),
the number of nodes used as httpserver, the number of memcached instances,
and so on.
And how to avoid the bottlenecks from other components while comparing
different filesystems as the filestore?
That's a tough question. Olio is a macro-level app and workload. As such
it is difficult to focus on just one component without tuning the whole
stack. One suggestion I have is that you run the workload at a small
scale (say 1000 concurrent users) and get a profile of the workload on
the filestore. If you can get a reasonable understanding of the number
of reads/writes/file creates etc. you can then write a micro-benchmark
to simulate the same load on the filesystem without having to worry
about tuning the whole Olio stack.
Oops - I really shouldn't be saying this ! I do want more users to come
join our project :-)
If that seems like too much work, you can still stick with Olio. The
good news is that it does place a substantial stress on the file system
(2nd only to the web server). Tuning the web server is relatively easy -
you should find tons of information on apache/php tuning if you google
for it. With memcached on, the php workload has a minimal impact on the
database.
I am looking forward to your reply. And please forgive my limited knowledge
about Olio.
We all need to start somewhere - welcome to Olio and I hope you find it
useful.
Thanks,
Samuel
Shanti