InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architect. View an example
Keep up to date with the latest news, best practice ideas and exclusive offers. Don’t miss out. Sign up here. This is an update to our previous blog post, Erlang 19.0 Garbage Collector. With Erlang/OTP 20.0, some things have changed, which is the reason for this updated blog post. Erlang Garbage Collector Erlang manages dynamic memory with a tracing garbage collector. More precisely a per process
We build transformative solutions for the world’s most ambitious companies. By providing user-focused consultancy, high tech capabilities and connection to diverse communities. We’re the world-leading experts at building massively scalable distributed systems. We have over 20 years of experience building critical digital infrastructure that scales to billions of users without error. We create a re
書きかけです Exometer って何? https://github.com/Feuerlabs/exometer Erlang/OTP に組み込めるほぼ完璧な統計ツール、もうこれでいいよ。 大まかに統計機能と統計出力機能がある。さらに既存に関数を統計機能化するのもある。 基礎編 基本的には exomter:new/3 と exomter:update/2 を使い、取得は exomter:get_value/2 で取得する。 色々特殊な仕組みはあるがまずは counter と gauge と histogram が使えれば十分だとおもう。 new するときのキーは [atom()] でつける。[mqtt,recv,bytes] みたいな感じ exometer:new(Key, Type, Opts) という感じ。 counter counter はシンプルな ets ベースのカウンター
社内勉強会で読んでる本にpoolboyが出てきたので、遊んでみて、いろいろ調べたのでこっちにも貼ります。 poolboyとは プロセスプールを管理してくれるErlangのライブラリ。poolboyはワーカープロセスをいくつか予め起動しておく。それらを利用したいクライアントは、poolboyに「どのプロセスが暇ですか」と聞くと、「このプロセスは暇してます」とPIDを返してくれる。PIDを得たクライアントはワーカープロセスからサービスを受けられる。 何が嬉しいか 1. 並列度を制限できる 例えば、「画像URLを指定すると、インターネット上から画像を取得してディスク上に保存する」タスクを考える。並列度が制限されない場合、このタスクを必要な分だけ並列に実行できてしまうため、ネットワークやディスクに大きな負荷が掛かる可能性がある。あらかじめこのタスクを行うサーバプロセスの数を制限しておけばこの問題は
09 Feb 2016 on erlang scheduling real-time preemptive migration Erlang Scheduler Details and Why It Matters There are some underlying features that make Erlang a soft real-time platform. One of them is its Garbage Collection mechanism which I talked about it in my previous article, Erlang Garbage Collection Details and Why It Matters. The other one is its scheduling mechanism that is well worth lo
(Elixir 向けの内容ですが、Erlang で書かれた recon_trace を紹介しているので、Erlang タグも付けてます) トレース機能、使ってますか? みなさんは Elixir のプログラムをどのようにデバッグしてますか? IEx.pry? それとも、IO.inspect を使った、いわゆる printf デバッグでしょうか? また、もし本番環境で次のような問題が起こったら、どう調査しますか? 特定の条件(ユーザーからの入力)でエラーになるようだが、その条件自体がわからない どこかが性能上のボトルネックになっているようだ ログを追加して、アプリケーションをデプロイし直すのもひとつの方法ですよね。 もちろん、どれも有効な手段です。でも、こんな時、まずは Erlang VM のトレース機能を使うことをお勧めします。それだけで原因がわかるかもしれません。 「すごいE本1」の原著者
Lately I’ve been working with files in just one machine. While working on it I had the doubt whether files could be shared between nodes. Files have pids so… they must be processes so… they should be shared between nodes… Let’s test it. The test As usual the test is a very simple one. Just two different physical machines and a file that will be accessed by both of them. The first machine is a nice
We are all familiar with the saying, “Knowledge is power.” Having its roots in the Latin: scientia potentia est, it holds just as true today as all those years ago. Knowledge is what makes us more powerful than other creatures. Eagles and other sharp-eyed creatures might have better eyesight than humans, but we have learned […] We are all familiar with the saying, “Knowledge is power.” Having its
Bluish Coder Programming Languages, Martials Arts and Computers. The Weblog of Chris Double. Support for building Erlang on Android is provided in the standard Erlang source. Build setup I use the Erlang git version for building. Cloning can be done with: git clone https://github.com/erlang/otp In the xcomp directory of the cloned repository there is an erl-xcomp-arm-android.conf file that contain
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く