メインコンテンツにスキップ
ブログLinodeNodeBalancer同時接続

ノード・バランサーのコンカレント接続

10000

10000NodeBalancerの価格モデルを考えていたとき、私たちはそれを細かなものにするのではなくシンプルにする(我々のほとんどの決定に適用する哲学)ことに決めました。そして、5,000 の同時接続数の制限と 19.95 ドル/月の固定価格で NodeBalancer サービスを発表しました。

本日、NodeBalancerの価格を据え置きつつ同時接続数を10,000に増加したことをお知らせします。 既存のすべての NodeBalancer は既にシームレスにアップグレードされており、すべての新しい NodeBalacers は新しい上限が適応されます。

NodeBalancer 価格:

NodeBalancer インスタンス $19.95 / 月 ($0.027 / 時間)
10,000 同時接続 無料
外向き転送 転送プールから差し引かれ、その後 $0.10 / GB
内向き転送 無料

NodeBalancer がどのように役立つのか詳しく知りたい場合は、次を参考にしてください。

お楽しみください!

- Chris


コメント (17)

  1. Author Photo

    Its over 9000!

    seriously though guys. This is great!

  2. Author Photo

    You guys really know how to set the bar! Thx!

  3. Author Photo

    The one thing stopping me from using the awesome nodebalancers is that I can’t get the visitors IP if using https. Since my web app does geoip it NEEDS this info. Any chance at fixing this soon?

  4. Author Photo

    Great, thanks, guys!

  5. Christopher Aker

    @Brian – Putting HTTPS termination at the NodeBalancer level would mean the NB would become a bottleneck as it is currently designed. Better to distribute HTTPS load across the backends. If you need the IP of a visitor, do it once either by an HTTP request or to a request to a non-loadbalanced HTTPS server of yours, and then associate it with that user’s session. Hope that helps.

  6. Author Photo

    Would it be possible to create a “test” nodebalancer with a limit of eg. 5 connections, that is free? I would like to test my high availability setup and then migrate to the paid nodebalancer when my application can go live.

  7. Christopher Aker

    @Tom – sorry, no. It would still occupy resources (and a precious IPv4 address). However we prorate everything to the day – so adding and then removing a NB would put a credit for the unused days back onto your account. A NB for three days would end up costing you about two bucks.

  8. Author Photo

    Guys, I am using node ballancer for XMPP servers – it means, connected user has always pernament live IP connection, but with very low traffict. Because of this, 10 000 is low number for me.

    What happens, if I go over 10 000? Nobody else will connect? Or can I pay for more connections? Can you scale up to say 100 000?

  9. Christopher Aker

    @Jindra you would need to use multiple NodeBalancers to go beyond 10,000 concurrent connections.

  10. Author Photo

    Gotta love Linode!

  11. Author Photo

    @caker – are nodebalancers ok with websockets?

  12. Author Photo

    Also to chime in about persistent connections, would you happen to know if NodeBalancers will work with Server Sent Events (http://en.wikipedia.org/wiki/Server-sent_events).

    I would guess that it would be similar to XMPP or WebSockets.

    Either way, great news about upping the limit!

  13. Author Photo

    This is awesome, was having massive problems with the 5000 concurrent limit.

    I’d love to have a ‘premium’ Nodebalancer option though with say 50,000 concurrent support rather than having to use the DNS round robin hack I’m using now.

    Keep up the great work!

  14. Author Photo

    What does “concurrent connection” actually mean?

    If the definition is at HTTP level, that’s fine. A connection is immediately terminated with “Connection: close” and you -1 from the pool.

    But if it’s at TCP level, it’s problematic for us. Because there’s always hanging TIME_WAIT at the end of TCP lifecycle, and becomes the majority of “connections”. For web apps that handle massive amount of short-lived requests, TIME_WAIT would be dominant.

    Or if it’s IP / netfilter level, it’s problematic, too. ip_conntrack would saturate very fast.

    I think NB is meant to be a load balancer and we don’t want it to be THE bottleneck, obviously. Would like to know those basics before start testing.

  15. Author Photo

    Simply put,

    Assuming TIME_WAIT is set at 60 seconds (which is sensible and is the default in many systems), you can handle only 10,000 requests per minute (or less), even if your servers are very fast and respond to each request in close to zero milliseconds, and seemingly there’s no “concurrent” connections at the HTTP level.

    It is somewhat counterintuitive and confusing way to advertise the service, IMO.

    You could easily check how many dead-but-counted-as-concurrent connections on your system, by running the following command on your web server.

    netstat -an | grep TIME_WAIT | wc -l

    and compare it with the raw output of “netstat -an”. See how TIME_WAIT could be dominant in your resource usage.

    Considering that a single Linode 512 instance with Nginx could easily handle 100,000+ concurrent connections (which means Linode is very FAST!), probably you could do better and offer a higher end of lineup for NodeBalancer. BTW, we need at least 200,000.

  16. Christopher Aker

    A TCP session in TIME_WAIT is not counted against the NodeBalancer connection pool.

    That being said, if you need 200,000 concurrent ESTABLISHED TCP connections, you would need 20 NodeBalancers.

  17. Author Photo

    So if I understand this correctly if you need to go over 10,000 connection you would need multiple nodeBalancers with round robin dns?

コメントを残す

あなたのメールアドレスは公開されません。必須項目には*印がついています。