Hello everyone, I have one of those "how should I go about starting this project" questions.
Right now, I have about 8 clients who all share the same server. There is currently one instance a webserver per client on dotnetnuke. All of the pages, dlls, and module settings are the same for each client. They each use their own database, and their own css files.
As you can probably tell, this is quite a server load, and with more clients, we are going to run into many performance issues. To keep costs down and the updating process simple, I would like to combine all of the sites and use portals, rather than a new install of DNN for each client.
I recognize this is a huge undertaking, and will require a lot of time. My reasoning for wanting to do this is:
- save on performance by combining the virtual web sites to one site.
- eliminate the possibility of code-inconsitencies
- decrease the amount of time and effort to update any bugs or features to custom modules
As it stands now, none of the custom modules take into account that there may be more than one portal. What would be the correct course of action to fix the code and database so it takes portals into consideration? I believe I just have to keep track of PortalId, but I would like to confirm this.
I also have one custom module that references another custom module. The way I do it now, is I have two settings in the module settings that state the tab id and the module id, and I use navigateURL to go to the pages. This works great for us now, because when we create a new client, I copy the database and the tabs stay the same ID. I feel like since I want to move to having multiple portals rather than multiple installs, the tabs and modules will be unique for each client. Anyone have any suggestions for how to solve this issue?
Also, if anyone has any suggestions or recommendations as to how to take on this project, I would greatly appreciate the ideas.