CodeIgniter Forums

Full Version: CI3 Multiple apps one source optimal performance
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hey Guys,

I've been struggling with this question for a while now. I've created an app in CI3, at first i had 1 client that used it so no problem there. Now after a few years i have 20+ clients using this app.

At start i placed the full app package (system / application) folder in a subdomain of my hosting (1 server), so everyone has their own instance of the app. But to update / maintain all those seperate versions is a nightmare. Also: Each app also relies on their own database.

So i'm thinking about moving the system and application folders of the app to a central location on the server (outside www folder), and each subdomain will have an index file and some custom config files. And all apps will rely on that one central location to function.

My main concern is that this will lead to a lower performance since they all rely on that one source-location. Will it increase performance if i create multiple source "hubs"? So that for example 10 apps run of one source, and so for each 10 apps create a different hub?

All of this is done on one server with subdomains. (for the moment)

Looking forward hearing your opinion on this matter. 

Best regards,
Bart
@bartMommens,

Any reason why you didn't create one app that could handle all clients?
(08-21-2019, 02:28 AM)bartMommens Wrote: [ -> ]My main concern is that this will lead to a lower performance since they all rely on that one source-location.

If you have OPcache running there should be little or no effect on performance due to shared file usage.
@bartMommens: That's no problem at all. You can handle "unlimited" users from the same source files. It all depends on your hardware, but you will get the same read as if it will be multiple files. Make a separate upload folder too.

@php_rocs: I have a similar application like OP are thinking about developing. And for us it's a an extra safety precaution and easier to maintain as some want to move to their own platform as they grow, and then we can just can dump the database without worrying about other peoples data.