Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Marshall Bell 19 posts 59 karma points
    Aug 22, 2009 @ 00:06
    Marshall Bell
    0

    Umbraco Data Access

    Hello,

    Is there an alternative to having Umbraco connect directly to our database? 

    Instead of Umbraco --> Database, have something like Umbraco --> Web Services --> Database

    We have a publicly facing website and it will be hosted on a server in an isolated network (DMZ).  Our Sql Server is on our internal network and ideally we do not want to 'poke' a hole through the firewall to connect to Sql Server.

    Thanks,

    Marshall

  • Chris Koiak 700 posts 2626 karma points
    Aug 22, 2009 @ 09:18
    Chris Koiak
    101

    Hi,

    The short answer is no. There are a series of Web Services available, but the Admin functionality cannot be configured to solely use web services.

    Use could use Vista DB. This essentially is just a file running on your web server. I don't know the performance/speed issues with this approach.

    I'vealways thought it'd be nice to have a 'no DB' mode for Umbraco. Basically the ability to publish your site to a live domain (via Courier) but not require any database access. Apart from some inital app startup config database calls (access permissions, etc) there's really no need to touch the database. Maybe you could look at implmenting that... although I suppose you'd still need a DB for your staging environment.

    Cheers,

    Chris

  • Petr Snobelt 923 posts 1535 karma points
    Aug 22, 2009 @ 21:40
    Petr Snobelt
    0

    Hi,

    You teoretically can create your own datalayer, which use web services, but I think it's too much work.

     

    @Chris:

    I'm try create "no db mode" for frontend with little success, but it's only prototype. Umbraco touching db for users, and for templates. I create my own xml datalayer, wich read templates and users from xml and prototype my works.

  • Richard Soeteman 4045 posts 12893 karma points MVP 2x
    Aug 23, 2009 @ 08:19
    Richard Soeteman
    0

    Hi Marshall,

    In theory you could split up Umbraco and presentation. Don't really know how to do that. I think it's a matter of having to environments and make sure that you copy the /data/umbraco.config from your umbraco environment over to the website environment. Also you need to make sure that your site doesn't use macro's that call sql server.Again it's what I heard that's possible, never used it.

    Cheers,

    Richard

  • Dirk De Grave 4541 posts 6021 karma points MVP 3x admin c-trib
    Aug 23, 2009 @ 10:24
    Dirk De Grave
    0

    still some api calls go directly to database (eg, GetMedia() still goes to db directly), so it would be great to be able to isolate those (don't really know of other calls, or at least not by heart) and build some webservices for those.

     

    cheers,

    /Dirk

  • Petr Snobelt 923 posts 1535 karma points
    Aug 23, 2009 @ 20:16
    Petr Snobelt
    0

    Hi Marshall,

    is there any reason why you want use internal db, instead of for example free ms sql express on webserver?

  • Evan Jardine 108 posts 168 karma points
    Aug 24, 2009 @ 05:08
    Evan Jardine
    0

    Hi Marshall

    We have the same server setup, with our live server a DMZ and sql server inside the firewall.

    We are using sql express on the live server and replicating the db and files to that server using batch files and SyncBack as scheduled tasks.

    Cheers

    Evan

  • Marshall Bell 19 posts 59 karma points
    Aug 31, 2009 @ 19:08
    Marshall Bell
    0

    Hi Petr,

    The driving factors for not using sql express on the web server is three-fold.  1) Data Protection/Security 2) we have clustered web servers so Sql Server would most likely have to run on another box inside of DMZ.  3) We would have to deal with replication of data between Production, DR, and Staging which would require poking holes in the various firewalls.  Also, we do not want to have the admin/back-office interface exposed publicly.

    The deployment approach that we are going to use is to host Umbraco on three servers/clusters; one in Prod DMZ, one in DR DMZ, and one internal (staging).  All will point to internal Sql Server.  We will remove the Admin/Back-Office files off of the servers in Prod and DR DMZs.  Our content editors/approvers/publishers will do all of their work on staging.

    We will still have to deal with copying media files from staging to Prod and DR.

    Hope that helps,

    Marshall

  • Petr Snobelt 923 posts 1535 karma points
    Aug 31, 2009 @ 19:49
    Petr Snobelt
    0

    Hi Marshall,

    I have no experience with loadballanced enviroment :-(

    If you really want this scenario, best way is to create new datalayer, which try get data by webservice instead of using sql server. I try create something similar: create datalayer which get data from xml instead of sql, but I try it only for fun and on small project ...

     

Please Sign in or register to post replies

Write your reply to:

Draft