クラウド時代のSW開発スタイル
「Twitterの衝撃 140文字がビジネスからメディアまで変える」を立ち読みした。
TwitterがRuby on Railsをフロントエンドで使っているのは知っていたが、メッセージの非同期処理(MQ)でScalaを使って性能改善したという説明があった。
気になったのでメモ。
【参考】
まだブロ: [Scala] Twitterの移行について
twitterがrubyからscalaへスイッチ - huixingの日記
第7回 関数脳のつくり方 First Season - 刺激を求める技術者に捧げるScala講座:ITpro
ScalaはJavaVM上で動く関数型言語。
TwitterがScalaをどこでどのように使っているのか、正直理解できていない。
しかし、大量のデータをさばく処理に対し、関数型言語を使ってMapReduceアルゴリズムで高速化を図っているのではないか、と推測している。
そのためにScalaを使ったのではないか、と。
上記の記事や本によれば、Scalaによるチューニングは大成功だったらしいから、そのノウハウが知りたい所。
Twitterは当初はRuby on Railsでアジャイルに実装しているという印象があった。
しかも、サーバーはクラウドのサービスを利用している。
#Twitter のホスティングは NTT Americaとのこと(コメントを受けて修正)
つまり、サーバー運用をアウトソーシングしているので、スケールアップしやすく、初期投資のリスクも低い。
クラウドというサービスは、ベンチャー企業にとってとても扱いやすいビジネス環境なのかもしれない。
今後のWebシステムの開発スタイルはこんな感じ。
フロントエンドはRailsやSeasarでサクサク作り、バックエンドやバッチ処理は関数型言語でMapReduceアルゴリズムをフルに使って高速化する。
そして、サーバー運用はクラウドのサービスを使ってアウトソーシングし、初期投資のリスクを抑えて、負荷が高まればスケールアップすればいい。
スクリプト言語、関数型言語、そしてクラウドが、今後のWebシステム開発のキーワードになるかもしれない。
| 固定リンク
「プログラミング」カテゴリの記事
- Ruby技術者認定試験の感想(2020.05.08)
- 前処理大全の良いところ~SQLとRとPythonで対比できる(2019.07.10)
- WinSCPでトンネリングする方法のリンク(2018.09.09)
- 仕様書にもExcel脱却が求められている(2017.12.23)
- ソフトウェアの複雑性は本質的な性質であって偶有的なものではない(2017.05.05)
「ソフトウェア」カテゴリの記事
- マインドマップをFreeplaneに乗り換えた(2020.11.21)
- ソフトウェアの政治的影響力とは何だろうか(2020.07.07)
- DevOpsがアジャイル開発を促進する(2020.06.11)
- AzureクラウドデザインパターンとAWSクラウドデザインパターンのリンク(2020.06.09)
- Ruby技術者認定試験の感想(2020.05.08)
「経営・法律・ビジネス」カテゴリの記事
- みんなのPython勉強会#65の感想~社会変革の鍵はIT技術者にあるのかもしれない(2021.01.14)
- IPAがDXのパターン・ランゲージを公開している~新しい組織文化が新しい経営戦略を生み出す(2020.12.05)
- 組織は記憶能力を持つのか~トランザクティブ・メモリーという概念(2020.11.23)
- 手段を目的化するのは日本人の病(2020.11.07)
- 問題解決アプローチを見極める『クネビンフレームワーク』のメモ(2020.09.02)
コメント
Twitter のホスティングは NTT America ですよ。
http://www.eh.nttamerica.com/news/press_releases/release.cfm?id=92
NTT はこれをもっと誇って良い気がしてますが。
投稿: youhei | 2009/11/29 22:26
◆youheiさん
ご指摘ありがとうございました!
投稿: あきぴー | 2009/11/30 00:06