Live data from Hacker News

Goodbye Microservices: From 100s of problem children to 1 superstar

segment.com

251–260 of 782 posts

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#251

If you have 140 somewhat similar entities that all share common code, then they don't fullfill the very important microservice criterion of being independent. In your case, I would recommend to use a plugin based system. Do it the other way around, have 1 application that contains the common code (previously shared library code) and create 140 plugins. This way you can update the single application, load all plugins,…

This is the voice of an adult developer talking.

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#252
post #113

Earlier quoted context omitted.

> Usually microservices have their own databases That's news to me, and seems insane. Unless you mean "their own database tables", not "database servers". But that's just the same as having multiple directories and files in a Unix filesystem.

That architecture is commonly known as a distributed monolith. If you put two services on the same DB you can guarantee that someone will be joining onto a table they shouldn't have before the week is out.

This is another way of saying that micro-services are for easy problems, where you can avoid having many processes share the same complex database.

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#253

Let me write a meta technology hype roadmap, so we can place these sorts of articles: * Old technology is deemed by people too troublesome or restrictive. * They come up with a new technology that has great long-term disadvantages, but is either easy to get started with short-term, or plays to people's ego about long-term prospects. * Everyone adopts this new technology and raves about how great it is now that they h…

So, should we stick to PHP for web stuff or is JS here to stay ?

Stick to whatever works for you. I'm assuming you mean backend JS, but if you don't, you can use both. PHP can render your page and JS can make it interactive. I can see benefits of being able to re-use models for frontend and backend, though.

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#254

Let me write a meta technology hype roadmap, so we can place these sorts of articles: * Old technology is deemed by people too troublesome or restrictive. * They come up with a new technology that has great long-term disadvantages, but is either easy to get started with short-term, or plays to people's ego about long-term prospects. * Everyone adopts this new technology and raves about how great it is now that they h…

So, should we stick to PHP for web stuff or is JS here to stay ?

This argument is less about specific technologies, and more about patterns and practices.

For example: web UI started as declarative (HTML -> PHP), and then transitioned towards more imperative (jQuery, Backbone, Angular), and is now moving back towards declarative (React, Polymer)

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#255

I'm not sure what they've been left with is a monolith after all. I would say they just have a new service, which is the size of what they should have originally attempted before splitting. In particular, as to their original problem, the shared library seems to be the main source of pain and that isn't technically solved by a monolith, along with not following the basic rule of services "put together first, split la…

+1 I felt this article is more about how to use microservices right way vs butchering the idea. It is not right to characterize this as microservices vs monolith service. Initial version of their attempt went too far by spinning up a service for each destination. This is taking microservices to extreme which caused organizational and maintenance issue once number of destinations increased. I am surprised they did not…

[deleted]

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#256

It's refreshing to read an article which challenges common wisdom. I've endured a lot of suffering at the hands of the microservices fan club. It's good to see reason finally prevail over rhetoric. It would have been nice if people had written articles like this 2 years ago but unfortunately, people with such good reasoning abilities would probably not have been able to find work back then. Software development rheto…

> It's refreshing to read an article which challenges common wisdom.

This didn't challenge any "common wisdom". Common wisdom didn't tell them to do this. Cargo cult engineering is not common wisdom.

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#257
post #243

Let me write a meta technology hype roadmap, so we can place these sorts of articles: * Old technology is deemed by people too troublesome or restrictive. * They come up with a new technology that has great long-term disadvantages, but is either easy to get started with short-term, or plays to people's ego about long-term prospects. * Everyone adopts this new technology and raves about how great it is now that they h…

What examples are you thinking of with “Everyone slowly goes back to the old technology?”

The first that comes to mind is mainframe. Just the only name for cloud computing.

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#258

  +
  -js
  -java
    -monolith.jar {guava, netty, etc }
      -svc1
      -svc2
  -python
  -go
For biz code, I've seen this kind of lib-ifying architecture provide a nice microservices workflow. The unifying heuristic is: Any dependency goes into the lib project. Anything unique to the service that requires no dep should usually go into the service project. The nice thing about this is it modular with fast compiles and preserves optionality. Since everyone is using the same deps, the code can live in the svc project or the lib project. A bit of namespacing convention makes it's trivial to shuttle the code between the two projects to wherever it's most natural to have it.

Re: Goodbye Microservices: From 100s of problem children to 1 superstar

#259

Let me write a meta technology hype roadmap, so we can place these sorts of articles: * Old technology is deemed by people too troublesome or restrictive. * They come up with a new technology that has great long-term disadvantages, but is either easy to get started with short-term, or plays to people's ego about long-term prospects. * Everyone adopts this new technology and raves about how great it is now that they h…

Exactly the same thing happened with SQL vs NoSQL.

Or rather, relational databases and non-relational databases. This precisely played out at my company recently where a group moved from MongoDB back to a relational database.
Post reply on HN