Hacker News new | ask | show | jobs
by stephenr 3351 days ago
> You can't go on assuming user base won't grow.

The number of developers today who assume their user base will grow, and optimise for that, when it's not required, far exceeds the number who assume their user base won't grow, and have growing pains because of it.

> If I hash passwords, but I can only hash 100 at once

What do you mean if? Why would you ever not hash passwords?

Also, this is exactly what horizontal scaling is for, which you need to deal with regardless of whether you're using micro services or not.

> A bank offers some

first off - you're still comparing yourself to a massively different field. If you are working for a bank, you shouldn't be asking for this type of advice, unless you've lied to them about your skills.

secondly - those things you described are all different applications within a bank. There may be some integration but more likely the common point for them all is a massive mainframe system that they all interact with. That is not micro services.

1 comments

> The number of developers today who assume their user base will grow, and optimise for that, when it's not required, far exceeds the number who assume their user base won't grow, and have growing pains because of it. I think discussing this point is useless. For the same of the argument assume we are.

> Also, this is exactly what horizontal scaling is for, which you need to deal with regardless of whether you're using micro services or not. I give you that. You can. I don't think it's a correct approach, but you can def just scale once you hit your smallest bottlenecks and you'll be fine (I think).

>first off - you're still comparing yourself to a massively different field. If you are working for a bank, you shouldn't be asking for this type of advice, unless you've lied to them about your skills. >secondly - those things you described are all different applications within a bank. There may be some integration but more likely the common point for them all is a massive mainframe system that they all interact with. That is not micro services.

I'm confused. How do you know which field I'm working in? I am comparing us to a bank because like I said, the services we offer are very similar. I shouldn't be asking for advice? That's plain ignorant. I am asking for the advice because I am a strong believer in micro services but I figured I'd rather ask people for their opinion to see what I get without the title giving away my thoughts. I doubt you would have clicked this thread if what you read was an opinionated title saying "Micro services are the only way" at least I wouldn't. I'd assume that persons mind won't change. Instead I wanted to get as much feedback as possible (including yours :) ).

While the banking world moves slow, and tends to make up new terms for anything they do to make them sound cooler. The newer core banking systems (check out cloud banking, micro service banking) are usually composed of smaller services that communicate through some buss and managed through one uniform API. I'm pretty sure that's along the lines of micro services or at the very least more micro than mono! -- When I say new I mean within the last 10-15 years. I worked at Citigroup and they had that structure implemented on so many of their products.

You're asking for technical advice for a financial platform, on HN, watering hole for flavour of the week, cargo culting, me-too cool kids who change software stacks, libraries and development methodologies more often than they change their underwear.

That is why I said you shouldn't be asking for advice here, if you're working on a banking like platform.

It's like a brain surgeon going to ~~~webmd.com~~~ reddit.

As for the bit about horizontal scaling: if you have a limit like # of hashes per second you can generate, microservices isn't going to solve that - whatever is running your password checking code has that bottleneck, and the answer is either (to a point) faster cpu's, or more frequently and eventually inevitable at scale, distributing the workload. That means multiple servers running the same code to handle more clients - aka horizontal scaling. That's unrelated to whether it's monolithic or microservices based.

Edit: more appropriate analogy

You just sound angry..