zlacker

[return to "High-Performance server for NATS.io, the cloud and edge native messaging system"]
1. zmmmmm+Dn5[view] [source] 2023-07-23 23:42:49
>>Kinran+(OP)
Struggling to figure out what "cloud native" actually means. Unfortunately their own web site doesn't say and the CNCF web site they link to leaves me none the wiser.

At a guess they are talking about applications being built from the ground up to dynamically allocate resources using cloud providers APIs directly rather than relying on an assumption fixed resources are already provisioned and the application runs within them.

I wonder if I'm right ...

◧◩
2. re-thc+lH5[view] [source] 2023-07-24 02:30:51
>>zmmmmm+Dn5
> Struggling to figure out what "cloud native" actually means.

- very fast startup

- low memory

- can be easily distributed or is stateless

◧◩◪
3. xuanca+OP5[view] [source] 2023-07-24 03:57:50
>>re-thc+lH5
That is not what cloud native means. It is an overloaded term, but the basic idea is that the application is designed to operate in the cloud environment, utilizing cloud's capabilities such as elastic and automated infrastructure management.
◧◩◪◨
4. re-thc+wS5[view] [source] 2023-07-24 04:35:06
>>xuanca+OP5
> That is not what cloud native means. > utilizing cloud's capabilities such as elastic and automated infrastructure management.

Contradictory perhaps? So it's not what it means but it is what it means?

In order to achieve what you've said in vague terms you definitely do need to try to be stateless, have fast startup and reduce memory. Clear examples are things like lambda and fargate.

How can you be elastic if you have an application server that takes 10 minutes to start?

◧◩◪◨⬒
5. KRAKRI+S76[view] [source] 2023-07-24 07:14:57
>>re-thc+wS5
It also means having instrumentation and observability as first class features. First party support for containerisation, the app needs to be robust and capable of handling shutdowns and multiple instances gracefully. In a cloud environment, when hardware fails or instances get resized, multiple containers may get spun up and everything is kept in sync through the database (or an external data store).

Authentication and integration with auth and secret providers are another distinguishing feature. I personally find "cloud native" software to be a pain to use locally because they usually come in the form of a docker-compose and kubernetes setup, and those absolutely gobble up ram and disk space.

[go to top]