Erlangもそうですが、並列・分散処理について興味があり、来年はそこを中心に掘り下げたいと思っています。関数型は大学でLISPを少しやりましたが、結局その後使わないので色々と忘れていますし、MapReduceのアーキテクチャ等を学ぶ上でもErlangを少し勉強したいなと思っていたところに、id:@cooldeamon氏が勉強会を開催されると聞きつけ、参加してきました。おそらく今年最後のイベント・勉強会でしょう。 内容は思ったよりも濃く、Erlangに関してgihyo等の記事で読んだ程度の知識の人間にもわかりやすく教えていただきました。 Erlangの環境はCouchDBをインストールした時一緒に入っているので、特に準備は必要ありませんでした。今回は、内容がとても濃く、よくあるセミナのように変にこじんまり詰め込まず、持っているノウハウ・経験談を色々聞かせていただけたので大満足でした。せっか
並行処理をプログラミングする方法は大別すると、 スレッドなどを利用した同期処理的な書き方と イベントを利用した非同期処理的な書き方があります (イベントループ)。 最近 C10K問題 が有名になったことや、 Node.js が流行っていて Node.js のメリットとしてイベントモデルであるため C10Kが解決されるというのが上げられていたりして、 イベントモデルのスレッドに対する優位性が注目されることが多いように思います。 しかし個人的な経験として、ある程度以上複雑なプログラムを書く場合、 イベントモデルで非同期処理を多用してプログラムを書くとスレッドで同期処理を使ってプログラムを書いた場合に比べてプログラムの可読性・保守性が著しく悪くなり、 バグが発生しやすくなるように感じます。 しかも並行処理で起こるバグは特定の処理が特定の順序で実行された場合のみ起こるようなことが多く、 再現性が低
一日をむだにする方法はいくらでもある。しかし一日を取り戻す方法はひとつもない。 View My GitHub Profile Download ZIP File Download TAR Ball View On GitHub 時雨堂関連は更新されていますが、技術系は WebRTC 以外は古い記事が多いです。 X アカウント https://x.com/voluntas スパム対策で DM は認証アカウントのみ受け付けるようにしています 無償での情報搾取へは対応しません Bluesky アカウント https://bsky.app/profile/voluntas.net ブログ https://voluntas.medium.com/ 経営系のポエムだったり、仕事系の技術だったり Zenn https://zenn.dev/voluntas ちょっとした技術記事やちょっとしたポエム Si
BashoのrebarというErlang用ビルドツール(?)を使い始めて3週間ほどたったのですが、ようやく「複数階層」「複数スーパバイザ」という今回のSimple dungeonの構成を模したソースツリーが構築できました。 なんというか、この感謝を言葉にするのがすごく難しい。rebarを作って公開してくれたBashoのみなさん、あと、サイトでrebarを紹介されてたVoluntasさんにも。 rebar入れてから「とりあえず使えるようになりました」と言えるまで3週間も時間がかかったのは、今まで、まじめにOTPを使ってこなかったのが原因です。ずっとErlangとしてしか使ってなかった。OTPじゃなかった。rebarはもう初日からバリバリとテンプレートコードを生成してくれてたのに、もうほんと申し訳ないって感じ。rebarが吐き出してくれるコードが意味わかんない状態だったからもうw ただ、reb
GNU/LinuxでのErlang/OTPの導入手段はいくつかあるが、ここでは kerl を使う方法を採用する。以下のような利点がある。 簡単に導入できる ( build と install コマンドを実行するだけ) 最新版のErlang/OTPが使える (erlang.orgで配布されているソースコードからビルドするのでリリース直後から使える) 複数バージョンのErlang/OTPを導入・管理できる 特に3はErlangで複数のシステムを開発・保守する際に重宝する。Erlangの異なるバージョンだけでなく、同じバージョンでビルドオプションを変えたもの(HiPEのあり/なし、最小構成のアプリケーションのみなど)をいくつでも導入して、切り替えながら使える。 準備 Erlangのビルドに必要なパッケージを導入する。 Fedora、RHEL、CentOSの場合 $ sudo yum instal
Erlang製サーバーcowboyから汎用サーバー部分を分離したranchを使ってTCPサーバー実装する方法のメモ アプリケーション作成 rebarを落としてranch_sampleて名前のアプリケーションを作る すでにあるアプリケーションに組み込む場合は不要ですが。 $ mkdir ranch_sample $ cd ranch_sample $ wget https://github.com/rebar/rebar/wiki/rebar $ chmod 755 rebar $ ./rebar create-app appid=ranch_samplerebar.configを作成してdepsにranchを追加。こんな感じで %% -*- mode: erlang;erlang-indent-level: 4;indent-tabs-mode: nil -*- %% ex: ts=4 s
はじめに こんにちは、Python界の情弱です。まだWSGIに関する諸々のエントリを訳したいのですが、その前にErlangで気になっていたWeb系のライブラリの比較記事があったので見てみます。僕の感想とは違うところもありますし、みなさんの感想とも違うかもしれませんが、そういう場合はぜひ本人にメールしてあげてください。 http://lenary.co.uk/erlang/2011/08/erlang-web-libraries/ 原文には各ライブラリへのリンクが無かったので付け足しておきました。 Erlang Web Libraries & Frameworks 最近、簡単な社内APIのエンドポイントを書いている友人のために、必要に駆られて幾つかのErlang Webライブラリとフレームワークを比較しました。彼が是非多くの人にその要約を公開するべきだと言ったので、ここに公開します。 元記事
システム原則¶ Erlangのシステムを作って、インストールして、稼働させるまでの流れが書かれています。 なお、後半は systools を使って targetsystem というリリースツールを作るという話になっていますが、現在のErlangの方向性としては、 systools の代替として、 reltools を開発している(ただし、まだ万全ではない)という流れになっているとのこと(V談)。そのため、リリースの流れを知る、という意味あいで読むのが良いと思います。詳しくは reltools のドキュメントを参照してください。
You are here » Home Page » Articles » Erlang Websocket Server using Cowboy NOTE: This is the translation of the original article I wrote in spanish for the wiki of Erlang Argentina. Why choose Cowboy as the HTTP Framework Out of curiosity, and because some of my own projects needed it, I decided to go ahead and try writing a websocket server in erlang. After evaluating some of the available
日頃、java屋なのでmavenと近い印象で望みましたが結構似てました。とても長いけどメモまでに。 0. rebar準備 Githubから取得してmakeします。できたrabarをプロジェクトで利用します。 1. プロジェクト作成 hello_rebarという名前にします。otpアプリケーションが複数あることもふまえてappsというサブディレクトリを作成します。あとは後述するリリース用のrelディレクトリを作ります。で、さっきmakeしたrebarをhello_rebarディレクトリ下にコピる。 2. テンプレート自動生成 rails/mavenと同様にテンプレート生成します。 create-app appid=hello_rebar でアプリケーションの骨格である各ファイルを作成 create template=simplemod modid=hello_rebar テストディレクトリも
なんの言語で作ったにせよ、サーバアプリケーションであれば最終的に本番サーバで稼働させて初めて意味を成します。 いわゆるデプロイと言われる作業ですが、これが意外に難物で、アプリケーションが出来上がってからサーバをセットアップして稼働させようとすると、特に依存関係周りで色々とひっかかることも少なくないです。 で、Erlangを見てみると、さすがに長年本番環境で使用されてきたというか、その為に作られた言語と実行環境だけあってデプロイ周りがキッチリしています。 Erlang自体にもともと製品リリースの為の仕組みがあるようですが、Erlangをバリバリ仕事で使っているというbashoの方々による成果物rebarを使うと更に楽ができます。 "rebar generate"でパッケージ化されたアプリケーションにはbeamファイルだけでなく、stdlibなどの基本ライブラリや更にはErlang自体も含まれ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く