ブックマーク / codezine.jp (64)

  • Webアプリで起きるクライアントサイドの性能劣化パターンとその改善チューニング

    連載は、パフォーマンスを主な対象としてシステム開発・運用の改善や設計を行うNTTデータのコンサルタントチーム「まかせいのう」のメンバーが、業務での体験やそこから得た知見を共有する『週刊まかせいのう』の記事を編集し転載するものです。今回は、クライアントサイド(Webブラウザ)の処理性能を劣化させるパターンと、それを改善し性能を向上させるチューニング方法を紹介します。 遅延原因がクライアント側にある場合の2つのパターン いわゆる「性能が出ない」「画面がもっさりして処理が遅い」という性能問題が発生した場合、必ずどこかに遅延を発生させているコンポーネント、いわゆる「ボトルネック」が存在します。それはWebサーバであったり、DBサーバであったり、はたまたネットワークやストレージであったりします。 一般的に、こうした遅延箇所の多くはサーバサイドに集中しています。サーバサイドでは、多くのユーザリクエス

    Webアプリで起きるクライアントサイドの性能劣化パターンとその改善チューニング
  • 大幅コスト削減を実現するための性能設計ノウハウ~地道で丹念な見直しが大きな成果に

    悩ましいが重要な課題~コストと性能の両立 システム開発のプロジェクトには様々な課題が出てきますが、大きな課題の1つはお金、つまり「開発コスト」でしょう。いきなり夢のない話ではありますが、近年、システム開発に対する企業の投資額は潤沢とは言えず、ベンダ間の価格競争もあって、コストカットのシビアなつばぜり合いが日夜行われています。 一方で、ポイントを外したダウンサイジングによってシステム品質を著しく損なう事例にも事欠きません。特に、私たち「まかせいのう」が専門とするパフォーマンスという領域は、ハードウェアやソフトウェアのリソース削減がダイレクトに性能問題発生に直結するため、ダウンサイジングには慎重を期す必要があります。 稿では、このダウンサイジングの実例として、学生を対象に教育コンテンツを提供するモバイルアプリとサーバ側機能の開発プロジェクトを例に、システムキャパシティを最適化する性能設計とそ

    大幅コスト削減を実現するための性能設計ノウハウ~地道で丹念な見直しが大きな成果に
    masakanou
    masakanou 2015/09/24
  • デブサミ2013、講演関連資料まとめ

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    デブサミ2013、講演関連資料まとめ
  • SharePoint 2010のワークフローの作成

    はじめに 連載では、Visual Studio 2010によるSharePoint 2010開発を扱います。第3回となる今回は、SharePoint 2010のワークフローの作成方法を解説します。 対象読者 Visual Studio 2010によるSharePoint 2010開発に関心がある開発者 SharePoint 2010のワークフローの開発に関心がある開発者 開発環境の整備 連載の第1回を参考にして、SharePoint 2010の開発環境を整えてください。 SharePoint 2010のワークフロー機能 SharePoint 2010のワークフロー機能は、.NET Framework 3.5のWindows Workflow Foundation(WF)を基盤としています。 WF自体は、.NET Framework 3.0から導入されたマイクロソフトが提供しているワーク

  • HTMLのマークアップ時に目的に合った要素を選ぶ方法

    見出しのマークアップ 文書ツリー構造を意識したマークアップをする際、title要素と並んで重要な要素に、見出し要素(h1~h6要素)が挙げられます。しかし、見出し要素の扱い方については、W3Cの(X)HTMLの仕様上では厳格に決められていないため、マークアップ時の判断に迷うことも少なくありません。 見出し要素の目的と構文ルールの確認 まずはWeb標準上のルールとして、W3Cの(X)HTMLの仕様を確認しておきましょう。見出し要素は、「そのセクションの話題を簡潔に説明するもの」とされています。ですから、SEO的な効果を期待して、セクションに関係のないキーワードを見出し要素を用いてマークアップするような使い方は、「目的の妥当性」において「妥当ではない」と言えるでしょう。見出し要素には、最高レベルのh1要素から最低レベルのh6要素まで、6つのレベルがあります。日語で言えば、h1要素は大見出し、

    HTMLのマークアップ時に目的に合った要素を選ぶ方法
  • SharePoint 2010開発の紹介

    はじめに この新連載では、Visual Studio 2010によるSharePoint 2010開発の基について解説します。 連載の中では、Visual Studio 2010上における、Webパーツの作成、ワークフローとイベントレシーバーの作成、クラウド上の外部データ(Windows AzureやSQL Azure)との連携、Silverlightとの連携、SharePoint Onlineへの配置などについて、随時解説していきたいと考えています。 対象読者 Visual Studio 2010によるSharePoint 2010開発に関心がある開発者 SharePoint 2010とは SharePoint 2010とは、一言で言えばマイクロソフトが提供している「ビジネスコラボレーションプラットフォーム」です。 SharePointは、ASP.NETを基盤としたサーバ製品で、コンテ

    SharePoint 2010開発の紹介
  • IEEEが定めるテスト設計仕様 ― 用語/テスト文書/要求仕様/設計

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    IEEEが定めるテスト設計仕様 ― 用語/テスト文書/要求仕様/設計
  • デブサミ2012、いよいよ明日開催! 有志によるまとめレポート提供の動きも

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    デブサミ2012、いよいよ明日開催! 有志によるまとめレポート提供の動きも
  • C#で始めるテスト駆動開発 ~TDDBC横浜の課題をやってみよう

    はじめに 各地でTDD Boot Camp(TDDBC)が開催されるようになり、このところTDD(テスト駆動開発)が注目を浴びています。ただ、自分でも試してみようと思った時に目につく書籍や記事などは、JavaRubyPHPといった、いわゆるオープンソース系の言語ばかり。.NET Framework(Windows)で開発の仕事をしているとTDDは関係ないんだろうか、…とさえ思えてくるかもしれません。 しかし、そんなことはありません。.NET FrameworkでのTDDに必須のユニットテストフレームワークとして有名なNUnitの最初のバージョンは、Visual Studio .NET 2002がリリースされる以前の2001年に公開されています。.NET Frameworkは、生まれたときからTDDと共にあると言っても過言ではないでしょう。 この記事では、TDDとTDDBCについて簡単に

    C#で始めるテスト駆動開発 ~TDDBC横浜の課題をやってみよう
  • Hadoop MapReduceプログラムを解剖する

    オープンソース・ソフトウェア「Hadoop」のMapReduceジョブは、標準ではJavaで記述します(その他には、Pig、Hive、JAQLといったものがあります)。しかし、意外と初心者には分かりにくいと筆者は感じます。記事では、MapReduceジョブのサンプルコードを使って、できる限り正しくコードの意味を理解し、MapReduceへの入り口を示したいと思います。 HadoopでMapReduceを記述するときに使うAPIが、0.19から0.20に変わるところで新しくなっています。実は、現時点でHadoopプロジェクト体からでさえも、新APIを使ったサンプルが提示されていません。記事では、新しいAPIで筆者が書き直したサンプルを使って解説しますので、このサンプルは0.19以前のHadoopでは動かないことに注意してください。この記事は、0.20.2を使って検証し、解説しています。

  • WindowsのDLLだけが危ないのか? DLL hijacking vulnerability概説(前編)

    はじめに 今回は、最近話題のDLL hijacking vulnerabilityと呼ばれるプログラムのDLL読み込みに関する脆弱性について解説したいと思います。この脆弱性は、"DLL preloading attack"と呼ばれたり"binary planting vulnerability"と呼ばれたりすることがありますが、これらは同じ問題の別称です。ここでは便宜上「DLL hijacking」という言葉で統一します。 この脆弱性は、スロベニアのセキュリティ会社Acros Security(Acros)が8月18日に公開したWindows向けApple iTunesの脆弱性"Remote Binary Planting in Apple iTunes for Windows"において、メディアの注目を集めました。前後して、UC Davisの研究者が同様の問題に関する学会発表を行っていた

    WindowsのDLLだけが危ないのか? DLL hijacking vulnerability概説(前編)
  • Google Developer Day 2010 Japan開催、HTML5・Android・GAEの最新動向を紹介

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Google Developer Day 2010 Japan開催、HTML5・Android・GAEの最新動向を紹介
  • モデル駆動型開発の現場から ~現状とこれから乗り越えるべき壁

    組込みソフトウェアモデリング・フォーラム 2010最後のセッションでは、「モデル駆動型開発を行って実際どうだった?」と題したパネルディスカッションを実施。組込みソフトウェア開発の現場で実際にMDD(モデル駆動型開発)に取り組む先進的ユーザー企業の担当者および、豊富な経験を持つコンサルタントの面々が登壇し、MDDのメリットや課題、現場に普及・定着させるためのポイントなどについて議論を交わした。 モデレータ: 株式会社エクスモーション 専務取締役 / ET ロボコン部 審査委員長 渡辺 博之 氏 パネラー: 株式会社アドヴィックス 技術開発部 制御第 1 技術部 グループリーダー 河野 文昭 氏 セイコーエプソン株式会社 機器ソフトウェア統括センター 機器ソフトウェア設計部 研究副主幹 島 敏博 氏 日アイ・ビー・エム株式会社 ソフトウェア事業 ラショナル事業部 システムズ・エバンジェリ

    モデル駆動型開発の現場から ~現状とこれから乗り越えるべき壁
  • 原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine

    はじめに MSDNライブラリには、マイクロソフトの技術情報が大量に掲載されていますが、英語版に比べ、日語版の内容は中途半端なのが実状です。 たとえば、スレッドの優先順位を設定する「SetThreadPriority」関数の説明を見ると、英語版には「Windows Server 2008およびWindows Vistaでは、スタートアップやレジストリのRUNから自動実行されたプログラムに対するスレッドの優先順位指定が、システム開始から60秒程度効かない」との注意書きがありますが、日語版にはありません。 また、仮想ディスクの情報を設定する「SetVirtualDiskInformation」関数を検索すると、英語版には説明がありますが、日語版には項目自体がありません。 そこで記事では、MSDNライブラリの英語版がスラスラ読めるように、とはいきませんが、英単語で引っかかることが少なくなる

    原文をスラスラ読みたい! 「MSDNライブラリによく出る英単語 100選」(1/2):CodeZine
    masakanou
    masakanou 2010/07/30
    おもしろい視点だな
  • Google App Engine for Javaを使ってみよう! (1)Google Plugin for Eclipse

    2008年4月7日に発表されたGoogle App Engineが、ちょうど1年後の2009年4月7日にJavaに対応したことが発表されました。さらに、Java開発には必須のEclipse用のプラグイン「Google Plugin for Eclipse」が同時に発表され、Java利用者は簡単にGoogle App Engine用のプログラム開発とEclipse上からのデプロイができるようになっています。今回はそんな便利な「Google Plugin for Eclipse」の使い方を説明します。 はじめに 2008年4月7日、Googleのインフラでウェブサービスを展開できるという「Google App Engine」が発表され世界中が驚かされました。この時点では利用できる言語としてPythonのみがサポートされており、Pythonの開発者がGoogleの社員であることを考えると当然なの

    Google App Engine for Javaを使ってみよう! (1)Google Plugin for Eclipse
  • 【MSDN Hacks】 .NETエンジニア必見の情報活用術 8選

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    【MSDN Hacks】 .NETエンジニア必見の情報活用術 8選
  • 「ASP.NET Web Form」か「ASP.NET MVC」か? .NETによるWebアプリ開発の今を徹底討論

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    「ASP.NET Web Form」か「ASP.NET MVC」か? .NETによるWebアプリ開発の今を徹底討論
    masakanou
    masakanou 2009/09/06
    ControlAdapterで生成するHTMLを書き換えられるのか
  • 新たな関数型言語「F#」

    はじめに F#とは、マイクロソフトリサーチが開発しているOcaml(Objective Caml)互換の関数型プログラミング言語(以降、関数型言語)です。他の.NET Framework対応言語と同じくVisual Studio(以降、VS)に統合される予定で、現在マイクロソフトから提供されているVS2010のベータ版にも搭載されています。 マルチコアプロセッサが主流になり、従来の科学やその他の学術研究分野に限らず、金融業、製造業など幅広い分野においてHPC(High Performance Computing)が普及してきました。それに伴い、並列処理や分散プログラミングを得意とし、高演算処理能力を発揮する関数型言語への期待は急速に高まりつつあります。関数型言語はその長所にもかかわらず、他言語との相互運用性の乏しさもあって長い間ごく限られた一部のデベロッパーにしか学習されていませんでした。

    新たな関数型言語「F#」
  • ASP.NET AJAX 4.0を予習する(前編)

    ASP.NET AJAXには次のような特徴があります。 ASP.NETのポストバックモデル開発をそのまま利用したAJAX開発 Extenderによる既存コントロールの拡張 Microsoft AJAX Libraryによるクライアントスクリプトの拡張 ASP.NET WebServiceとの簡単な連携 ASP.NET AJAX Control ToolkitによるExtenderの提供 この中でASP.NET AJAX Control Toolkitはオープンソースプロジェクトからの提供となるため、純粋にはASP.NET AJAXの特徴とはいえませんがAJAX開発の際には非常に重要なライブラリ群です。 ASP.NET AJAXはこれらの特徴により既存のASP.NETの開発手法を崩すことなく、ASP.NETのページをAJAXに対応したインタラクティブなものに変更することができました。 ASP

    ASP.NET AJAX 4.0を予習する(前編)
  • 初めての省庁系システム開発(技術編第1回)~オープンソースで構築~

    この連載では、省庁系システム開発において、著者が経験したプロジェクトを例として、どのような技術を使用したかだけでなく、省庁系システム特有の掟などを書き綴っていきます。記事では、技術編シリーズの第1回として、オープンソースを使用しての開発について、説明していきます。 はじめに 一次請けであれ二次請けであれ、または準委任であれ、省庁系システムの開発は、初めて経験するものには戸惑いを与えます。金融系システムや流通系システムなどを経験した技術者にとって、知っておかないとうまく事が運ばないことがあるので注意が必要となってきます。技術面は後ほど紹介することとして、著者が4回の省庁系システム開発で学んだことは次の点です。 誤字・脱字を侮るな コミュニケーションルートを確保せよ 受領資料の意味を熟考せよ 査読すべき資料を早急に収集せよ 省庁の影にコンサルタントの気配あり 自社に馴染んだ開発手法に持ち込め

    初めての省庁系システム開発(技術編第1回)~オープンソースで構築~
    masakanou
    masakanou 2009/07/20
    >ID・パスワード方式のほかに「政府認証基盤(GPKI)」や「公的個人認証サービス(JPKI)」を使用しています(「認証基盤については当シリーズの他の回で紹介します)。これらのサービスが提供しているAPIがJavaだからです