Improvements to the Core
I work for a large AE firm with dozens of geographically disparate offices. Our focus is on Healthcare, S+T, and Civic projects. So often the projects are quite large in terms of square footage, scope, cost, and schedule. Because of this, worksharing between multiple offices is common. We have implemented Revit Server across 32 offices and have certainly pushed the envelope to see what it can do.
I would like to think that some of the new features I will cover in this article are at least partially the result of our Revit Server experience. We provided valuable feedback to Autodesk to determine the most needed areas of improvement. Rather than adding new features (bells and whistles), this release provides vast improvements to much of the core functionality of Revit Server.
Change in Topology
The biggest news is that Revit Server is no longer constrained to a ‘Hub and Spoke’ topology. Revit Server 2013 now offers the flexibility of a more distributed arrangement of servers, each of which can play one or more of these three roles.
The roles are specified at the time of installation. After an instance of Revit Server is installed, its roles can be changed at any time by editing the RSROLE2013 environment variable—a comma delimited list of all enabled roles. For example, an instance of Revit Server with the Host and Admin roles enabled will have RSROLE2013 set to: Host,Admin.
What was formerly known as the Central Server is now known as a Host. The Central Server housed all of the model data in a central location. Team members who sat in the same office as the Central Server connected directly to it from their Revit session. That is still true for the Host. The key difference in the new topology is more clearly explained in the next section.
An Accelerator replaces what was known as a Local Server in previous releases. The key difference now is that an Accelerator has the ability to connect to multiple Hosts. Compare this to a Local Server, which could only connect to one host. Most likely all Hosts will have the Accelerator role enabled as well, but that is not required.
Looking at the image above it is clear that the new changes for Revit Server 2013 will certainly allow for more flexibility and should balance the load between the Hosts and Accelerators when compared to the Central Server and Local Servers. With this change, of course, comes more complexity and the potential to confuse the Revit Team Members if there are many Hosts from which to choose. There is nothing preventing a Revit project from being split up in a way that different models are located on different Hosts and those models can be linked from one Host to another.
My experience in a large deployment has been that solid network connections between the Local Servers and the Central Server are extremely important. With the change in topology that comes with Revit Server 2013, the number of possible connections to monitor can increase exponentially. Only time will tell how much of an effect this has.
The Revit Server Administrator is a browser-based tool used to manage the central models. It allows a Revit Server Administrator to manage files and folders on Revit Server. Previously, the Revit Server Administrator was installed automatically on both Central and Local Servers. Now it is optional and is represented as the third role that a Revit Server 2013 installation can play.
Some have found that the Revit Server Administrator can be taxing on server resources since the Update Release for Revit Server 2012, so it is nice to see that it can now be limited in its application. Another improvement is the removal of the auto-refresh feature that could not be modified or disabled. All of the nice sorting and filtering that can be done looking at SWC history will now stay instead of being cleared by an auto-refresh.
The root level of the Revit Server Administrator now displays the Hosts rather that the projects. The image below illustrates this as well as showing how project models can reside on different hosts as mentioned in the section on Accelerators.
Accelerator to Host Failover
Another promising improvement is the ability for the team members to continue working in Revit if the Accelerator to which they are connected stops working. The team members that were connected to the Accelerator in question will automatically be re-routed to connect directly to the Host on which the Central Model is located. There should be no interruption in Element Borrowing, SWC, and Reload Latest operations. Performance will be decreased, but work will not be lost.
Another .ini File?!
The RSN.ini file is essential to server-based worksharing. This file contains a list of all of the Hosts that are available in the Revit Server network. An exact copy of the file must exist on all Servers and Clients (Revit workstations). At first glance it looks as if the Revit client deployment tools will allow for the creation of this file during installation. Making use of automation within your organization’s IT infrastructure will be essential to keeping this file the same in all locations. Expect your Revit Server network to expand and contract with the number and location of Hosts, and have a plan in place to accommodate for this!
Say Goodbye to Backwards Compatibility
One thing that will never be the same with Revit Server is the ability to host models of mixed-release years on the same Revit Server Network. Revit Server 2012 allowed this with 2011 and 2012 models and did make for less administration and reduced pressure on Revit teams to upgrade their models.
The good news is that side-by-side installations of Revit Server 2013 and 2012 are allowed. Basically there can be two separate application pools running on one server: one for 2012 (or 2011 for that matter) and one for 2013. Revit Server is really just a web service, and Windows Server allows multiple web services to run simultaneously on one server.
Autodesk does not distinguish in the specifications any need to increase the hardware performance capability when running multiple release years of Revit Server on one physical (or Virtual) server. I suspect that there will be an increased load on resources beyond just the additional storage space requirement. Network throughput and disc transfer rates will be important to monitor for ideal performance.
One more thing that will help a Revit Server Administrator transition projects from 2012 to 2013 is the ability to upgrade models more efficiently by copy/pasting the model data in the Windows Explorer file system from the Revit Server 2012 Projects folder to the Revit Server 2013 Projects folder. The models will still need to be opened from the Revit client and SWC in order to allow for worksharing to resume on the upgraded model(s).
Anyone who has spent time managing a Revit Server network is all too familiar with .lock files. In order to maintain data integrity of a Revit model when changes are being made to it, Revit Server automatically applies two different kinds of locks to the Central Model: data_users.lock and permissions_users.lock. These are known as Model-Level Locks and will engage during certain operations such as Synch with Central, the creation of a new Local Copy, and when the model is being accessed by other models it is linked into. Just like traditional Revit, many people can simultaneously work on a model but no two people can change the same element at the same time. The locking mechanism that controls this is different in Revit Server than it is for traditional Revit and has been rather temperamental for both 2011 and 2012. Many Revit Server users experience a high frequency of these locks getting stuck or “orphaned,” which leaves the team in a non-productive state until the lock is cleared.
The Autodesk Development Team has gone to great length to change the way that these locks are managed in Revit Server 2013. All of the management of locks has moved from the client side to the server side which should drastically reduce the frequency of orphaned locks. There are also fewer restrictions placed on other team members working in a model when it is in a locked state. This should result in fewer notifications from Revit, telling the user to “…Please try again.”
Follow this link for more information on WikiHelp. This section has been greatly expanded. It also goes into greater detail about Element-Level Locks and Administrator-Level Locks in addition to Model-Level Locks.
Having been through the wringer with Revit Server over the past 18 months, I am looking forward to exploring some of the new enhancements that are available in Revit Server 2013. Those of you who may have been on the fence about jumping into the world of Revit Server should now feel more confident with the significant improvements to the core functionality of Revit Server. There will be some new challenges that come with the changes. Some of them will be addressed by third-party developers that are building off of the Revit Server API and some will be addressed by collaboration of the growing numbers of Revit Server Administrators, like me, that have one foot in IT and the other in the AEC practice.
Jason Bailly lives in Portland, Oregon, and is the Application Manager for Architectural and Structural design software for HDR Architecture.