タグ

アーキテクチャに関するtridentfieldのブックマーク (9)

  • bitlyでの分散システム構築から学んだこと

    5月に開催されたBacon Conferenceで,bitlyのアプリケーション開発リーダのSean O’Connor氏は,毎月600億クリックを処理する分散システムの開発を通じてbitlyの開発者たちが学んだ,最も価値ある教訓について説明した。 分散システムとは何か? 分散システムを定義する3大特性は,氏によれば,Wikipediaで簡単に見付けることができる。 コンポーネントノードの真の並行性。これによってノード間の同調に関連するコストと複雑性が発生する。 共通クロックの不在。このため,異なるノードで発生したイベントを時間順に並べることは不可能になる。 障害の独立性。これはノード障害がシステム内の他のノードに影響を与えない,という能力として理解されるべきだ。 従って分散システムの構築では,これらの特性を扱うことを目標にする必要がある。 ただし氏の意見として,システムの分散的特性に起因す

    bitlyでの分散システム構築から学んだこと
  • ITの地殻変動はどこで起きているのか~アーキテクチャ設計技術にクラウドが必須になった時代 - プログラマの思索

    2014年になって、ITの地殻変動がどこに起こっているのか、を考えてみる。 #ラフなメモ書き。 【1】最近感じることは、Webアプリをプログラミングするアプリケーションエンジニアよりも、サーバー基盤を構築するインフラエンジニアの方が目立つというか輝いて見える時が多い。 何故なのだろう? また、先月の日経BP主催のITアーキテクト カンファレンスでは、エンタープライズシステムの構築に携わるITアーキテクトを対象にしているが、その内容はすべて、クラウドがキーワードだった。 DOAやOOAは全く含まれていない点が衝撃だった。 ITアーキテクト カンファレンス 2013 最近の流れを見ると、アーキテクチャ設計の技術では、DOAやOOAは既に古い技術であり、クラウドが席巻しているように見える。 【2】最近のバズワードである「クラウド」には、否定的な意見を持つ人も多い。 IT歴史の延長線上にあるだけ

    ITの地殻変動はどこで起きているのか~アーキテクチャ設計技術にクラウドが必須になった時代 - プログラマの思索
  • ブラウザってどうやって動いてるの?(モダンWEBブラウザシーンの裏側)

    どうも、鈴木です。 さて、前回は vim の使用法というじつに低レベルレイヤの出身者的な記事を書きましたが、 今回も懲りずに低レベルのお話しをしたいと思います。 というのも、先日「ブログ書くのめんどくさいよぅ」と駄々をこねていたところ、あまりにレガシーすぎる HTML/CSS/JavaScript 仕様や Flash や Silverlight といったプロプライエタリなリッチコンテンツ用プラグインに日々苦しめられている気弱く善良な一介の WEB プログラマにすぎない我々の希望の星であり、そして同時に新たな巨大クソレガシーの萌芽でもある HTML5 が、いかにイケてないのではなくイケているのであるかを盛んに啓蒙するサイトである HTML5 Rocks (http://www.html5rocks.com/) に、"How Browsers Work" というとても楽しい記事があるのを、我が

    tridentfield
    tridentfield 2011/09/06
    この記事はんぱねぇ!!!!
  • Facebookが大規模スケーラビリティへの挑戦で学んだこと(前編)~800億枚の写真データとPHPのスケーラビリティ問題

    Facebookが大規模スケーラビリティへの挑戦で学んだこと(前編)~800億枚の写真データとPHPのスケーラビリティ問題 全世界で3億人を超える会員を抱え、世界最大のSNSとなったFacebook。同社の巨大なシステムは、3つのデータセンターにある約3万台のサーバと、PHPC++、Memcache、MySQLなどのソフトウェア群によって支えられています(同社のデータセンターの巨大さは、記事「3億のユーザーを抱えるFacebookのデータセンター。移動は自転車、希望は100Gbイーサネット 」を参照)。 同社の技術担当バイスプレジデント Jeff Rothschild氏は、Facebookが実現している大規模なスケーラビリティを、いかにしてこれらのソフトウェアで実現しているのか、10月8日に米カリフォルニア大学サンディエゴ校で行ったセミナー「High Performance at Mas

    Facebookが大規模スケーラビリティへの挑戦で学んだこと(前編)~800億枚の写真データとPHPのスケーラビリティ問題
  • 階層化アーキテクチャと依存性注入・依存性逆転:CodeZine

    .NET 1.0のベータ1から.NET Frameworkに従事してきた.NET開発のエキスパートで、アプリケーションのアーキテクチャ作成と設計と開発で7年以上の経験がある。アジャイルプラクティスと実際的なビヘイビア駆動開発(BDD)テクニックを通じてチームの成功を支援する独立コンサルタントとして活躍している。BDDを.NETに応用する記事をVisual Studio Magazine、DevX、MSDNに寄稿。ポッドキャスト/スクリーンキャストとして人気のある.NET Rocks!とDNRTVに登場したことがあり、実際のデザインパターンというトピックについてMicrosoftのためのウェブキャストを配信。MSDN Canada Speakers BureauおよびMicrosoft Most Valuable Professional(MVP)のメンバ。自分のブログも継続的に更新中。

  • ソフトウェアアーキテクチャって何なの?(前編) ― @IT

    ソフトウェアアーキテクチャって何なの?(前編):The Rational Edge(1/3 ページ) The Rational Edgeより:ソフトウェアアーキテクチャという比較的新しい分野について概説する。今回はシリーズの第1弾という位置付け。この分野のキーワードを説明し、優れたデザインのアーキテクチャが、導入された環境にどのように寄与するのかを探っていく。 ソフトウェアへの依存度が高まっていることに疑問の余地はない。ソフトウェアは、複雑な航空管制システムだけでなく、かなり普及した携帯電話にも絶対欠かせない要素だ。実際、eBayやAmazonといった企業など、われわれが当然のように思っている多くの技術革新は、ソフトウェアがなければ存在していなかった。金融、小売り、公営企業といった従来の組織でさえも、ソフトウェアに大きく依存しているのだ。現代においては、ソフトウェアビジネスに全く関与してい

    ソフトウェアアーキテクチャって何なの?(前編) ― @IT
  • @IT:Databaseフォーラム全記事インデックス オラクルパーティショニング

    Databaseフォーラムに掲載されている全記事にアクセスできるインデックスです。また、@ITの各フォーラムにあるデータベース関連記事も掲載しています。インデックスは記事の追加とともに拡充していきます。

  • koyachiの日記 - Joshua Schachter(del.icio.us)による大規模アプリケーション構築の注意点

    del.icio.us/tag/del.icio.usを眺めていたらFlickrのときみたいに面白い資料を見つけたの紹介します。 Things to look out for when building a large application.というタイトルでサーバーサイドの管理等の話が中心かと思って読んでいたらそれ以外のインターフェース、実装すべき機能、spam対策、アプリケーションを如何に広めるかといった話にも触れていて面白いです。 以下にまとめてみました。 スケーリング 早期の最適化を避ける。SQLでスケーリングするのではなく、データを複数マシンに分散させる方法を考慮すべき。SQLプロファイリング重要。Nagiosがお勧め。 タグはSQLと相性がよくない。インデックシングの仕組みを理解し、その方針を決定する。最初の数ページに限定すれば小規模で高速なインデックスを保てる。 Apache

    koyachiの日記 - Joshua Schachter(del.icio.us)による大規模アプリケーション構築の注意点
  • ITアーキテクトに必要な3つの視点

    「ソリューション」を設計するITアーキテクト 私が最初にこの業界での「アーキテクト」という言葉に接したのは、1990年代前半に米国ユニシス社に行ったときでした。そこで初めて「チーフ・アーキテクト」という肩書の人間と会ったのです。その人の仕事は、ユニシスの提供する情報システムパッケージ全体のグランドデザインを決めることでした。 メインフレームの時代だと、アーキテクチャの重要な部分はハードやOSなどのプラットフォームにビルトインされており、その上にアプリケーションを実装すればソリューションということができました。しかしオープン時代になってプラットフォームも選択肢が増え、C/Sでどのような機能分割をするべきかとか、そのときどきのハードやソフトの特性に合わせてソリューション設計の最適化を考える人間が必要になりました。 私自身も、こうした米国ユニシスで策定されたアーキテクチャを日に導入し、日

    ITアーキテクトに必要な3つの視点
  • 1