<div>I need help in clarifying exactly what MogileFS can do for me.&nbsp;&nbsp;<br><br>Basically I have an image hosting site.&nbsp;&nbsp;Currently I perform file storage through NFS.&nbsp;&nbsp;If someone can review what I have already below, and let me know if my site is an ideal candidate for MogileFS, that would be greatly appreciated! 
<br><br>Here&#39;s how it&#39;s done in detail:<br><br>Server WS = web server<br>Server IMG1 = image server 1<br>Server IMG2 = image server 2<br>Server IMG3 = image server 3<br>Server IMG4 = image server 4<br>Server IMG5 = image server 5 
<br><br>Uploaded images are stored using NFS.&nbsp;&nbsp;IMG1&#39;s image folder is mapped to WS&#39;s /www/site/images/img1/.&nbsp;&nbsp;Here&#39;s the chart:<br><br>Images for IMG1 are stored in /www/images/img1/ on WS.<br>Images for IMG2 are stored in /www/images/img2/ on WS. 
<br>Images for IMG3 are stored in /www/images/img3/ on WS.<br>Images for IMG4 are stored in /www/images/img4/ on WS.<br>Images for IMG5 are stored in /www/images/img5/ on WS.<br><br>Using the above strategy, my PHP application doesn&#39;t need to know that the storage is off-server.&nbsp;&nbsp; 
<br><br>To serve the images back to the user, instead of having it route from Client &gt; WS &gt; IMG1 &gt; WS . client, I&#39;m letting clients access these IMG servers directly, so that it becomes Client &gt; IMG1 &gt; Client. 
<br><br>This is done by giving each IMG server its own Apache and URl. Here&#39;s the chart:<br><br>Server IMG1 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img1.mysite.com/" target="_blank">img1.mysite.com 
</a><br>Server IMG2 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img2.mysite.com/" target="_blank">img2.mysite.com </a><br>Server IMG3 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img3.mysite.com/" target="_blank">
img3.mysite.com</a><br>Server IMG4 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img4.mysite.com/" target="_blank">img4.mysite.com</a><br>Server IMG5 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img5.mysite.com/" target="_blank">
img5.mysite.com</a><br><br>The problem is solved.&nbsp;&nbsp;However there are some drawbacks:</div>
<p>When images are overloaded, it becomes really </p>
<p>I need help in clarifying exactly what MogileFS can do for me.&nbsp; </p>
<p>Basically I have an image hosting site.&nbsp; Currently I perform file storage through NFS.&nbsp; If someone can review what I have already below, and let me know if my site is an ideal candidate for MogileFS, that would be greatly appreciated! 
</p>
<p>Here&#39;s how it&#39;s done in detail:</p>
<p>Server WS = web server<br>Server IMG1 = image server 1<br>Server IMG2 = image server 2<br>Server IMG3 = image server 3<br>Server IMG4 = image server 4<br>Server IMG5 = image server 5</p>
<p>Uploaded images are stored using NFS.&nbsp; IMG1&#39;s image folder is mapped to WS&#39;s /www/site/images/img1/.&nbsp; Here&#39;s the chart:</p>
<p>Images for IMG1 are stored in /www/images/img1/ on WS.<br>Images for IMG2 are stored in /www/images/img2/ on WS.<br>Images for IMG3 are stored in /www/images/img3/ on WS.<br>Images for IMG4 are stored in /www/images/img4/ on WS. 
<br>Images for IMG5 are stored in /www/images/img5/ on WS.</p>
<p>Using the above strategy, my PHP application doesn&#39;t need to know that the storage is off-server.&nbsp; </p>
<p>To serve the images back to the user, instead of having it route from Client &gt; WS &gt; IMG1 &gt; WS . client, I&#39;m letting clients access these IMG servers directly, so that it becomes Client &gt; IMG1 &gt; Client. 
</p>
<p>This is done by giving each IMG server its own Apache and URl. Here&#39;s the chart:</p>
<p>Server IMG1 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img1.mysite.com/" target="_blank">img1.mysite.com</a><br>Server IMG2 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img2.mysite.com/" target="_blank">
img2.mysite.com</a><br>Server IMG3 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img3.mysite.com/" target="_blank">img3.mysite.com</a><br>Server IMG4 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img4.mysite.com/" target="_blank">
img4.mysite.com</a><br>Server IMG5 = <a onclick="return top.js.OpenExtLink(window,event,this)" href="http://img5.mysite.com/" target="_blank">img5.mysite.com</a></p>
<div>The problem is solved.&nbsp; However there are some drawbacks:</div>
<ul>
<li>If an IMG server becomes full and I need to split the data, it becomes painful. Imagine having to copy arbitrary amounts of data from IMG1, then splitting that to IMG1 and IMG6.&nbsp; Then, you have to update the database so it knows of the split.
</li>
<li>Mounting NFS volumes for every single web server is&nbsp;a hassle.</li></ul>
<p>How can MogileFS help here?</p>