Facebook   Twitter    e-mail newsletter    YouTube    RSS Feed    Android App    iPhone and iPad App     BlackBerry App    


Results 1 to 9 of 9

Thread: SaaS Website Development

  1. #1

    Default SaaS Website Development

    I am looking at developing a SaaS type of website to serve corporate customers around the world. It will need to be designed as a high availability service, so we can't afford downtime. So my questions are:

    Will .Net suffice as the programming language?
    Will Windows Server work well?
    Which database should I use? (will need to be cluster capable)

    Where could I find a software development house that has experience with designing high availability sites?

  2. #2

    Default

    What type of load will the site be under? Most setup's will have a high availability until the load starts getting to much.

    I would look at a Linux based option rather as it's clearly going to be dominating the future markets. Also I would expect a local Internet connection to be the bottle neck in the system and failing before you would be able to overload a decent server box..

    MYSQL has the ability to be "clustered"

  3. #3

  4. #4

    Default

    Just my opinion, but using something like MySQL is a better option, which even the community or open source edition has a cluster version. I have worked with the MySQL cluster version and its great, relatively simple to setup and configure. Also, if you are planning on developing a complex application that requires some kind of speed, stay away from PHP, its not bad for doing stuff, but if you want decent performance without having to re-write PHP (as facebook have done) then use something like Java.
    Also, application servers like Tomcat have built in clustering ability, so if one server goes down, the others stay up. It also has great features like version deployment, so you can deploy new versions with zero downtime.

    Disclaimer: Tomcat and MySQL is what we use for our clients, and we have successfully run some pretty large deployments.
    HTML / CSS / Javascript Maniac. www.professionalhosting.co.za
    MacBook 13"

  5. #5

    Default

    nosql e.g. couch db... served with node.js

    can scale infinitly... ask twitter.

  6. #6

    Default

    It does not matter what language or platform you use, stick to what you know best, unless you want to spend a considerable amount of time mastering something new.

  7. #7

    Default

    High availability is for for all intensive purposes an exercise in architecture - your technology stack is language/OS/data store agnostic. The development house you pick is also irrelevant - if you're really concerned with 100% uptime you need to monitor and administer your architecture in-house. Tools like Rightscale etc. can help, but you still need an engineer on call 24/7. In my opinion, finding good 3rd party support is next to impossible - and very expensive.

    MySQL, Postgres, SQL Server, Oracle, etc. all offer replication. Oracle and MS obviously come with support. Postgres and MySQL both have aftermarket support offerings. All have decent tooling.

    High availability is an expensive endeavor, but fortunately with the plethora of cloud offerings out there, anyone can have high availability for a fraction of what it used to cost. You can easily (and cheaply) achieve high availability on AWS by deploying on RDS (Oracle, SQL Server or MySQL) with multi-AZ and a couple of EC2 instances running in different AZ's with an Elastic Load Balancer sitting in front. (If you're reliant on session state, you'll need another instance).

    If for some reason you are unable to host on AWS, Rackspace or some other cloud provider you'll need a fair sum of money to have redundant hardware setups as well as redundancy across multiple datacentres.

    Good luck


    Quote Originally Posted by david-bann View Post
    I am looking at developing a SaaS type of website to serve corporate customers around the world. It will need to be designed as a high availability service, so we can't afford downtime. So my questions are:

    Will .Net suffice as the programming language?
    Will Windows Server work well?
    Which database should I use? (will need to be cluster capable)

    Where could I find a software development house that has experience with designing high availability sites?

  8. #8

    Default

    Also, IMO, there's nothing wrong with using interpreted launguages like PHP as inferred above. As I said, high availability is language agnostic. In terms of performance, you should never do any heavy lifting in an interpreted language - that doesn't mean they shouldn't be used in web development. Facebook uses HipHop primarliy to free up memory on their webservers and maximize the effiency of their webservers (which are memory-bound). The heavy lifting is still written in C - not cross-compiled PHP.

  9. #9

    Default

    Quote Originally Posted by ozziej View Post
    Also, application servers like Tomcat have built in clustering ability, so if one server goes down, the others stay up. It also has great features like version deployment, so you can deploy new versions with zero downtime.
    tomcat 7's hot deploy is a great feature in theory, but in reality you WILL get OOM permgen errors

Similar Threads

  1. How to transition to website development?
    By stoymigo in forum Software and Web Development
    Replies: 7
    Last Post: 10-08-2012, 04:36 PM
  2. Website Development
    By *SynergyX* in forum Software and Web Development
    Replies: 15
    Last Post: 02-08-2010, 11:08 AM
  3. E-Mail to go SaaS
    By rpm in forum Broadband and IT News
    Replies: 6
    Last Post: 07-04-2009, 02:23 PM

Tags for this Thread

Bookmarks

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •