yogthos , (edited )
@yogthos@lemmy.ml avatar

I find small services work fine for well defined and context free tasks. For example, say you have common tasks like handling user authorization, PDF generation, etc. Having a common service to handle that is a good idea. This sort of a service bus can be leveraged by different apps that can focus on their business logic, and leverage common functionality.

However, anything that's part of a common workflow and has shared state is much better handled within a single application. Splitting things out into services creates a ton of overhead, and doesn't actually address any problems since you have to be able to reason about the entirety of the workflow anyways. You end up having a much more difficult development process where you need a bunch of services running. Doing API calls means having to add endpoints, do authentication, etc. where within a single app you just do a function call. Debugging and tracing becomes a lot more difficult, and so on.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • programming@lemmy.ml
  • test
  • worldmews
  • mews
  • All magazines