SSブログ
アーキテクト ブログトップ
前の10件 | -

なぜspモードはIPアドレスの紐付を行っていたかを考えてみる [アーキテクト]

2011年12月20日にdocomoのspモードで、「メールアドレスの置き換え」という障害が発生しました。
本当の原因等はメディアにお任せいたします。
(例えばITProなどはいかがでしょうか

どうやら原因は、ドコモのセンター側でIPアドレスとメールアドレスを紐付していたが、センター側が高負荷状態となり紐付に不整合が発生してしまった・・ということ。

ということで、「なんでIPアドレスを紐付たのだろう??」と勝手に考えてみるのが本稿の趣旨。

まずはじめに携帯のメールと通常のSMTP(POP/IMAP)メールとの違いを把握してみたい。
通常のメール(POP/IMAP)はメールの着信確認を、クライアントサイドから行う。1分とか極端に短い確認間隔を設定しない限り、送信後ほぼリアルタイムに着信することはない。
それに対して携帯のメールは、センター側から携帯端末にメールをプッシュすることで(通信可能状態にあれば)ほぼリアルタイムに着信する(と聞いたことがある)。このリアルタイム性がうけたのか携帯のメールってほぼチャットのように利用されていることがありますよね。

さて、ここでどうやって携帯端末にプッシュするか、その仕組みを考えてみたい。仮定として、利用するネットワークは純粋なIPネットワークであること。
センターからプッシュするためには送信したいメールアドレスのIPアドレスを知らなければならない。端末側からのメール着信確認のアクションがない以上、何らかのかたちで端末側のIPアドレスを把握しておく必要がある。
ここでおそらくspモードではメール->IPアドレスに変換するダイナミックDNSのような仕組みを作り上げたんでしょう。端末側のIPアドレスが変更された場合は自動的に変換テーブルを更新しちゃんと同期がとれていれば問題はないはずだと。

IPアドレスではなく、端末固有のIDで管理すればよかったのではないか、と私もはじめは考えたのですが2つの理由からそれはできないと考えられたものと思います。

  1. 携帯時代の「かんたんログイン」で端末固有のIDを利用していたが、この方式はセキュリティ上問題があるとされ、その利用をためらった。端末固有IDが偽装されたら・・という思いもあったかも。
  2. こちらのほうが仕組み上問題なのだが、端末固有IDをつかっても送信先を特定できない。メールアドレス->端末固有ID→IPアドレスの変換の仕組みが結局必要。


こうして今までのspモードの仕組みができあがったと・・・。

では、どうすれば今回のような問題は起きなかったのかを考えてみると・・・、意外と解決策は難しい?
なんらかの形でメールアドレス->IPアドレス変換は必要になるのはほぼ間違いない(はず)。
とはいえIPアドレスとメールアドレス変換テーブルが完全に同期する保証はないことが今回証明されている。
・・・端末ID-IPアドレスの組み合わせもセンター側で管理し、メールをプッシュする際に端末IDを送信し端末側で受信する際端末IDが異なっていたらrejectする、という案もあるかもしれない。これで99%は問題がなくなるはず。(センター側の同期は相当のことがない限り、破たんしないようなので)けれど、今回のような問題が発生することを想定し、かつ受信側でcrackされてどんな端末IDでも受け入れられる仕組みを作られたら、と思うと100%完全ではない。

 おそらく回答に近いものはAndroidのC2DMのような仕組みなんだろうな。ただ、ユーザGoogle Acountの認証Tokenのようなものがないので、そこに何か代替手段を考えないといけないのかもしれない・・・。

 今回の事故を教訓に、何か問題があっても最悪の事態にならないフェールセーフな設計を心掛けなければいけないな・・と実感しております。(それにしてももし本当にspモードを設計していたら、自分はどんな解決をしただろうか・・)


 --
 当然のことながら、ここで仮定している仕組みはspモードの本当の仕組みではありません(と思いたい・・・)。事故原因報道および私自身の想像でつくりあげた架空のものです。

nice!(0)  コメント(1)  トラックバック(0) 
共通テーマ:仕事

「システム障害はなぜ二度起きたか――みずほ、12年の教訓」 [アーキテクト]

まだご記憶の方も多いと思いますが、2011年3月にみずほ銀行で大きなシステム障害が発生しました。
発端は1つの振込用口座から・・・。技術的にはこの口座の制限値を超える振込が発生しそれを処理しきれなかったためにさまざまなところに問題が波及、大きな障害へとつながったのですが。
(技術的側面だけをみれば、「自分も経験あるなー」といったものだったりしました)

 本書でも述べているとおり、根本的な問題はみずほ経営陣のITに対する取り組み、理解のなさではないかと思います。

多くのことをコンピュータで行っている現代では、ごく小規模の企業を除いてITを利用していないところはないといってもいいと思います。現代はデータは企業の血液であり、ITシステムは頭脳・心臓となります。そのような重要な部分にかかわっている企業経営者はどれだけいるでしょうか?もちろん、ITの技術的側面を理解しろといっているのではありません。その点は専門部隊に任せればよい。しかし、今自企業のITシステムはどういったもので、どういった点が弱点なのかといったところは経営陣のレベルからしっかり理解しなければならない。その代表格がCIOの存在であり、CIOは企業の存亡にかかわるといってもいい。しかし、日本ではCIOがいない企業もあり、いたとしてもとても権限が弱いことが多い・・・。

みずほ銀行のシステム障害は公共サービスだから大きく報道されただけのことで、同様の問題は実は各企業内でも結構発生しているのではありませんか?こうした視点から本書を読んでいくと、日本の企業で何をしなければいけないのか、が見えてくるのではないかと思います。


システム障害はなぜ二度起きたか――みずほ、12年の教訓

システム障害はなぜ二度起きたか――みずほ、12年の教訓

  • 作者:
  • 出版社/メーカー: 日経BP社
  • 発売日: 2011/08/01
  • メディア: 単行本



nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

「UMLモデリングの本質 第2版」 [アーキテクト]

みなさんはUMLモデリングをプロジェクトのどの段階から行っていますか?
適用しようと思えばビジネス分析段階から採用できるのがUMLです。ただ、「アナリシスパターン」などを読んでもいまひとつぴんと来ない。実装レベルのUMLは理解できるのですが、どうして「アナリシスパターン」のようになるのか、これが実装レベルとどう関係するのか今一つ理解できずにずっと来ました。

その今までの悩みが本書「UMLモデリングの本質」で解決されました。本書では分析レベルから実装レベルまでのUMLモデリングの方法を丁寧に解説しています。1つのシステムを対象に分析から実装まで解説しているので、それぞれの関係がわかりやすい。かなりおすすめです。さすがは『本質』と銘打つだけあります。


UMLモデリングの本質 第2版  良いモデルを作るための知識と実践

UMLモデリングの本質 第2版 良いモデルを作るための知識と実践

  • 作者: 児玉 公信
  • 出版社/メーカー: 日経BP社
  • 発売日: 2011/05/26
  • メディア: 単行本(ソフトカバー)



本書に関係する書籍もまとめてみました。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

「ITアーキテクトのためのシステム設計実践ガイドVOL.3」 [アーキテクト]

もう業務的にITアーキテクト的なことはやっていないんですが、やっぱり気になり購入してしまいました。。
「ITアーキテクトのためのシステム設計実践ガイドVOL.3」
どうしても毎年購入してしまう・・・・。

今回の特集は非機能要件の設計に関するもの。この分野の要件定義をするのに苦労している方は多いのではないでしょうか。今回の特集が参考になると思います。

・・・そして、今回の非機能要件の設計を読んで、CMMIのレベル3以降の必要性がやっとわかった気がしました(遅いって・・・)別にCMMIに限ったことではないですが、組織として情報を集め基準やパターンを持っていないと非機能要件なんて定義できないよね、と実感しました。
何のために設計・開発とは関係のなさそうなことをやる必要があるのか、それを理解していてればCMMI等の取り組み方が違っただろうに。(ま、今更なんですけどね~)


ITアーキテクトのためのシステム設計実践ガイドVOL.3 (日経BPムック)

ITアーキテクトのためのシステム設計実践ガイドVOL.3 (日経BPムック)

  • 作者:
  • 出版社/メーカー: 日経BP社
  • 発売日: 2011/06/18
  • メディア: ムック





ITアーキテクトのためのシステム設計実践ガイドVOL.2 (日経BPムック)

ITアーキテクトのためのシステム設計実践ガイドVOL.2 (日経BPムック)

  • 作者:
  • 出版社/メーカー: 日経BP社
  • 発売日: 2010/06/18
  • メディア: 大型本



ITアーキテクトのためのシステム設計実践ガイド VOL.1 (日経BPムック)

ITアーキテクトのためのシステム設計実践ガイド VOL.1 (日経BPムック)

  • 作者: 日経SYSTEMS編集部
  • 出版社/メーカー: 日経BP社
  • 発売日: 2009/06/18
  • メディア: ムック



nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

「ビッグデータを征す クラウドの技術 Hadoop&NoSQL」 [アーキテクト]

ネットで検索してもらえばわかりますが、ここ数か月でHadoop関連のビジネス情報って増えましたよね。
そして非構造化データの取り扱いやデータ分散化に対応するためのNoSQLサーバも増えてきました。なかなかNoSQLを適用しなければならないケースには出会わないけれど、今後のシステムでNoSQLはRDBMSと同じくらいに重要性が増すものと考えています。そんなとき、NoSQLとはどんな特性のものか、数あるNoSQLサーバはどんな点が違うのか、そういった基礎情報は常時認識していたい。そんな欲求を満たすのがこの書籍です。
Cassandraはかなりの紙面をさいて説明しているのでそちらに興味のある方はうれしい内容です。

また今までバッチ処理していた業務システムのいくつか、特に大量データを扱う部分はもしかするとHadoopやそれに類するシステムに置き換わっていくかもしれない。いくつかのベンダーがHadoopソリューションの提供を開始しているのは業務システムのリプレースという側面があるだろう、と個人的には理解しています。
なのでこれも逃せない内容ですよ。


ビッグデータを征す クラウドの技術 Hadoop&NoSQL

ビッグデータを征す クラウドの技術 Hadoop&NoSQL

  • 作者:
  • 出版社/メーカー: アスキー・メディアワークス
  • 発売日: 2011/04/22
  • メディア: 大型本



こんな本も出ていますので、注目!!


NoSQLデータベースファーストガイド

NoSQLデータベースファーストガイド

  • 作者: 佐々木 達也
  • 出版社/メーカー: 秀和システム
  • 発売日: 2011/04
  • メディア: 大型本



Hadoop徹底入門

Hadoop徹底入門

  • 作者: 太田 一樹
  • 出版社/メーカー: 翔泳社
  • 発売日: 2011/01/28
  • メディア: 大型本



Oracle公式のJDK7公式サポートプラットフォーム発表 [アーキテクト]

OracleからJDK7の公式サポートプラットフォームが発表になりました。

まず気づいたのがMacOXが入っていないこと。まあ、商用サポートを期待しているわけではない(つまり個人利用)なのでOpenJDKでも動いてくれればそれでOKかな~。

そしてそのあと気づき、ちょっと問題かな~と思ったのは仮想環境(の一部)がサポート対象外であること。
OracleVMは当然サポートするのですが、一番メジャーなVMwareやMS Hypervisorが対象外なんですよね~。

商用サポートを期待しているところがどれだけあるか・・・てことになるとは思うけどやっぱり気になる。
最悪VM上では動かないようになる・・・・ってこともあるのかな~(ないとは思うけど)。その時はOpenJDKか・・・。いや・・・ここはWindowsAzureやその他Javaをサポートするクラウドに移行しろってことか。
(あ、IaaSとかはJavaサポートしてくれないのか??)

(というかOpenOffice同様OracleからJavaを切り離してほしいと切に願っております・・・)




で、最後に気が付いた・・・。JavaプラグインとかJavaWebStartってWindows以外サポートしなくなっていくのかな~。Firefoxならサポートするようですけどね。FXトレーディングとかJavaWebStartを使っているところもあったからな~、どうなることやら。(個人的にはMacに切り替えよう・・・という野望が・・・)


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

「システム設計教科書」 [アーキテクト]

数年前まではどちらかといえば工学的なアプローチで開発を進めていたのですが、最近はアートなプロジェクトで作業しているのですっかり忘れてしまった『システム設計』。ちょっと勉強し直しの意味もあって読んでみました。

前半半分はソフトウェア開発に携わる若手エンジニアに読んで欲しい内容ですね。マネージャーにならないとしても責任ある開発をしていくには必ず必要です。
後半は・・・業務システムを長年携わってきた私でもあまり細かいところは気にしたことないなー、、、という内容でした。気にしたことがない事自体が問題だったのかもしれませんけど、知らなくてもなんとかなったんだよな~。

あまり役割分担がない今のほうがこうした内容をちゃんと知らないといけないかもしれない。


総合的に言うと・・・記載されている内容がちょっと古いか??という印象があります。今の主流ってオブジェクト指向じゃないかな・・・。構造化設計等の内容を知っていて損はないけどね。とはいえ、日本の業務システム開発の主役ってまだまだこうした古いものなのかもしれない(新しいものはリスクがあるとかいって変えようとしないし)。

いずれにしても内容的にはソフトウェアサイエンス以外の学校からシステム開発に携わることになった若手エンジニア向けな内容であることには間違いないと思います。
(ソフトウェアサイエンス系の人たちってこの本の内容を学校で勉強してくるんですよね??)


システム設計教科書―「分析」「設計」から「評価」「管理」まで (I・O BOOKS)

システム設計教科書―「分析」「設計」から「評価」「管理」まで (I・O BOOKS)

  • 作者: 赤間 世紀
  • 出版社/メーカー: 工学社
  • 発売日: 2011/01
  • メディア: 単行本



nice!(0)  コメント(1)  トラックバック(0) 
共通テーマ:仕事

Domain Driven Designの日本語訳が出るらしい・・・ [アーキテクト]

Amazonの近刊をみていたら「ドメイン駆動設計(Domain Driven Design)」の日本語訳が出るらしいです。

原著は分厚かったのでそれを反映してか5000円超(驚)。原著を持っているんだけど、買うかどうか悩むなー。
それにしても日本語訳が出るまでにずいぶんと時間がかかりましたね。

「Domain Driven Design」
もう3ヶ月以上もかけて読んでいる本ですが、いかんせん厚い・・・。なかなか進みません。
そんなとき、オージス総研でよくまとめたページがあることを知りました。このページをみると本の大筋はわかると思います。私もDDD難民なようですね。
私も最初のほうを忘れてきたのでいったん読むのを中止し、このページを見てから再度読み直しをしたいと思います。




エリック・エヴァンスのドメイン駆動設計

エリック・エヴァンスのドメイン駆動設計

  • 作者: エリック・エヴァンス
  • 出版社/メーカー: 翔泳社
  • 発売日: 2011/04/09
  • メディア: 大型本



nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

「ITアーキテクトのやってはいけない vol.2 」 [アーキテクト]

以前紹介した「ITアーキテクトのやってはいけない」の続編的位置づけなのが今回紹介する「~ vol.2」です。

最初のものは比較的ソフトウェアプロセス全般をカバーしていましたが、今回は”クラウド””仮想化”そして”スマートフォンやWebのUI”に多くのページを割いています。そしておまけのような感じで”業務分析・要件定義”と”基本設計”・・・。

”業務分析・要件定義”のアンチパターンで、『業務機能のサイズをばらばらにしてはいけない』というのがあるのですが本書籍は『記述レベルがばらばら』という印象です。最初に”クラウド”や”仮想化”といった細かいレベルを紹介していてそのあと業務分析・要件定義、基本設計がくる構成にも違和感。

まあ、アンチパターンを並べているものなのでいいんですけどね。
”クラウドや”仮想化”は登場してまだ時間が経過しておらず、インテグレーションするこちらも多くの経験がないだけにアンチパターンがいくつも掲載されている本書はとても参考になると思います。


ITアーキテクトのやってはいけない vol.2 (日経BPムック)

ITアーキテクトのやってはいけない vol.2 (日経BPムック)

  • 作者:
  • 出版社/メーカー: 日経BP社
  • 発売日: 2010/11/17
  • メディア: ムック








nice!(1)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

「[Web開発者のための]大規模サービス技術入門」 [アーキテクト]

以前紹介した「[24時間365日] サーバ/インフラを支える技術」の続編的な本「[Web開発者のための]大規模サービス技術入門」。

以前の「サーバ/インフラを~」を紹介したとき、『あとはハイパフォーマンスWeb~を読めばばっちり・・・』なんて言っていましたが、ぜんぜんばっちりじゃありません。あまりにも自分が浅はかだったことが本書を読んでよくわかりました。

なるほどな~、大規模システムってこういうところに注力していくんだ~という内容満載です。最近のITはハードとソフトを分離していく(互いに抽象化していく)動きがありますが、本当に大規模対応になると両者は密接な関係になっていくんですね。正しくはハード/OS/ソフトが密接に絡み合っていく。ハードやOSのことをよく知らないと本当にいいソフトウェア(というかシステム)は作れないんだ・・・と痛感いたしました。

大規模システムなんて作らないから関係なーいと思う方もいらっしゃるかもしれませんが、これからの時代はソフトウェアがどんどん凝集化されて嫌でも大規模化していくんじゃないかな~と感じています。まだまだ大規模システムというのはごく一部かもしれませんが、そんな時だからこそキャッチアップしやすいとも言える。
ぜひ本書で大規模システムとはどんなものか、どうやって作っていくのかを感じ取ってほしいと思います。


[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)

[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)

  • 作者: 伊藤 直也
  • 出版社/メーカー: 技術評論社
  • 発売日: 2010/07/07
  • メディア: 単行本(ソフトカバー)




[24時間365日] サーバ/インフラを支える技術
大規模なWebサイトを24時間365日運用するためのインフラを構築したい人必見。
はてなやKLabが実際に採用しているサーバ/インフラのスケーラビリティ・アベイラビリティ確保のための技術を惜しみなく紹介している、そんな本です。
普段はソフトウェア開発を主としている私自身も久々に、「あ~やってみて~」と思う内容でした。
どこかで活用できるようなサービスを立ち上げることができればいいのですが。
この本ではWebサーバ、DBサーバ、ファイルサーバ、DNSについて紹介しています。最近のWebサイトであればこれだけ紹介されていれば十分でしょう。

インフラ担当者にもWebアプリケーション開発者にも絶対お薦めです。

あとは「ハイパフォーマンスWebサイト」でコンテンツの中身を改善すればバッチリ。

[24時間365日] サーバ/インフラを支える技術 ‾スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)

[24時間365日] サーバ/インフラを支える技術 ‾スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)

  • 作者: 安井 真伸
  • 出版社/メーカー: 技術評論社
  • 発売日: 2008/08/07
  • メディア: 単行本(ソフトカバー)

ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール

ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール

  • 作者: Steve Souders
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2008/04/11
  • メディア: 大型本


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:仕事
前の10件 | - アーキテクト ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。