Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Development for cloud based site.

Options
  • 21-12-2010 1:59pm
    #1
    Registered Users Posts: 695 ✭✭✭


    Hey, I'm wondering about developing for the cloud. As far as I understand, the cloud is basically just a cluster of computers.

    A typical website these days might be written in PHP with a db for storage. I'm wondering though, does this type of site fit into the typical type of cloud hosting?
    Since being on the cloud means your website might be stored in several places, is there state type problems (sessions etc) that must be considered?

    Say I log onto www.example.com which is hosted on a cloud, and I get connected to the closest server which happens to be in dublin, I log in with a persistent cookie, a moment later I load www.example.com again and this time get connected to a copy of the site in London, will the session work reliably?

    I'm sorry if this is confusing, just I am not quite clear on whether there are several copies of the site and db, or just one.

    Thanks


Comments

  • Registered Users Posts: 171 ✭✭conorcan2


    DaSilva wrote: »
    I'm wondering though, does this type of site fit into the typical type of cloud hosting?

    Amazon, for example, offer loads of PHP/MySQL services (called instances). As you said, the cloud is just a computer(s).
    DaSilva wrote: »
    Since being on the cloud means your website might be stored in several places, is there state type problems (sessions etc) that must be considered?

    I don't know. I'm guessing a website should be served from the same server per user per session. i.e. This situation doesn't happen: An Irish user is served from the French server and then halfway through their session, the pages are then served from the American server. I think you're thinking of edge based hosting rather than cloud based hosting.
    DaSilva wrote: »

    I'm sorry if this is confusing, just I am not quite clear on whether there are several copies of the site and db, or just one.

    I don't know the answer, but with Amazon you choose where your server/databsae will be hosted. For extra money/configuration, you can add the type of technology you are talking about (CDN/edge based hosting) but it's not necessarily part and parcel of 'cloud computing'.


  • Registered Users Posts: 171 ✭✭conorcan2


    >> Since being on the cloud means your website might be stored in several places

    Could somebody clarify this? I thought being in the cloud meant that extra physical resources could be allocated to you, not necessarily that copies of your data went shooting around the world!


  • Registered Users Posts: 695 ✭✭✭DaSilva


    conorcan2 wrote: »
    I don't know the answer, but with Amazon you choose where your server/databsae will be hosted. For extra money/configuration, you can add the type of technology you are talking about (CDN/edge based hosting) but it's not necessarily part and parcel of 'cloud computing'.

    So is the basic cloud package, really just a Virtual server?
    And CDN/Edge is actually the parallel hosting I thought the cloud was?


  • Registered Users Posts: 171 ✭✭conorcan2


    DaSilva wrote: »
    So is the basic cloud package, really just a Virtual server?
    And CDN/Edge is actually the parallel hosting I thought the cloud was?

    I think so but I'm not sure.


  • Registered Users Posts: 2,781 ✭✭✭amen


    I think there are a few different ways to look at this.
    1: Data in the cloud for a database. In this case an application developer I simply store my data in a database in Amazon S3 or Azure. I simply point my app to the cloud and get my data as normal. S3/Azure make sure the data is available and manage it. If I need more resources such as disk/memory etc S3/Azure handle this for me.

    2: Applications such as Google Docs etc. I simply log into Google docs and start typing. I save the data which is in the cloud somewhere. I have no idea where/what google do as and end user and I don't really care.

    3: Custom Application in the cloud. This is where it can get interesting. I have multiple servers and I need to share state across them. Of course this isn't just a cloud issue. Same thing happens today if you have a physical web farm. There are various bits of software you can purchase to help with this (frameworks). Haven't tried them in the web though.

    The other consideration is data storage. The EU prohibits you from storing EU data outside of the EU. So when using S3/Azure you can specify where the data should be stored.


  • Advertisement
  • Registered Users Posts: 981 ✭✭✭fasty


    Software as a service, Platform as a Service, Infrastructure as a service.

    All these things are 'cloud' in my experience.

    SaaS would be something like Salesforce, PaaS would my Windows Azure.


  • Registered Users Posts: 14,339 ✭✭✭✭jimmycrackcorm


    Cloud computing is about scaling your applications and distributing your data effectively to cope with spikes in demand.

    If your site does spike then a cloud provider should allow you to instantiate extra servers to cope. But you can also used fixed resources to keep data closer to the users location e.g. someone in the US accessing your site might be redirected to a server there or if there was high demand then they might be redirected to anEU server.

    How data is shared depends on how it needs to be accessed. In the example of the session validation for example then a server receiving an unknown session must actually go back to a key server to validate and cache that session. There is more design work required.

    I don't beleive that SQL databases such as MySQL are ideally suited to distributed cloud infrastructure (such as instances spread between the EU and the US ) because of the replication latency unless you database aprtitioning suits as a cloud mechanism. Rather instead something like Apache Cassandra is probably more geared for wide distribution. For Cloud instances that are co-located in the same datacentre then shared SQL database instances are probably fine particularly if they can be clustered for scale with shared storage.


  • Registered Users Posts: 115 ✭✭Boskonay


    IAAS Cloud is just a server in the cloud, the same rules, requirements, DNS issues, security apply just like any other server on the internet.


Advertisement