Hi, I'm new to Laravel (not to PHP). I love the way how easy it is to get this up and running with tasks that I used to have to create myself (why did I wait this long to get started with Laravel??)
I'm reading a lot of great advice of experts on this site so I thought I would ask you guys for some feedback on something I'm struggling with right now.
For a client I'm going to create something from scratch. This is the idea: They're going to release a bunch of services that really differ from each other. For example: deliver information through an API, provide (different!) information through a website behind a login, etc. Since these services are completely different and don't have anything to do with each other I would like to keep them 'isolated' so we can be really flexible while improving/upgrading services in the future without breaking stuff on another service.
The only common thing could be the client. Some clients could subscribe to multiple services and they should be able to get an overview of their services in one place. This should also be the place where they can change come configuration values on their services, download their invoices, etc. So this is what I had in mind:
###service1.mydomain.com
###service2.mydomain.com
###dashboard.mydomain.com
So, this is what I would like your opinion on: Is this a smart thing to do? I really like the fact that the services are all isolated so we can for example upgrade to laravel 6 in the feature one by one. Is it smart to have my dashboard connect to 3 databases? If not, what do you suggest? I really like the way Forge simplifies the deployment. How would you get this configured? Should every service be a single server? Or is it smart to combine?
I would like to add some extra information on the services. They will all be very low in server load and data traffic.
I'm looking forward to read your reactions!!
(crosspost from laracasts.com)
I prefer the separation. Simplifies a lot of things. unless of course they more or less handle the same data, in which case combined would be better/faster to develop.
Wont the isolation be broken when upgrading one service, forces you to upgrade the dashboard because of the database integration?
If you don't mind making a API for each service you could use a ReST-ish implementation to manage the data transferal and manipulation from dashboard to service.
Hi Jess, Upgrading one part won't break the other as long I will create a REST api. That would be the beauty of it. So right now I have one vote for te separation with REST API communication.
Sign in to participate in this thread!
The Laravel portal for problem solving, knowledge sharing and community building.
The community