1. Advertising
    y u no do it?

    Advertising (learn more)

    Advertise virtually anything here, with CPM banner ads, CPM email ads and CPC contextual links. You can target relevant areas of the site and show ads based on geographical location of the user if you wish.

    Starts at just $1 per CPM or $0.10 per CPC.

Website Architecture & advice.

Discussion in 'Cluster Computing' started by hzzg6y, Jul 24, 2014.

  1. #1
    Dear All,

    I need help on planning my architecture for dating site. We are having customer who will upload their photos.
    This is always going to grow. Various size of photos will added every day by registered customers.

    My website is currently on Rackspace SSD VPS server using Cpanel. Since SSD space is very limited & Expensive, I cannot used it for storing the user photos / images.


    Requirement : Photos can be uploaded,Retrieved, viewed very fast like facebook. & should be scalable.
    SEMrush
    1. Option 1. - I create seperate server of ngnix [ static content ] & create the trusted network so that from main site [ VPS],Customer photos can be stored in particular directory on seperate server... viewed with URL path

    2. Option 2. - To the same VPS SSD server, attach additional Volume & create the Partition where User photos can be uploaded, retrieved & viewed with URL path

    Any advice on faster uploading, retrieving & viewing will be great help. I know we have CDN as solution however it is bit expensive
    for so much space of photos...

    Rgds,
     
    hzzg6y, Jul 24, 2014 IP
    SEMrush
  2. KingViper

    KingViper Member

    Messages:
    49
    Likes Received:
    4
    Best Answers:
    0
    Trophy Points:
    48
    #2
    I went for the separate NGINX server to store and stream content to end users.
    Scalability in your case is not that much a hardware issue, but a software one.

    In the event that you grow large enough to need to expand over numerous storage servers, and you decide to deal with it on a system level, you could do this by using the correct filesystem - GlusterFS is something that may come very handy in creating a cluster of data from all servers.
    This, however, as convenient as it is, is dangerous too, as it adds another layer of complexity. For your case it is also a bit too much. As such, you may be better off investing into a CDN+Storage at some point, instead of developing and supporting your own infrastructure.

    If you decide to fight the problem on the software side, you will save a lot of effort. A bunch of storage servers then could easily be utilised by your platform.
    In that case you would need to simply interconnect servers via any tool of choice, then pool the storage via any MHDDFS-like tool, and you will not even need to change much of your current web platform code. However you will still have to maintain the bare metal and this may cause trouble when you have too many servers.

    Please note that GlusterFS and the likes are not bad at all, in fact they are a great way to go, but they are usually utilised where the load and concurrency of usage is so big, or of such type, that any outsourcing would cost a very big bill, and any traditional filesystem approach will simply be not nenough. Your case is not the same, and CDNs nowadays have very nice pricing.

    One hint: Cloudflare CDN is free
     
    KingViper, Jul 26, 2014 IP
  3. Agileblaze

    Agileblaze Greenhorn

    Messages:
    6
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    21
    #3
    GlusterFS is a good solution but still it will be a pain point if someone has to move the servers to a different data center. I would recommend going with a cloud storage like S3 so that migration will be easier.
     
    Agileblaze, Jan 3, 2015 IP