タグ

ブックマーク / acro-engineer.hatenablog.com (44)

  • "Reactive Streams" の実装はどうなっているの? - Taste of Tech Topics

    こんにちは。@kimutanskです。 夏の日差しが日に日に増し、セミも盛んに鳴きはじめましたが、皆さん夏バテなどされていませんか? さて、今回の内容は、非同期ストリーム処理界隈で注目の「Reactive Streams」です。 先月のJJUGナイトセミナーでも取り上げられており、私は残念ながら参加はできなかったのですが 後から資料を読んで勉強させていただきました。jjug.doorkeeper.jp 1. Reactive Streamsとは何か? Reactive Streamsとは、「JVM 上でのノンブロッキングなバックプレッシャーを持つ非同期ストリーム処理の標準」で、 様々な非同期ストリーム処理のインタフェースを共通化して標準的に扱えるようにしようというものです。 分散環境での非同期ストリーム処理においては、 「上流のコンポーネント群の方が処理能力が高く、下流のコンポーネント群が

    "Reactive Streams" の実装はどうなっているの? - Taste of Tech Topics
    kimutansk
    kimutansk 2015/07/31
    ReactiveStream1.0に追随させて動かしてみましたが、次は実際に中みてBackPressure確認してみましょうか。
  • MQTT Broker比較~性能比較編 - Taste of Tech Topics

    こんにちは、ツカノ(@snuffkin)です。 MQTT Broker 比較の第二弾です。 前回は、機能の比較を行いました。 MQTT Broker比較~機能比較編 実際のシステムへの適応を考えると、性能は特に気になるところ。 ということで、今回は性能比較を行ってみました。 ベンチマークは環境や測定方法、バージョンによっても大きく異なりますので、 あくまで一例として参考にしてもらえればと思います。 ベンチマークに利用したプログラムは、Goで開発された以下の MQTT-Bench を利用しています。 MQTT-Bench : MQTT Benchmark Tool ベンチマークの条件は以下の通りです。 構成、メッセージ長 MQTT Broker に対して、500connections で同時処理 1つのメッセージ長は 1024byte マシンスペック OS: CentOS 6.5 (64bi

    MQTT Broker比較~性能比較編 - Taste of Tech Topics
    kimutansk
    kimutansk 2015/06/30
    スケールアウトしない単体プロセス構成であれば、こういう結果ですか。
  • MQTT Broker比較~機能比較編 - Taste of Tech Topics

    こんにちは、ツカノ(@snuffkin)です。 このところ IoT(Internet of Things)関連のニュースを目にすることが増えました。 最近であればPepper君の一般販売などが大きなニュースでしたが、 システムの足回りが大好きな自分としては、IoTと言えば、そう、MQTTですね!(強引!) Googleトレンドで調べてみたら、こんな感じでした。ここ1-2年で急速に伸びていますね。 MQTTは、Message Queue Telemetry Transport の略ですが、Pub/Sub型モデルのメッセージキュー"プロトコル"であり、MQ(Message Queue)と言いつつ、メッセージを蓄積はしないんですよね。よく勘違いされる点なので、注意が必要です。 MQTTの詳しい説明は、以下のサイトが参考になります。 MQTT.ORG MQ Telemetry Transport

    MQTT Broker比較~機能比較編 - Taste of Tech Topics
    kimutansk
    kimutansk 2015/06/19
    このあたり複数Brokerがあって、Retainの期間やらメッセージの保持やら色々異なるのでまとめは必要ですね。
  • JJUG主催Pepperハッカソンに参加してきました! - Taste of Tech Topics

    Java Developerの皆さん、こんにちは。 ボクの名前は @kimutansk 、IPアドレスは192.168.254.254 ・・・というPepperのモノマネはさておき、@kimutanskです。 6月6日にPepperハッカソンに参加してきました! 【東京】JJUG主催Pepperハッカソン ( https://jjug.doorkeeper.jp/events/25442 ) Pepperハッカソンって? Pepperハッカソンは、あのヒューマノイドロボットPepperを使って、実際にプログラムを組んで動かしてみようというイベントです。 今回のイベントはPepperをJava NAOqi SDKで開発できるようになることを記念されて開催されたものです。 Java NAOqi SDK ( http://doc.aldebaran.com/2-1/dev/java/index_

    JJUG主催Pepperハッカソンに参加してきました! - Taste of Tech Topics
    kimutansk
    kimutansk 2015/06/11
    APIはまだまだ発展途上ですが、実際にJavaと組み合わせて使用できるのはやはり大きいですね。
  • OpenDaylight Helium SR3を試してみた 【OpenDaylight 「Helium」でSDNを構築してみよう】 - Taste of Tech Topics

    こんにちは、 miyakeです :-) ちょっと先の話ですが、来月6月は幕張でINTEROPが開催されます :-) ネットワーク機器からSDN、NFVのデモや展示が行われる、ネットワークに関する大きなイベントです。 今年はIoT関係の展示も増えているそうなので、見に行こうと思っています。 前々回:OpenDaylight 「Helium」 概要編 前回:OpenDaylight 「Helium」をインストールしてみよう 今回:OpenDaylight 「Helium」でSDNを構築してみよう < イマココ そんな訳で最終回の今回は、前回インストールを行った環境でSDNを構築します。 今回構築するネットワークのイメージは以下の図のようになります。 open vSwitchでOpenFlow Switchを3つ(ofbr0~ofbr2)作成して、SwitchごとにNodeを4つずつ接続した構成

    OpenDaylight Helium SR3を試してみた 【OpenDaylight 「Helium」でSDNを構築してみよう】 - Taste of Tech Topics
    kimutansk
    kimutansk 2015/05/26
    ネットワーク制御は内部ではこうなっていますよ、という。中身を見てみるのも面白いですね。
  • OpenDaylight Helium SR3を試してみた 【OpenDaylight 「Helium」をインストールしてみよう】 - Taste of Tech Topics

    こんにちは、こんばんは miyakeです :-) GW開け早々、まだ5月なのに台風が来たり、真夏のような暑さになったりしているなか、いかがお過ごしでしょうか... 今回は「OpenDaylight Helium SR3を試してみた」の2回目、「OpenDaylight 「Helium」をインストールしてみよう」です。 前回:OpenDaylight 「Helium」 概要編 今回:OpenDaylight 「Helium」をインストールしてみよう < イマココ 次回:OpenDaylight 「Helium」でSDNを構築してみよう インストール環境の準備 今回、OpenDaylight 「Helium」はCentOS7にインストールします。 Debian、Ubuntuの方は....ごめんなさい... あと、最新のFedoraではOpenJDK1.7のパッケージが用意されていなかったので、

    OpenDaylight Helium SR3を試してみた 【OpenDaylight 「Helium」をインストールしてみよう】 - Taste of Tech Topics
    kimutansk
    kimutansk 2015/05/19
    OpenDaylight自体はJavaのWebアプリなので、意外なくらい簡単に入るんですよね。後はこの先のSDN構築ですね。
  • 3分でできる!Google CodeからGitHubへの移行 - Taste of Tech Topics

    こんにちは、ツカノ(@snuffkin)です。 先日、Google Codeが2016年1月に閉鎖されると発表されました。 長年使っており残念だ、と言う方もいらっしゃると思いますが、時代の流れでしょうか。 Google Codeにホスティングしている方は、忘れないうちにGitHub等への移行が必要です。 幸いにもツールが用意されているため、いくつかの制約を許容すれば、3分で移行できます。 そこで、今回はGoogle Code上のコードをGitHubへ移行してみましょう。 実際に、移行してみましょう ここでは、Google Codeにある「mibible」というプロジェクトを例に説明します。 事前に、Google Code、GitHubにログインしているものとします。 それではまず、移行したいGoogle Codeのページに行きましょう。 すると、「Export to GitHub」というボ

    kimutansk
    kimutansk 2015/04/07
    そういえばサービス終了するんでした。一つの時代の終わりを感じますね。 で、こういう形の移行手段も用意されていると。
  • Elasticsearch設定に関する小ネタ - Taste of Tech Topics

    こんにちは、ツカノ(@snuffkin)です。 この記事はElasticsearch Advent Calendar 2014の21日目です。 20日目はjtodoさんの「Spark on elasticsearch-hadoop トライアル」でした。 さて、以前、「Elasticsearchソースコードリーディング~内部構造把握の第一歩~」と題してElasticsearchのスレッド構成といった内部構造の話を書きましたが、今回もまた、似たような話です。 今回はElasticsearchの設定ファイルについてです。 1.ノード名について Elasticsearchのデフォルトのログフォーマットでは、ノード名が出力されます。クラスタで運用することも考えると、ノード名って重要ですよね。ノード名の設定方法については、公式ページに記載があります。 ここで面白いのが、設定を省略した場合の動きです。M

    Elasticsearch設定に関する小ネタ - Taste of Tech Topics
  • Impalaにファイルで投入したデータはいつから検索可能になるの? - Taste of Tech Topics

    こんにちは。kimukimu(@kimutansk)です。 このエントリはSpark, SQL on Hadoop etc. Advent Calendar 2014 - Qiitaの12/14分です。 多くの人がSQLなら書けるということで、 開発者でなくても自在に検索を定義可能なSQL on Hadoopが今非常に広まりつつあります。 私はそんなSQL on Hadoopの中でImpalaを今使用しているため、Impalaについて書かせていただきますね。 Impalaをデータの集計で使用しているのですが、 その際に「元々存在しているテーブルにデータをファイルで投入する」ことがあります。 ですが、ファイル投入後クエリを実行してみても投入した結果が表示されないことがありました。 かつ、Impalaのサイトを見てもどのタイミングでデータが検索可能になるか、は明確には見つからないんですよね・・

    Impalaにファイルで投入したデータはいつから検索可能になるの? - Taste of Tech Topics
    kimutansk
    kimutansk 2014/12/14
    やってみればわかりますが、意外にその記述が無い小ネタ。後からファイルで追加した場合はreflesh必要ですね。
  • Pepperについて調べてみました&会いに行ってみました - Taste of Tech Topics

    こんにちは、ツカノ(@snuffkin)です。 皆さん、ロボットは好きですか? 子どもの頃、ロボットアニメに興奮した方も多いと思います。 私も好きなロボットアニメがありました。 昔は夢の話だったロボットも、科学が進歩し、段々と人型ロボットが実現されてきました。 AIBOが走ったり、東大発のロボット関連ベンチャーがGoogleに買収されたりと、研究的な部分で進歩する一方で、ソフトバンクから家庭向けにPepperというロボットが発表されました。 今回は、ソフトバンクから来春発売されるPepperの話です。 初めての方には基礎知識の紹介、知っている方にはおさらい、ということで、まずはPepper関連の情報をまとめてみました。 Pepperとは? Pepperはソフトバンクが2015年2月に発売する、子どもくらいの身長のロボットです。 孫さんが自ら発表するくらい期待しているようで、感情を理解して自

    Pepperについて調べてみました&会いに行ってみました - Taste of Tech Topics
    kimutansk
    kimutansk 2014/09/17
    クラウド連携がどこまで行われるかは気になるところですね。
  • MQTT Meetup Tokyo 2014.08に参加してきました! - Taste of Tech Topics

    id:KenichiroMurata(@muraken720 )です。 皆さんはMQTTに興味はありますか?私は昨年末くらいからMQTTに興味を持ち、そこからあれこれ調べています。 また社内でも、Stormのエコシステムとして開発しているAcroMUASHI Streamの開発チームが、MQTTと連係した分散ストリーム処理を実現しており、私の周辺では盛り上がっています。 そんな中、先日 MQTT Meetup Tokyo 2014.08が開催され、幸運にも参加することができましたので、今回はその参加レポートをお届けします。 イベントの概要はこちらをご覧下さい。イベントは非常に内容の濃いものであり、面白かったです。 少しでも何かお手伝いできることがあればとイベント当日のtweetをtogetterにまとめましたので、当日の雰囲気や反応をご覧になりたい方はMQTT Meetup Tokyo 2

    MQTT Meetup Tokyo 2014.08に参加してきました! - Taste of Tech Topics
    kimutansk
    kimutansk 2014/09/03
    MQTTの話。何かと課題も多いのでこういう会は参考になります。
  • Storm-0.9.2の新機能/修正点を紹介します - Taste of Tech Topics

    こんにちは。kimukimuです。 Stormインストーラ更新のお知らせ まず最初にお知らせを。 読者の皆さんにも愛用頂いている(?)Stormのインストーラですが、 Storm-0.9.2対応バージョンをアップしました。 下記のページからダウンロードできますので、 Stormを簡単にインストールしたい方、Stormを試してみたいと考えている方は是非使ってみてください。 acromusashi/storm-installer · GitHub インストーラのアナウンスと併せて、Storm-0.9.2の新機能/修正点を紹介しますね。 Storm-0.9.2の主な新機能/修正点 Storm-0.9.2の新機能/修正点として、主なものは下記の4点があります。 Storm UITopology可視化ツールの追加 Storm-Kafkaの更新/媒体への取り込み Storm-Starterの媒体への

    Storm-0.9.2の新機能/修正点を紹介します - Taste of Tech Topics
    kimutansk
    kimutansk 2014/07/23
    構造が図示されるのは大きいですね
  • Apache版Storm初回リリースの新機能の使い方 - Taste of Tech Topics

    こんにちは。kimukimuです。 夏なのか梅雨なのか微妙な気候になっているような感覚を覚える今日この頃です。 いきなり暑くなってきているので、バテないよう気をつける必要がありますね。 さて、前回Apache版Stormの新機能の概要について紹介しましたが、 今回は実際に新機能がどういう風に使えるのか、について確認してみようと思います。 尚、Storm-0.9.2-incubatingもリリースされていますが、それは次回に回すとして、 今回はStorm-0.9.1-incubatingの新機能です。 ・・・といっても、ビルドツールの変更などは確認してもあまり嬉しいことはないため、 下記の2つの機能に絞って確認を行ってみることにします。 Storm-UIの各項目にツールチップで解説を表示 NimbusにTopologyをSubmitする際、設定に対するバリデーションが追記 1.Storm-U

    Apache版Storm初回リリースの新機能の使い方 - Taste of Tech Topics
  • Spring BootによるWebアプリお手軽構築 - Taste of Tech Topics

    こんにちは、阪です。 Springのメジャーバージョンアップに伴い、Spring Bootも晴れて1.0となりました。 Spring Bootは、Spring周りの依存関係をシンプルに解決してくれるフレームワークですが、今流行りの(流行る予定の?)Dropwizardを意識した作りになっています。 どれだけシンプルにできるのか、見てみようと思います。 超シンプルなWebアプリの作成 では早速、Webアプリを作ってみましょう。 手始めに、サーバにアクセスすると固定文字列を返す(いわゆるHello World的な)アプリを作ってみます。 まず、下ごしらえとして、Mavenのpom.xmlを作成します。 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-i

    Spring BootによるWebアプリお手軽構築 - Taste of Tech Topics
  • もしもラムダの中で例外が発生したら(前編) - Taste of Tech Topics

    ある日、 id:cero-t がJJUGの重鎮たちと話している中で、とある宿題をもらいましたとさ。 「Java8のラムダの中で例外が発生したら、どうなるんだろう?」 こんにちは、アキバです。 もう皆さんはJava8を使ってみましたか? とりあえずインストールしてみた人! ・・はーい (おまえか という冗談はさておき、 今回は、id:cero-t に代わって私が冒頭のお題を調べてみました。 1. SerialStreamで動かしたラムダで例外が発生したら まずは、小手調べにシングルスレッドの場合を見てみましょう。 検査例外が発生するようなコードをラムダに書いてみると、コンパイルエラーになります。 こんなコードです。 try (BufferedWriter writer = Files.newBufferedWriter(Paths.get(W_FILENAME))) { // writer.

    もしもラムダの中で例外が発生したら(前編) - Taste of Tech Topics
    kimutansk
    kimutansk 2014/04/15
    これは後半気になりますねぇ。単にロストするだとなかなか厳しい。
  • あなたのJavaコードをスッキリさせる、地味に便利な新API 10選(後編) - Taste of Tech Topics

    こんにちは。 アキバです。 日3/18、ついに、Java8が正式リリースされますね! もうダウンロードされましたか?ってまだですかね?私はまだです(だって公開前にエントリ書いてるんだもんね) 2014/03/19追記:Oracleのページが更新されました!→こちら さて、前回に続いて、Java8で追加された地味で便利なAPIを紹介していきます。 今回は、みんな大好きMapとConcurrent、あとちょびっとComparatorです。 3. Map操作編 (1) Map#getOrDefault() これまでは、Mapから値を取得してnullだったらデフォルト値を使用する、みたいなコードを以下のように書いていたと思います。 Map<String, String> map; // 何らかのMap String value = map.get("key"); if (value == nul

    あなたのJavaコードをスッキリさせる、地味に便利な新API 10選(後編) - Taste of Tech Topics
    kimutansk
    kimutansk 2014/03/18
    後編。段々マニアックなものになってきていますが、存在を知っておくことは重要ですね。
  • Apache 初回リリースのStorm0.9.1のリリース内容は? - Taste of Tech Topics

    こんにちは。kimukimuです。 徐々に暖かくなってきていますね。春は目前です。 さて、つい先日Apache Stormとして初リリースとなる「0.9.1-incubating」がリリースされました! #ちなみに前回リリースは「0.9.0.1」です。 今回リリース内容は大きく分けて、Apache Incubatorに移行したため発生したものと、 機能追加/不具合対応によるものの2つがあります。 節目のリリースですので両方についてリリースノートより主要な項目を紹介しますね。 1. Apache Incubatorとしてのリリース内容 ライセンスの変更 ライセンスが「Eclipse Public License - v 1.0」から「Apache License Version 2.0」に変更になってます。 今回の変更で今まで使っていた方が使えなくなる・・・ということはないのですが、 きちん

    Apache 初回リリースのStorm0.9.1のリリース内容は? - Taste of Tech Topics
    kimutansk
    kimutansk 2014/03/05
    徐々に初めやすいプロダクトになりつつありますね
  • Kibanaの画面をPDF出力しよう! - Taste of Tech Topics

    こんにちは! ツカノ(@snuffkin)です。 最近、STAP細胞のニュースで賑わっていますね。iPS細胞と比較する記事が多いですが、たまにはES細胞のことも思い出してあげてください(ES細胞だってノーベル賞を取っているんですよ~)。まぁ、IT業界的にESと言えば、Elasticsearchのことを指す訳ですが、こちらはトレンドなプロダクトで、Marvelが登場したりと、まだまだ広がっていく感じがします。 Elasticsearch+Kibanaは当に便利で、様々な方が取り組まれており、情報量も急速に増えています。ログをElasticsearchに簡単に入れておくことができ、Kibanaを使って簡単に可視化できるのは良いですよね。 さて、可視化したら、それを後から見ることができるようにファイル化したくなるのが人の心。Kibanaで表示した画面もファイルに落としたいしたいですよね。特に「

    Kibanaの画面をPDF出力しよう! - Taste of Tech Topics
  • Amazon Kinesis + Storm を連携させて、ストリームデータ処理を行ってみた - Taste of Tech Topics

    こんにちは。kimukimuです。 昨日はクリスマスイブでしたが、皆さんはどのように過ごされたでしょうか? 私はケーキは買う派ではなく、自分で作る派です。……まぁ、べるのも自分なのですが…… クリスマスはさておき、今日はKinesisとStormに関する内容です。 AWS re:Invent 2013 で 発表されたAmazon Kinesis が12/17にPublic Betaになり一般公開されましたね! 以下のように、KinesisはStormのコネクタを含んでいる、ということなので、さっそく試してみましょう。 Kinesis does include a connector for porting data to Storm, which AWS General Manager for Data Science Matt Wood said is a possibility in

    Amazon Kinesis + Storm を連携させて、ストリームデータ処理を行ってみた - Taste of Tech Topics
    kimutansk
    kimutansk 2013/12/25
    Amazon KinesisとStormを連携。思っていた以上に作りやすかったです。異常系処理も隠蔽されていてシンプル。
  • Spring XMLでCamelを書いて、twitterとelasticsearchを連携(Apache Camel入門 その3 Spring XMLについて) - Taste of Tech Topics

    こんにちは、もっと多くのJava技術者がCamelで楽できるはずと信じているツカノ(@snuffkin)です。 前回は、発達したJavaのエコシステムの恩恵にあずかり、実質数行のJavaコードで、twitterとelasticsearchを連携させることができました。 今回は、Spring XMLでCamelを記述することで、twitterとelasticsearchを連携させてみましょう。 「Camelって何?」って人は、前回までの内容を確認しておきましょう。 Apache Camel入門(その1 OSSをつなぐOSS) - Taste of Tech Topics twitterとelasticsearchを簡単に連携させる(Apache Camel入門 その2 コンポーネントについて) - Taste of Tech Topics CamelのDSLについて これまで説明してきたCa

    Spring XMLでCamelを書いて、twitterとelasticsearchを連携(Apache Camel入門 その3 Spring XMLについて) - Taste of Tech Topics