A introduction about main functionalities of Celluloid, a Ruby Actor Model implementation, and some of famous libraries that uses it - Celluloid::IO, DCell and Reel.Read less
![Celluloid, Celluloid::IO and Friends](https://cdn-ak-scissors.b.st-hatena.com/image/square/f1358e35782c6434572d00fd6874f45255686cc2/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Fcelluloid-130715213522-phpapp01-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
ÉÕÏ¿ D ÉâÆ°¾®¿ôÅÀ±é»»¤Ë¤Ä¤¤¤Æ Ãí - ¤³¤ÎÉÕÏ¿¤Ï¡¢1991 ǯ 3 ·îȯ¹Ô¤Î "Computing Surveys" ¤Ë·ÇºÜ¤µ¤ì¤¿ "Every Computer Scientist Should Know About Floating-Point Arithmetic" ¹Æ (David GoldbergÃø) ¤òºÆÊÔ½¸¤·¡¢Ãøºî¸¢¤òͤ¹¤ë Association for Computing Machinery ¼Ò (Copyright 1991) ¤Îµö²Ä¤Î¤â¤È¤Ë¡¢°õºþ¤·¤Ê¤ª¤·¤¿¤â¤Î¤Ç¤¹¡£ ³µÍ× ÉâÆ°¾®¿ôÅÀ±é»»¤Ï¡¢³µ¤·¤ÆÆñ²ò¤ÊÌäÂê¤È¤·¤Æ¼õ¤±¼è¤é¤ì¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£¥³¥ó¥Ô¥å¡¼¥
Ruby developers need to stop using EventMachine. It's the wrong direction. Lost in the "Threads vs Event Driven vs Process Spawning" debate is that you can combine them! Learn how Celluloid is improving thread programming by abstracting them using a higher level framework called Celluloid, how you can use Celluloid::IO to throw a reactor pattern into a thread. Using this approach, you can take adv
If you really like evented programming, use node. Everything there is evented. I tried EventMachine and it just felt worse than node, documentation is worse, libraries are worse, it just wasn't a whole lot of fun.I haven't tried celluloid yet, but I've learned one lesson building things with PHP, Ruby, Python, Node, Java, Scala, etc. That lesson is to use tools with a community of people around it
並列1000コネクションに耐える! Ruby のイベント駆動ライブラリ Rev と EventMachine の HTTPクライアント こんにちは、takada-at です。 Rubyのイベント駆動型ネットワークプログラミングフレームワーク Rev と EventMachine で HTTPクライアントを動かしてみました。 イベント駆動型ネットワークプログラミングフレームワークとは何か説明しだすと難しいですが、一言で言うと、以下のようになります。 # ふつうのフロー駆動型プログラム Net::HTTP.start(host, port){|http| res = http.get(path) #この処理が終わってから } puts "done" #この次の処理が実行される # イベント駆動型プログラム client = Rev::HttpClient::connect(host, port
連載目次 プッシュ通知とは? なぜ開発者はアプリにプッシュ通知機能を搭載するのか スマートデバイスにおける「プッシュ通知」はアプリにとって欠かせない機能の一つであり、メールマガジンと同様に重要な集客ツールです(図1)。スマートフォンをお使いの方でしたら、一度はプッシュ通知を受け取ったことがあるのではないでしょうか。 プッシュ通知はユーザーがスマートデバイスを起動していなくても通知を送ることができる仕組みであり、以下の特徴があります。 開くと直接アプリを起動するためアクションにつながりやすい アプリをインストールしているユーザーのみに届くため開封率が高い 上記のような特徴から、プッシュ通知は以下の用途で使うことが多くなります。 リアルタイムな情報配信 直接アプリ起動につながるため、ニュースなどリアルタイム性の高い情報の配信に向く ユーザーのアクティブ率向上 開封率が高いため、定期的にアプリを
“Hello World”なベンチマークでUnicornに比べ2倍高速に動作するRackサーバをリリースしました。 rubygems: http://rubygems.org/gems/rhebok github: https://github.com/kazeburo/rhebok PerlのGazelleをベースに作っています。Rackアプリケーションの運用経験がほぼないので、機能不足があると思います。issue等で教えて頂ければ幸いです。 なぜ高速に動作するアプリケーションサーバが必要なのか Unicornは高速に動作します。多くのアプリケーションにとっては十分でしょう。それでもRhebokでさらに上のパフォーマンスを出そうとしたのは、技術的なチャレンジの他に以下のようなアプリケーションで高速なアプリケーションサーバが必要とされると考えているからです。 ソーシャルゲーム、広告サーバ、
PHPの勉強会なので、いままでお会いしたことのない方とお話ができてよかったです。 発表内容は大きくなってしまったmaster.phpファイルをどうやって高速に読むかというお話です。PHPではリクエストの終了とともに全てのメモリを捨ててしまうので、変わらないデータもリクエストの度にキャッシュからロードしなくてはいけません。大きなphpファイルがあれば当然毎回の読み込みがオーバーヘッドとなってきます。そんな環境でどうやってアプリケーションのパフォーマンスをあげていったのかを紹介しています。 スライドの中でfile sizeを小さくする必要があると書きましたが、@hnwさんによると、VM命令が多過ぎるのが問題で、構造を簡単にしたことでVM命令が減ったのがよかったのではとのことでした。非常に参考になりました。ありがとうございました そろそろ傷が癒えてきた。。 ISUCON5の本選にメルカリのインフ
Unleash the power of Salesforce Customer 360 through integration Read more
8. 負荷テストアプローチ別の目標設定と指標の考え方 7. 負荷テストの評価基準には何 を使えばよいのか? に戻る はじめに 一般的に負 荷テストには、目的に応じて以下の4種類のアプローチがあると言われています。 * 性能テスト - スループット * 性能テスト - 応答時間 * 限界テスト * 耐久テスト 負荷試験はシステムに対する客観的評価手法の 一つですが、何をもって判定基準や達成目標にするかという明確な指標を伴わずに、漫然と一定量の負荷をかけて問題が起きなければそ のまま完了とするスタンスには問題があります。 実行時に明確な目標と指標が無い場合には、採取したデータも活用の出来ない 意味の無い客観データになりやすいですし、また、テスト時に可能である潜在的な性能問題の発見/改善のせっかくの機会を見逃すこと になります。 本編では、これらアプローチ毎の目的設定と指標の考え方について整理し
~テストツールを使う際の負荷量の指標~ 6. システムがパフォーマンスを維持するためのメモリ管理について に戻る はじめに 性能テスト、負荷テストを行う上では、達成すべき目標値の定義が必要となります。しかし、性能テストでは様々な指標が存在しており、どの指標をもって目標とし、結果を判定すべきか判断が難しい場合があるでしょう。 実際に、Webシステムの性能評価を行うための指標には以下があります: * 同時接続ユーザー数(Number of Virtual Users) * 時間あたりのユーザーシナリオ実行本数(Transactions per hour) * 時間あたりのページ処理数(Received pages per hour) * 時間あたりのヒット数(Hits per hour) * サーバー平均応答時間(Average Server times, etc.) * サーバー側のCPU
ひとくちにパフォーマンス・テストと言っても、何を目的とするかによって、いろいろな種類のテストがあります。パフォーマンスにまつわる会話を関係者間でしていると、そこに期待するものが違うために、時折話が食い違うこともあります。 パフォーマンス・テストを行うにあたって、どのように設計し、計画を立てるべきかを考えるのに先立って、求められている要件が何なのか整理し、目的をはっきりさせておくべきだと思います。 Performance Testing Guidance for Web Applications にアップされているドキュメントの Chapter 2 には、目的の違いによってそれぞれ種類の異なるパフォーマンステストの定義が説明されています。 自分のアタマの整理も兼ねて、主な4種類のテストが説明されている箇所を大雑把に翻訳・要約してみました。これらを念頭に置いて、ともすれば要件が混乱してしまいそ
すべての Microsoft 製品 Global Microsoft 365 Teams Copilot Windows Surface Xbox セール 法人向け サポート ソフトウェア Windows アプリ AI OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox Live Gold Xbox とゲーム PC ゲーム Windows ゲーム 映画とテレビ番組 法人向け Microsoft Cloud Microsoft Security Azure Dynamics 365 一般法人向け Microsoft 365 Microsoft Industry Microsoft Power Platform W
今月の初めに公表されていた、一般ユーザーが Linuxシステムをクラッシュさせてしまえるバグ CVE-2014-9090 が実は root権限の奪取にも使えることがわかり CVE-2014-9322 に進化しています。 CVE-2014-9090の日本語情報はこちら。 Linux Kernel の arch/x86/kernel/traps.c 内の do_double_fault 関数におけるサービス運用妨害 (DoS) の脆弱性 要するに、64bit版の Linuxでは管理者権限を持たない一般ユーザーが「わざと」システムをクラッシュさせてしまうことができるということです。対象となるのは x86_64用 Linuxカーネルの 今までの全てのバージョンです。 いま動いてるLinuxが 32bitか64bitかよくわからない場合は uname -m と入力して i686と出れば 32bit、
「宅ふぁいる便」サービスは終了いたしました。 2020年3月31日をもちまして「宅ふぁいる便」サービスは終了いたしました。 これに伴い、退会申請やポイント交換等の機能をご提供しておりましたWEB特設サイトもサービスを終了いたしました。 大変長らくご愛顧いただき、誠にありがとうございました。
話は、Linux版Norton Ghostとも言うべきユーティリティg4lのレビューに端を発する。だが、このレビューの結論が問題なのではない。これからお話しするのは、2つのオープンソース・ゴーストg4uとg4lを巡る物語なのだ。 話は、Linux版Norton Ghostとも言うべきユーティリティg4lのレビューに端を発する。だが、このレビューの結論が問題なのではない。これからお話しするのは、2つのオープンソース・ゴーストg4uとg4lを巡る物語なのだ。ゴースト・ストーリーは、やがて、恐怖よりも愁嘆の色を濃くしていく。己の出自を拒絶し親子の反目を招いた非嫡出子の物語――。少し先走りすぎたようだ。始めから順を追ってお話ししよう。 Hubert Feyrer氏がg4uを書いたのは、6年ほど前のことである。NetBSDベースのブート・フロッピーディスクで、広く使われていたNorton Ghost
条件1. /bin/shの実体がbashのディストリビューション RHEL CentOS Scientific Linux Fedora Amazon Linux openSUSE Arch Linux (自ら設定した場合: Debian, Ubuntu) 条件2. 動作環境 CGI (レンタルサーバでありがちなCGIモードのPHP等も含む) Passenger(Ruby) 条件3. プログラム内容 Passengerは全死亡 *1 systemや `command`、 '| /usr/lib/sendmail' などで外部コマンド実行 *2 PHPのmailやmb_send_mail、その他フレームワーク等を介したメール送信 *3 以下は条件1が不要 明示的にbashを呼ぶ 先頭で #!/bin/bash や #!/usr/bin/env bash しているプログラムを実行 (rbenv
私の妻が外国人ということもあり、海外に行く前に日本円を外貨に両替する機会がよくあります。 今回、ご紹介する「お得で簡単な両替のコツ」を知る前は、私も空港や銀行で”これが正解”とばかりに両替しておりました。 しかし、空港や銀行での両替には意外と高い手数料がレートの中に含まれています。 その手数料が高くなればなるほど、両替で損をすることになります。 銀行では、1ドル当たり3円・1ユーロ当たり6円程度の両替手数料がかかってきます。 1ドル100円であれば97円に価値が目減りしていることになります。 レートにもよりますが、例えば米ドルだと 20万円を両替した場合の両替手数料は 約6,000円程度かかってきます。 空港ではさらに高いケースがあります。 こんなに高い手数料を知らず知らずのうちに払っていたのかと思うと 「失敗したな。事前に別の方法を調べておくべきだったな。」と後悔しております。 知らなき
「OSSライセンス=契約」という誤解を解く:OSSライセンスで条件を指定する権利はどこからくるのか?(1/2 ページ) オープンソースソフトウェアについて解説した記事の中には、「OSSライセンスは契約である」という誤解を目にすることが多い。この連載は「第9回著作権・著作隣接権論文」で佳作に入選した論文をベースに、その誤解を解いてみるという試みをしたい。 問題意識:OSS開発者が条件を指定する権利はどこに由来するのか 前回の連載「企業技術者のためのオープンソースソフトウェア(OSS)ライセンス入門」では、企業がオープンソースソフトウェア(OSS)とうまく付き合っていくためのポイントを、ライセンスという観点から解説した。 それから6年が経過した。当時もそうだったが、OSSはますます広がり、企業が新たなビジネスやサービスを展開する際に利活用するのはもちろん、自らの成果物をオープンソースとして公開
"What Type of Defects are Really Discovered in Code Reviews?"というタイトルの論文がIEEE Transaction on Software Engineeringに掲載されている。分量の多い論文(2段組で20ページ弱、参考文献が70件以上)だが、示唆も多い。視点は実務に近いように思う。 論文は、ここ(IEEE digital library)から購入できる。また、ここ(Helsinki University of Technology)からダウンロードできる。詳細は原典を参照いただければと思う。 functionalityとevolvabilityは論文で提案されている欠陥分類。700件超のコードレビュー指摘結果と過去の研究結果とを踏まえて、大まかに2種類に分類していて、次のとおり。 functionality欠陥 機能欠陥の指
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く