3 ms·
I think it comes down to how we assess the cost of things. To me, the issues you identified with state (which I agree are real issues) are straightforward to o
by mjw_byrne 6y ago
I think it comes down to how we assess the cost of things. To me, the issues you identified with state (which I agree are real issues) are straightforward to overcome with disciplined design. On the other hand, I find not having application-wide state to be a handicap - e.g. I might want to have my application process batch jobs asynchronously or share state between requests in a highly efficient (read: in-memory) way.
Of course there are solutions in PHP-land, e.g. "run a job server" or "use Redis", but I find the overall cost of introducing more programs/services/components to be very high, in terms of learning curve, portability, maintenance and debugging.
I've spent the last few years replacing a crumbly, brittle, temperamental PHP/nodejs/Gearman/Redis/Nginx/Supervisor stack with a Go monolith so I'm sure that influences my opinion :-)
- jjeaff 6y agoDoes that mean you had to re-invent the wheel with your go monolith for a lot of things? My understanding is that the go philosophy is very package independent and the availability of existing code to solve common problems is rather sparse.