Today is a pretty big milestone for
the Umbraco 5 team. It's the end of January 2012, we've had seven
progressively stable preview builds over the past months, and now
it's time to put a stake in the ground.
After a lot of hard work, late nights, and invaluable help from
the community testing our many preview builds, we've hit our first
production milestone.
Umbraco 5.0 RTM is on CodePlex!
Please do grab a copy - take two, if you like - it's free after
all!
Thanks to you
This is a release build and includes
all of the fixes from the RC3 which we put out there last
Wednesday. Since that time, we've already had almost 1000
downloads, which has made us incredibly proud. From our testing and
that of the reported issues, it's ready for you to build your next
live website.
Features
This is called "version 5 of Umbraco", but it's important to
remember the history of the v5 project. We always intended to
respect the vibrant culture and history of the Umbraco CMS as it
has gone so far, and make a product that was on a fresh &
rewritten technology stack but enabling the same common goals.
Our target for "5-point-0" out of the box is the most commonly
used features of 4.7. We have a lot of features in 5.0 that enable
you to go into production for the vast majority of site builds, and
we have taken an approach of getting the core features done first -
and stable.
We are now going to be iterating quickly with new features as
the months progress, so that we reach feature parity with 4.7 and
move beyond that quickly. So, yes it's like a "1.0" in some senses,
but it already has a tonne of features that we think make it a
great CMS.
- Design and produce templates quickly using the excellent Razor
syntax
- Access your content in those templates using an intuitive
dynamic API for both querying and walking up and down your content
structure
- Tailor content types with a variety of customisable fields,
meaning you can focus on your content structure without a hard link
to its layout
- Use multiple templates with pages so you can easily adjust to
your site's needs, do A/B testing, cater for mobile handsets, or
generate RSS feeds
- Have document types that inherit from one or more other types,
making it simple to organise common fields for things like SEO that
are shared across all of your articles
- Create, preview and publish content in a naturally organised
way using folders that can automatically create your site
navigation, if you like
- Create, preview and publish media and other types of
assets
- Store those assets on your server or in the cloud
- Use a rich set of permissions to tailor backoffice access for
your editing team
- Plug in your own existing data in a way that Umbraco natively
understands, rather than the only option being to migrate
everything under Umbraco's control
- Plug in your own backoffice editors, dashboards, and custom
trees
- Expose the underlying MVC stack for mixing in your own
application, controllers and views with the content-managed
portion
- Share common pieces of functionality like Macros with your
team
- Share your own data providers, common templates, handy helpers
and more using NuGet packages
- Have those packages dynamically add configuration to a user's
website so that uninstalling rolls back configuration
seamlessly
There are many more, but you didn't come here for a list of
bullet points - here's that download link again!
Documentation & help
In the next few weeks we'll be hard at work making tutorials,
documentation and answering questions on the Our forums. Warren has already got off to a great start with
some example Macros for common scenarios.
Here's to a bright future
5.0 is a great foundation for you to build on now, but we aren't
stopping here. In the coming months we'll be focussing on adding
great support for backoffice editing of your own membership data,
and add some great APIs for reading and writing data to Hive in
your own controllers and packages. We'll also be adding a few
exotic things such as distributed caching and the like - if you
have a feature idea, feel free to add it to our issue tracker and
appeal for votes!
Performance
You might have seen the post I put up earlier this month about our
approach to performance tuning as we approached RTM, and I also
mentioned it in a recent uNews-letter. If not,
or at least to put it here for posterity, here's a few of those
figures.
I've been using the same content within each build of v5, and
the same load script on my own development machine for each test
run. It basically uses all 4 cores on my machine to both generate
and serve the load from my local IIS.
Database & Build
|
Total time for 50 requests
|
Equivalent requests per second
|
| SqlCe4 |
|
|
| RC1 |
44.514s |
1.12 |
| RC2 |
29.902s |
1.67 |
| Mid-Jan |
18.839s |
2.65 |
| RC3 |
1.693s |
29.53 |
| RTM |
0.228s |
219.30 |
| |
|
|
| Sql Server 2008
R2 |
|
|
| RC1 |
25.487s |
1.96 |
| RC2 |
11.681s |
4.28 |
| Mid-Jan |
5.665s |
8.82 |
| RC3 |
1.645s |
30.39 |
| RTM |
0.134s |
373.13 |
To put those final figures into context, I re-ran the test
against RTM with 1000 requests instead, and obtained around
2900rps.
This seems a steady improvement followed by an astronomical
leap, what could it be?
It's a technique commonly referred to as "micro-caching". By
default, the base controller that serves Umbraco 5 RTM requests
caches the page output for 1 second. This technique sits on top of
the existing steady improvements in the codebase, and provides the
icing on the cake to help if your websites get a high peak load. So
it's a setting that you might not notice in daily use (unless
you're hitting refresh .. a lot), but your server will thank you if
you get a sudden influx of traffic.
You can of course tweak this if you prefer; the setting is in
configuration, and we'll be enabling more settings and handy "set
it and forget it" defaults like this as we add features in the
future.
Happy downloading!
To those of you who have followed us along the way, and to those
who have helped us code and test, a massive thank you. And to those
who will be helping us in the future, too. Have fun with Umbraco 5,
and please do let us know what you think.
Here's that download link one more
time.
All the best
Team 5