Comments (6)
@davisford , this is a very difficult question to answer... The short answer is that we'd need more information - what requirements you have with respect to throughput and # of subscribers. Even at that, I'd still suggest you test to see what works for you.
In research for NATS Cloud, we tested - thoroughly - to determine what the minimum size would be to accommodate the load we needed. This included memory (# of subscribers and connections), and throughput (which is CPU intensive), as well as network requirements. For example, supporting a dozen servers with a minimum of 200k 512 byte messages/sec, per server, and hundreds of subscribers, might require a m4.10x large, especially if TLS is involved. Alternatively, if you require only one server for a few subscribers at 1000 msgs/sec, a t2.small (or maybe even a t2.micro!) may work for you. The NATS server is very lightweight.
The other issue to consider is network; if you are sending and receiving a large amount of data, you could be limited to the instance types that support enhanced networking.
Basically, you'll want to test your limits per your requirements. I have a rough tool that simulates clients, found here, which may provide a starting point for you to test and hone in on the right machine size.
That being said, it'd be great to get additional community input here! I'm certainly interested in what you find in your case.
Thanks,
Colin
from nats-site.
Thanks for the great suggestion! I'm moving this over to the nats-io/nats-site issues list.
from nats-site.
Any ballpark recommendations for EC2 instance sizes that work well with natsd? I get that it is application dependent, but I'm just looking for helpful / anecdotal information about people that are using it in production.
from nats-site.
Thanks @ColinSullivan1 -- that's helpful. I did just spawn a 3-node cluster in ECS. I used t2.medium, and I'm monitoring it to see how it does.
from nats-site.
hi, @davisford , @ColinSullivan1
I need to calculate resources for the system, and I found this issue.
On my case.
I setup Nats-Cluster (6 nodes) for 200.000 CCU,
My system needs to serve 200,000 subscribers (200,000 CCU and keep client connections alive for some minutes... ~ 40 minutes), to listen/receive 1 byte message from publisher.
I'm planning to use m5.large vcpu 2 ram 8gb. x 6 nodes
Please give your opinion.
Thanks!
from nats-site.
@duycuong87vn I would suggest asking your question on our Slack (slack.nats.io) channel or email [email protected].
from nats-site.
Related Issues (20)
- Is NATS a company or open source project? HOT 1
- Add NATS acronym meaning to FAQ HOT 1
- NATS doesn't offer TCP Reliability as stated in FAQ HOT 3
- Add NATS and STAN Ballerina lang clients HOT 2
- Ballerina clients named as servers HOT 5
- Homepage isn't mobile friendly: extreme horizontal scrolling is possible HOT 4
- Warnings issued when serving locally HOT 3
- README: the site isn't using Bootstrap HOT 1
- Homepage on mobile: inconsistent user-logo sizes
- Homepage still scrolls horizontally on mobile
- Trying to download the latest nats server gives a 404 HOT 1
- Page not found when reading the "gateways" documentation HOT 1
- The cookie banner/consent form is not GDPR compliant
- Dark Mode in the docs HOT 3
- No blog this year? HOT 3
- Google Analytics completely gone? HOT 8
- Add Ballerina NATS client under JetStream enabled clients HOT 3
- Add syslog2nats to list of Connectors and Utilities
- Synadia Platform link 404 from Support Page HOT 1
- Add queue-nats to list of Connectors and Utilities
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nats-site.