> -----Oorspronkelijk bericht-----
> Van: robert mena [mailto:[email protected]]

> a) database
>
> Should I use regular databases?  In my case MySQL with the master -
> slave situation.  Or should I try Mongo/Cassandra because of the
> auto-sharding features?   This is something that I don't need right now
> but some sort future planning.

I don't have enough experience to advice on this, however: MySQL also
supports a cluster mode, NDB. It should work transparently but will spread
the storage and query workload across multiple nodes.

> b) content management
> 
> in my app I have to upload files (images) besides text.  The text is
> stored in the database so If I stick with the database replication I'll
> be fine.  But how about the other files?  I think I need to control
> which files have been uploaded to the management node and if they were
> correctly replicated to all the client nodes.
> 
> Since the database changes are small (in size) when compared with the
> media files I think that ideally I should wait until the files are
> replicated before the database is replicated (or at least that record).
> 
> Is this reasonable?  Should I try to do this (or any other approach)
> from ZF or use another tool?
> 
> For the replication of the files I am considering some sort of queue to
> generate a list of files and call rsync to do the actual transfer.

Do you need ZF when accessing the files or are they purely static? If they
are completely static, I'd consider creating separate nodes for static
content. Replication can be done using RSYNC, but maybe a network file
system might be useful. Redundancy might become a problem however.

Another solution might be to have a 404 handler that triggers an update
somehow. For some systems we use, files are stored in the database and
cached on the node on first access.


I hope these few cents are helpful.

Vincent de Lau
 [email protected]

Reply via email to