Qiitaにて、shibacowさんのElixirでプロセス20万くらい作ってみたという素晴らしいElixirの記事があり、そちらの記事にて最大プロセス数の変更はどのように行えば良いのか自分自身でも気になったため調べたところElixirからErlangVMで生成できるプロセス数を(たぶん)変更できる方法を発見したので記事にしたいと思います。 # 実行環境 OS:OS X Yosemite Erlang:Eshell V6.5, OTP-Version 18 Elixir:v1.0.4 # まずはErlangでプロセス数の変更を確認 Qittaの記事にも記載されておりますが、 erl(1)のドキュメントには OTP-R18より +P オプションにてプロセス数の上限の設定は無効化されていると記載されています。ドキュメントはこちら ただし、実行してみると、どうも動いているようにも見えました。 $
As of Erlang 20.0, the full set of version string tags is: [64-bit] The BEAM emulator is built to make full use of a 64-bit CPU. [async-threads:10] This refers to the number of threads in the Erlang emulator's async thread pool, which more or less tells you how many blocked system calls can be spun off into background threads before the emulator stalls. Though it currently defaults to 10, the defa
This book is not about how to write correct and beautiful code, I am assuming that you already know how to do that. This book isn’t really about profiling and performance tuning either. Although, there is a chapter in this book on tracing and profiling which can help you find bottlenecks and unnecessary usage of resources. There also is a chapter on performance tuning. These two chapters are the l
最近は久しぶりにプロダクションでErlangのコードを書いたりしています. かなり小規模な物ですが. そこでOTP23で新しく入るpgのコードを読む機会があったので, pgの実装についてまとめようと思います. pg (Process Group) とは Erlang Cluster内で複数のプロセスが参加するグループを作成し, そのグループの全てのプロセスに対してメッセージを送信することを目的としたものです. そもそもpgというモジュールは昔存在しており, このページ では以下のように書かれています. その代わりとしてpg2が現れ, そしてまたpgが帰ってきました. といっても名称が同じなだけで全く別物であり, WhatsApp IncのMaxim Fedorovが作成したもので, spgに軽微な修正が入った物です. pg2は誰も使っていないと揶揄される程一般的ではないようで, gproc
Message passing between Erlang nodes is considerably slower than within the same node. This is normal, and is due to the fact that messages sent between nodes are actually copied from the area of the sender to that of the receiver, then sent over from one node to the other via TCP/IP. I was getting interested when a server could achieve amazing performance over a single node, performance which got
Intro Erlang/OTP 19 から、 gen_fsm の後継として gen_statem が導入された。 OTP の内部でも ssl などはすでに gen_statem に移行している。 このビヘイビアの概要について記す。 reference gen_statem API gen_statem Behavior caution すでにかなり安定はしているが、軽微といえども非互換な変更が OTP 20 以降に発生する可能性があることがドキュメントに言及されている。 本記事は 19 時点での API ドキュメントをベースにしている。 State Machine 特にサーバのようなプログラムでは、状態の管理が重要になる。 この状態の変化を、現在の状態(S)と発生したイベント(E)の組み合わせによって、実行する処理(A)と次の状態(S')とし、以下のようにモデル化する。 State(S)
[Video] http://vimeo.com/44312354#at=0 [Slide] http://www.erlang-factory.com/upload/presentations/558/efsf2012-whatsapp-scaling.pdf WhatsAppは日本でいうところのLineにあたるサービスでしょうか。このニュースによると、WhatsApp: 月間UU3億、WeChat: 月間UU2.3億、Skype: 月間UU2.8億、Line: 登録2億 (UUは発表しないんですね。。) ということですから、相当でかいですね。 昨年になりますが、Rick Reed (WhatsApp <- Yahoo! <- SGI)が、同サービスを支える、数百万ユーザの同時接続システムについて、SanFranciscoのErlangのカンファレンスで語ってます。 メッセージのトラフィ
Releases, Offers & More Be the first to hear about our newest content, best promotions and upcoming events. Plus get 25% off your next purchase. Newsletter Sign Up Download Accounts Your email address is your account identifier. You can create a password, or just download from the links sent via email. My Orders (Resend order emails) How We're Different Hands-on instructions Solutions to real-worl
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く