久しぶりのブログ更新です。
本日僕の会社(PocketBox LLP.)の製品である動画変換ストレージサービス「Gemediar」を発表しました。
製品URLはこちら
プレスリリースはこちら
[追記]
Venture Nowにも取り上げて頂きました。
PocketBox、企業向け動画変換ストレージ「Gemediar」。無料プランも用意
様々なカメラで撮った動画を簡単に様々な媒体(パソコン、携帯、スマートフォン、iPadなど)に配信することが出来るようになります。
無料で使えるデモ版も用意していますよ!
ご興味もたれましたら是非お声かけください!
# ブックマークもよろしくです!
2010年7月1日木曜日
2010年6月6日日曜日
福岡でクラブイベント「アフロテンプル」が開催!
福岡で僕の知人が主催するIT系クラブイベントアフロテンプル が開催されます。
今日のエントリはその告知です。
フライヤー超かっこいい!

残念ながら僕は用事あって参加出来ないのですがorz。
僕はクラブってほとんど行ったことがないんですけど、初心者にも優しい人達ばかりであることは確実なので、興味ある方は是非行ってみて下さい!
今日のエントリはその告知です。
フライヤー超かっこいい!

残念ながら僕は用事あって参加出来ないのですがorz。
僕はクラブってほとんど行ったことがないんですけど、初心者にも優しい人達ばかりであることは確実なので、興味ある方は是非行ってみて下さい!
2010年4月1日木曜日
2010年1月29日金曜日
オープンソースで構築する非同期分散処理のプラットフォーム
先日のエントリでお伝えした通り、現在新しいビジネスの立ち上げに奮闘してます。
その中で、最近流行(?)の非同期に分散処理するようなプログラムを書きましたのでそれについてエントリを書きたいと思います。
今回作っているビジネスモデルは基本的にサーバーサイドのアプリケーションのリソースを切り売りしていくモデルで考えているのですが、その中で非常に重たい(時間のかかる)処理が存在します。
これを非同期分散処理を行う事で、待ち時間を感じさせないよう工夫しました。Movable Typeを使った事がある方は理解出来ると思うのですが、やっている事は本質的に静的構築とあまり変わりません。あらかじめキャッシュを生成するようなイメージです。
実際の処理の流れを、福岡ITベンチャーヌーラボさんのCacooを使って簡単に図にしました。
図のブルーの図形で囲まれたところが今回開発した処理の部分です。この部分をGearmanというフレームワークを使用して実際の処理を実装しました。本家の図が非常にわかりやすいので、これを用いて簡単にGearmanの説明を。

見ての通りGearmanを使うだけで、Client Application Code(呼び出すときのプログラム)と、Worker Application Code(呼び出されるときのプログラム)の二つを書くだけで非同期処理に必要なAPIやJobQueueの仕組みはすべてGearmanが面倒みてくれます。とても便利!
しかもClient Application CodeとWorker Application Codeは同一の言語で記述する必要がありません。現に今回はClient Application CodeはPHPで、Worker Application CodeはPerlで記述しています。
ではCacooの図に戻って、ブルーの図形の部分は順番に、
ジョブサーバのコードは一切書いていません。これはすごい便利ですよ!
といいつつ、これだけでは何故非同期処理や分散というキーワードが出てくるかわかりにくいのでもう少し突っ込んで解説します。
今回の処理で一番メインの処理は変換サーバの処理です。変換サーバは大きなあるデータを別のデータに変換する事をやってくれるのですが、これが非常に重たい。
そこでAPIサーバからジョブサーバに処理を委託した後、APIサーバはサービスサーバに受付が完了した情報を発行します。ジョブサーバには処理がたまっているので、変換サーバがひとつずつ処理し、結果をまたAPIサーバに返し、APIサーバがそれをサービスサーバに通知して一連の処理が完了します。これを繰り返しているのです。この時変換サーバの処理が重たくても、一時的にAPIサーバが受付完了をサービスサーバに発行するところがキモであり、レスポンス待ちを出来る限り発生させないところが一番オイシイところです。
まだわかりにくい?わかりにくいですよね(笑)
現実のものに例えば方がわかりやすいので、この仕組みを銀行を使って説明します。
銀行へ言って、窓口で口座を開設する時の事を思い浮かべて下さい。まずいきなり窓口へ行く事はなく、最初に整理券を取るでしょう。このときに既にお客さん10人待っていれば11人目になりますね。しばらく待って、整理券に記載された番号を呼ばれれば窓口へ出向き、口座開設の手続きをする。
まさにこの仕組みとそっくりなんです。
そしてここからが面白いところ。
実際に銀行の窓口は一つだけという事はなく、複数の窓口が設置されていたり、依頼内容によって窓口が異なっている場合が多々あります。
例えば預金口座の開設と借入の為の窓口は別だったりします。また、借入を希望する人が多いと予想される場合はローン申込の窓口を増やしたり、ニッチな要求かつクリティカルな要求(盗難や紛失など)は単独で窓口を設けていたりますよね。
変換サーバ(というかWorker Application Code)はまさにこれと同じであり、窓口を増やしたり減らしたりする事が出来ます。
例えばよくある最初に発生する膨大なスイッチングコストの発生時期だけ大量にWorker Applicationを起動させ処理し、落ち着いたら減らしてマシンリソースを節約。なんて事が可能です!
新機能を取り入れた一部の人にベータ公開したい時や、特急料金を払ってでも速く要求に答えて欲しいときなど、実際のビジネスシーンにおける様々な個別要件を実際にWorker Application Codeとしてあらかじめシステムとして組み込める事がとてもやりやすい。また、突発的に発生した特殊要件についても既存のClient, Worker処理を止めたりする事なく追加したり取り出したり出来るところも簡単に出来るようになっています。
このようにGearmanは大変手軽に組み込めて、各処理は自分の好きなプログラミング言語でかけるというとても素敵なプラットフォームというわけです。非同期に大量のデータを分散処理したいなら、まず検討してよいプラットフォームといってよいと思います。
参考までに現在の構成は、
ジョブサーバ: 1CPU
Client Application: 1CPU
Worker Applications: 6CPU
ですが、大変安定しています。既にジョブサーバはリブート無しで10万件近いジョブを処理しましたが至って安定しています。
非同期処理や分散処理に興味ある方、Gearmanは手軽でオススメですよ!
その中で、最近流行(?)の非同期に分散処理するようなプログラムを書きましたのでそれについてエントリを書きたいと思います。
今回作っているビジネスモデルは基本的にサーバーサイドのアプリケーションのリソースを切り売りしていくモデルで考えているのですが、その中で非常に重たい(時間のかかる)処理が存在します。
これを非同期分散処理を行う事で、待ち時間を感じさせないよう工夫しました。Movable Typeを使った事がある方は理解出来ると思うのですが、やっている事は本質的に静的構築とあまり変わりません。あらかじめキャッシュを生成するようなイメージです。
実際の処理の流れを、福岡ITベンチャーヌーラボさんのCacooを使って簡単に図にしました。
図のブルーの図形で囲まれたところが今回開発した処理の部分です。この部分をGearmanというフレームワークを使用して実際の処理を実装しました。本家の図が非常にわかりやすいので、これを用いて簡単にGearmanの説明を。

見ての通りGearmanを使うだけで、Client Application Code(呼び出すときのプログラム)と、Worker Application Code(呼び出されるときのプログラム)の二つを書くだけで非同期処理に必要なAPIやJobQueueの仕組みはすべてGearmanが面倒みてくれます。とても便利!
しかもClient Application CodeとWorker Application Codeは同一の言語で記述する必要がありません。現に今回はClient Application CodeはPHPで、Worker Application CodeはPerlで記述しています。
ではCacooの図に戻って、ブルーの図形の部分は順番に、
- APIサーバ: CakePHP, Gearman Client(Gearman PHP Extension)
- ジョブサーバ: Gearmand(C実装版)
- 変換サーバ: Gearman Worker(Perlで実装)
- ストレージサーバ: Apacheが稼働している
ジョブサーバのコードは一切書いていません。これはすごい便利ですよ!
といいつつ、これだけでは何故非同期処理や分散というキーワードが出てくるかわかりにくいのでもう少し突っ込んで解説します。
今回の処理で一番メインの処理は変換サーバの処理です。変換サーバは大きなあるデータを別のデータに変換する事をやってくれるのですが、これが非常に重たい。
そこでAPIサーバからジョブサーバに処理を委託した後、APIサーバはサービスサーバに受付が完了した情報を発行します。ジョブサーバには処理がたまっているので、変換サーバがひとつずつ処理し、結果をまたAPIサーバに返し、APIサーバがそれをサービスサーバに通知して一連の処理が完了します。これを繰り返しているのです。この時変換サーバの処理が重たくても、一時的にAPIサーバが受付完了をサービスサーバに発行するところがキモであり、レスポンス待ちを出来る限り発生させないところが一番オイシイところです。
まだわかりにくい?わかりにくいですよね(笑)
現実のものに例えば方がわかりやすいので、この仕組みを銀行を使って説明します。
銀行へ言って、窓口で口座を開設する時の事を思い浮かべて下さい。まずいきなり窓口へ行く事はなく、最初に整理券を取るでしょう。このときに既にお客さん10人待っていれば11人目になりますね。しばらく待って、整理券に記載された番号を呼ばれれば窓口へ出向き、口座開設の手続きをする。
まさにこの仕組みとそっくりなんです。
- 整理券を取る: APIサーバジョブサーバへ作業依頼
- しばらくまつ: ジョブサーバで順番待ち
- 番号が呼ばれ窓口で口座開設の手続きをする: 変換サーバが実際の処理をする
そしてここからが面白いところ。
実際に銀行の窓口は一つだけという事はなく、複数の窓口が設置されていたり、依頼内容によって窓口が異なっている場合が多々あります。
例えば預金口座の開設と借入の為の窓口は別だったりします。また、借入を希望する人が多いと予想される場合はローン申込の窓口を増やしたり、ニッチな要求かつクリティカルな要求(盗難や紛失など)は単独で窓口を設けていたりますよね。
変換サーバ(というかWorker Application Code)はまさにこれと同じであり、窓口を増やしたり減らしたりする事が出来ます。
例えばよくある最初に発生する膨大なスイッチングコストの発生時期だけ大量にWorker Applicationを起動させ処理し、落ち着いたら減らしてマシンリソースを節約。なんて事が可能です!
新機能を取り入れた一部の人にベータ公開したい時や、特急料金を払ってでも速く要求に答えて欲しいときなど、実際のビジネスシーンにおける様々な個別要件を実際にWorker Application Codeとしてあらかじめシステムとして組み込める事がとてもやりやすい。また、突発的に発生した特殊要件についても既存のClient, Worker処理を止めたりする事なく追加したり取り出したり出来るところも簡単に出来るようになっています。
このようにGearmanは大変手軽に組み込めて、各処理は自分の好きなプログラミング言語でかけるというとても素敵なプラットフォームというわけです。非同期に大量のデータを分散処理したいなら、まず検討してよいプラットフォームといってよいと思います。
参考までに現在の構成は、
ジョブサーバ: 1CPU
Client Application: 1CPU
Worker Applications: 6CPU
ですが、大変安定しています。既にジョブサーバはリブート無しで10万件近いジョブを処理しましたが至って安定しています。
非同期処理や分散処理に興味ある方、Gearmanは手軽でオススメですよ!
2010年1月12日火曜日
ライブのお知らせと年始のご挨拶
遅れましたがあけましておめでとうございます。
今年も頑張っていきますので皆様どうぞよろしくお願い致します。
さて、昨年末から新しいビジネスの立ち上げ準備をしてまして、
年末年始以降平日夜間と休日をほぼ全てそのビジネスに費やしています。
忙しいけど充実してるというか。もちろん不安だらけですけど。
プログラムを書くだけではなく、
インフラ作ったり、
営業資料作ったり、
プレゼン資料作ったりしてます。
これぞスタートアップという感じです!
また、仕事だけではなく、今月は中洲のGate's 7でライブも決定(ドラマーとして参加します!)
してますし年明け早々から大忙し。
なかなかまとまった練習する時間が取れないなか、メンバー全員気合入れて頑張ってます!
ライブの詳細は以下の通りです。
「浅野孝己 with Musicians Live」前回同様元ゴダイゴの浅野さんと共に出演します!
会場: Gate's 7 - http://www.gates7.com/
日時: 2010/1/23(土)
開場: 17:30
開始: 18:00
料金:
前売 - 2,500円 + 要ワンドリンク
当日 - 3,000円 + 要ワンドリンク
地図: http://maps.google.co.jp/maps/ms?hl=ja&ie=UTF8&lr=lang_ja&msa=0&msid=106208952651823253671.00046825662c21fa753d9&ll=33.593532,130.406087&spn=0.010313,0.014913&z=16
[メンバー]
杉山 隆志 : Vocal
森 俊英 : Guitar
鳥越 邦生:Guitar
石井 宏昌 : Bass
春田 弘樹: Keyboard Synthesizer
村上 史子:Chorus
迫田 孝太 : Drums
会場のテーブル・椅子も広く、各種ドリンク・軽食が用意されており、
音楽を楽しみながらお食事や歓談する事が可能です。
デートやお友達とのディナー、とりあえずのかけつけ一杯(?)にも最適ですヨ!
是非遊びに来て下さい!
それでは、本年もどうぞよろしくお願い致します。
今年も頑張っていきますので皆様どうぞよろしくお願い致します。
さて、昨年末から新しいビジネスの立ち上げ準備をしてまして、
年末年始以降平日夜間と休日をほぼ全てそのビジネスに費やしています。
忙しいけど充実してるというか。もちろん不安だらけですけど。
プログラムを書くだけではなく、
インフラ作ったり、
営業資料作ったり、
プレゼン資料作ったりしてます。
これぞスタートアップという感じです!
また、仕事だけではなく、今月は中洲のGate's 7でライブも決定(ドラマーとして参加します!)
してますし年明け早々から大忙し。
なかなかまとまった練習する時間が取れないなか、メンバー全員気合入れて頑張ってます!
ライブの詳細は以下の通りです。
「浅野孝己 with Musicians Live」前回同様元ゴダイゴの浅野さんと共に出演します!
会場: Gate's 7 - http://www.gates7.com/
日時: 2010/1/23(土)
開場: 17:30
開始: 18:00
料金:
前売 - 2,500円 + 要ワンドリンク
当日 - 3,000円 + 要ワンドリンク
地図: http://maps.google.co.jp/maps/ms?hl=ja&ie=UTF8&lr=lang_ja&msa=0&msid=106208952651823253671.00046825662c21fa753d9&ll=33.593532,130.406087&spn=0.010313,0.014913&z=16
[メンバー]
杉山 隆志 : Vocal
森 俊英 : Guitar
鳥越 邦生:Guitar
石井 宏昌 : Bass
春田 弘樹: Keyboard Synthesizer
村上 史子:Chorus
迫田 孝太 : Drums
会場のテーブル・椅子も広く、各種ドリンク・軽食が用意されており、
音楽を楽しみながらお食事や歓談する事が可能です。
デートやお友達とのディナー、とりあえずのかけつけ一杯(?)にも最適ですヨ!
是非遊びに来て下さい!
それでは、本年もどうぞよろしくお願い致します。
ラベル:
blog life business
2009年11月27日金曜日
「ソフトウェアビジネス カンファレンス2009」が開催されます!
僕の住む町福岡がシリコンバレーになるかもしれない!ソフトウェアビジネスカンファレンス2009が開催されます!
ソフトウェアでビジネスしていこうと考えているエンジニア、経営者、起業を考えている方必見だと思います。
間違いなくよい刺激になりそうで、そしてすぐに行動を起こす気になるでしょう。
参加費も無料!いかなきゃ損です!
と言いながら...
残念ながらその日は僕は別のセミナーが入っており、参加出来ません(泣)
みなさん話を聞かせてくださいね!
カンファレンスのURLはこちら
http://sbc.mogura.co.jp/
というわけで、以下ソフトウェアビジネスカンファレンス運営者からのメッセージです。
----------------------------------------------------------
来る12月5日、九州産業大学(天神よりバスで15分)にて、
ソフトウェアビジネスカンファレンス2009を開催致します。
東京や大阪から著名な講演者の皆様をお呼びして、
弁護士、会計士、投資家、起業家などの立場から
ソフトウェアのビジネスについて様々なお話を伺います。
講演者として、
Winny弁護団の壇俊光氏、有名ブログIsologueの著者で、
株式会社はてなの顧問を勤めている会計士の磯崎哲也氏、
ベンチャー投資家として多数の実績をあげている本間真彦氏、
起業家でワイアード株式会社の石原明彦氏らを予定しています。
開催概要とプログラムは以下の通りです。
http://sbc.mogura.co.jp
・日時: 2009年12月5日 10:00~18:00
・場所: 九州産業大学 (博多駅や天神駅より約15分)
・費用: 無料 (懇親会は有料)
・プログラム:
10:15-11:00 壇俊光 - 弁護士 (北尻総合法律事務所)
11:15-12:00 磯崎哲也 - 公認会計士 (磯崎哲也事務所)
13:00-13:45
本間真彦 - コアピープル・パートナーズ 代表パートナー
(モデレーター: Terry's & Company 佐々木宏)
14:00-14:45 矢作 基 - 株式会社クエステトラ CMO
15:15-16:00 石原明彦 - ワイアード株式会社 代表取締役社長
16:15-17:00 ライトニングトーク
17:10-18:00 LT&抽選会&閉会式 (OSC2009Fukuokaと合同)
http://sbc.mogura.co.jp
経営者、起業したい方に限らず、ソフトウェアビジネスに
関わる全ての人に、ぜひ参加して頂きたいと考えています。
日本のソフトウェア業界は、これまで受託開発中心のビジネスに
偏り、ビジネスよりも技術面ばかりが注目されていました。
ソフトウェアが真価を発揮するのは、社会にイノベーションを
起こすときです。しかしビジネスに注目しなければ、
イノベーションは起こせません。
本カンファレンスは、オープンソースカンファレンス 2009
Fukuokaの一部として開催されます。
皆様のご参加を心よりお待ち申し上げます。
http://sbc.mogura.co.jp
お問い合わせは以下のメールアドレスまでお送りください。
sbc2009@mogura.co.jp
ソフトウェアビジネスカンファレンス運営者、新井俊一、杉山隆志
ソフトウェアでビジネスしていこうと考えているエンジニア、経営者、起業を考えている方必見だと思います。
間違いなくよい刺激になりそうで、そしてすぐに行動を起こす気になるでしょう。
参加費も無料!いかなきゃ損です!
と言いながら...
残念ながらその日は僕は別のセミナーが入っており、参加出来ません(泣)
みなさん話を聞かせてくださいね!
カンファレンスのURLはこちら
http://sbc.mogura.co.jp/
というわけで、以下ソフトウェアビジネスカンファレンス運営者からのメッセージです。
----------------------------------------------------------
来る12月5日、九州産業大学(天神よりバスで15分)にて、
ソフトウェアビジネスカンファレンス2009を開催致します。
東京や大阪から著名な講演者の皆様をお呼びして、
弁護士、会計士、投資家、起業家などの立場から
ソフトウェアのビジネスについて様々なお話を伺います。
講演者として、
Winny弁護団の壇俊光氏、有名ブログIsologueの著者で、
株式会社はてなの顧問を勤めている会計士の磯崎哲也氏、
ベンチャー投資家として多数の実績をあげている本間真彦氏、
起業家でワイアード株式会社の石原明彦氏らを予定しています。
開催概要とプログラムは以下の通りです。
http://sbc.mogura.co.jp
・日時: 2009年12月5日 10:00~18:00
・場所: 九州産業大学 (博多駅や天神駅より約15分)
・費用: 無料 (懇親会は有料)
・プログラム:
10:15-11:00 壇俊光 - 弁護士 (北尻総合法律事務所)
11:15-12:00 磯崎哲也 - 公認会計士 (磯崎哲也事務所)
13:00-13:45
本間真彦 - コアピープル・パートナーズ 代表パートナー
(モデレーター: Terry's & Company 佐々木宏)
14:00-14:45 矢作 基 - 株式会社クエステトラ CMO
15:15-16:00 石原明彦 - ワイアード株式会社 代表取締役社長
16:15-17:00 ライトニングトーク
17:10-18:00 LT&抽選会&閉会式 (OSC2009Fukuokaと合同)
http://sbc.mogura.co.jp
経営者、起業したい方に限らず、ソフトウェアビジネスに
関わる全ての人に、ぜひ参加して頂きたいと考えています。
日本のソフトウェア業界は、これまで受託開発中心のビジネスに
偏り、ビジネスよりも技術面ばかりが注目されていました。
ソフトウェアが真価を発揮するのは、社会にイノベーションを
起こすときです。しかしビジネスに注目しなければ、
イノベーションは起こせません。
本カンファレンスは、オープンソースカンファレンス 2009
Fukuokaの一部として開催されます。
皆様のご参加を心よりお待ち申し上げます。
http://sbc.mogura.co.jp
お問い合わせは以下のメールアドレスまでお送りください。
sbc2009@mogura.co.jp
ソフトウェアビジネスカンファレンス運営者、新井俊一、杉山隆志
2009年9月14日月曜日
ソフトウェアビジネスラボ第三回行ってきました
ソフトウェアビジネスラボ第三回勉強会に行ってきました。
ソフトウェアビジネスラボ第三回
今回のテーマは「受託開発における契約」。
現在フリーランスプログラマーの自分にとってはドンピシャな勉強会ktkr!と思いました。
内容は本当に面白かったです。
主催の新井さんの講演、大阪から今回の為に来てくださった弁護士の壇さんの講演共に大変勉強になりました。
新井さんの資料はこちら
あなたが知らないかもしれない受託開発の基礎知識
さて、この新井さんの最後のスライドは要チェックです。
忘れていませんか?
誰に価値を提供し、誰からその対価を受けとるのか。
一言で言うと、
「お客を大事にしましょう」
という事です。
「お客はあなた(貴社)を信頼して発注してくれた」
わけですから。
仮に自分が逆の立場だったとして、適当な仕事されたんじゃたまらないですよね。
で、ここまでは受託開発も客商売である以上当たり前の話。
この当たり前の気持をもってプロジェクトに挑んでも、
うまくいかない場合があったり、大変な状況に陥いってしまう事はある。
その時に、お互いの身を守る為の契約や見積や仕様ってわけです。
ごくごく当然の事なんですが、まだまだきちんと出来てなかったなと反省するいい機会になりました。
これからも精進して参りたいと思います。
ソフトウェアビジネスラボ第三回
今回のテーマは「受託開発における契約」。
現在フリーランスプログラマーの自分にとってはドンピシャな勉強会ktkr!と思いました。
内容は本当に面白かったです。
主催の新井さんの講演、大阪から今回の為に来てくださった弁護士の壇さんの講演共に大変勉強になりました。
新井さんの資料はこちら
あなたが知らないかもしれない受託開発の基礎知識
さて、この新井さんの最後のスライドは要チェックです。
忘れていませんか?
誰に価値を提供し、誰からその対価を受けとるのか。
一言で言うと、
「お客を大事にしましょう」
という事です。
「お客はあなた(貴社)を信頼して発注してくれた」
わけですから。
仮に自分が逆の立場だったとして、適当な仕事されたんじゃたまらないですよね。
で、ここまでは受託開発も客商売である以上当たり前の話。
この当たり前の気持をもってプロジェクトに挑んでも、
うまくいかない場合があったり、大変な状況に陥いってしまう事はある。
その時に、お互いの身を守る為の契約や見積や仕様ってわけです。
ごくごく当然の事なんですが、まだまだきちんと出来てなかったなと反省するいい機会になりました。
これからも精進して参りたいと思います。
登録:
投稿 (Atom)