Cloud development considerations

Views: 1632
Number of votes: 1
Average rating:

Common questions about Cloud development

Episerver Digital Experience Cloud Service (DXC Service) enables customers to improve the efficiency and scalability of their operations. Developing in the cloud, however, requires some additional considerations when compared to previous approaches.

With that in mind, we have collected answers to frequently asked questions about the DXC Service. Episerver's Viktor Sahlström is lead developer on the cloud solution, and Fredrik Tjärnberg, Development Manager, is responsible for the R&D department in Sweden.

Fredrik Tjärnberg (left) and Viktor Sahlström

How has the launch of the DXC Service gone so far?

Fredrik: We successfully launched the DXC Service seven months ago, and it's already live with a number of customers and under development with many others.

Viktor: Many developers think that the DXC Service is great. We're also working to continuously improve the solution and are actively listening to feedback from developers.

How many code bases does the DXC Service support?

Viktor: You can have as many code bases as you like. The important thing is that they come out as a single application, because the DXC Service by default only supports one application.

Fredrik: Right, that's an important distinction to make, between code bases and applications. Of course, the solution is flexible, and provides an option for customers to add additional applications to their DXC Service when needed.

Can I run as many websites as I like on one DXC Service license?

Fredrik: Yes, unlimited websites is a very popular feature because previously you had to pay for this. With the DXC Service, customers can launch campaign or other related sites with extreme simplicity, not having to think about extra licenses or associated costs. The business side tends to like this a lot! Keep in mind, though, that with the DXC Service you have to use the functions a little differently, since some changes you make will affect all the sites and not just one.

Viktor: Also note that all entities are shared, and some can't be hidden, such as Visitor Groups and crawled data. If the sites are administered by different editors, be sure to set the rights so that they don't have access to confidential information or publish on each other's websites by mistake.

Can I configure different environments for different purposes? For example, if I have a live connection to a payment system in production, but don't want it to be live in integration?

Fredrik: All environments are configured the same way, but there is a solution for this. Using a setting in the DXC Service, you can compile code that knows which environment it's in. The solution for payments may take a little more planning, especially if you have a third-party connector that's not adapted for the DXC Service.

Viktor: The DXC Service will definitely support configuration transformation in the future. In the meantime, we recommend sending the different configurations to our Managed Services department, who will make sure they end up in the right environment.

Can I use another search solution than Episerver Find?

Fredrik: The answer is yes. But why? The developer feedback on Find is great, and it is included in the DXC Service. Considering it's nicely integrated into the platform and we drive the roadmap alongside our other product development efforts it's a win win scenario.

Can I use Search, the built-in search function in Episerver CMS, instead of Find?

Viktor: I wouldn't recommend it. A key value of the DXC Service is its automatic-scalability. Search is file-based, and gets corrupted when the DXC Service scales and the index file is copied to a new machine.

How do I deploy new code in the DXC Service, and how long does it take?

Fredrik: Developers can deploy directly to the Integration environment via industry standard tools that work with Azure WebApps. When you're ready to deploy to Production or Pre-production, you send a deployment ticket to our Managed Services department who makes sure the code works. We have people who only do deployment, and they usually get to work on it within an hour. How long it takes to check the code depends on the solution. An upgrade that involves data migration might take another hour.
As a side note, another cool thing not everyone might realize is that we can also deploy production data back to the other environments. This makes it really easy for developers or QA to work with real data in those environments without adding much work to their day.

Viktor: You can also specify a time window for deployment, for example, if you have an online store and don't want to deploy when you have a lot of visitors.

What Azure services can I use with the DXC Service?

Fredrik: The DXC Service runs on Azure, so some of its services are already included in the solution. These include WebApps as its foundation, SendGrid for outbound mail, Storage for persisting different types of data and Service Bus for distributed queue and message handling. However, some Azure services are not included in the standard packing.

Viktor: If there are certain Azure features you need, be sure to discuss this with Episerver before you start development so that we can arrange a special solution.

Where can I find the Episerver logs?

Fredrik: You need a special login to the Azure portal to see them. Ask Managed Services for access credentials.

How do I make a hot fix? I need to quickly fix something in production and don't want to throw away everything in the other environments.

Viktor: Contact Managed Services and tell them you want to make a hot fix. We have a sneak path you can use.

Have more questions about the DXC Service?