タグ

ブックマーク / atmarkit.itmedia.co.jp (34)

  • SVGで図形やアニメを描画してみよう

    知って得する、Webブラウザ上で利用できるグラフィック関連技術HTMLのような感覚で図形が描画できる「SVG」をハックしよう グループ化・リンク・変形 連載では、Webブラウザ上で利用できるグラフィック技術を分かりやすく紹介しています。前回はSVGの基礎編として、SVGドキュメントの基的な書式と基図形の描画方法、各種スタイル指定の方法などを解説しました。 今回はその続きとして、変形やアニメーション、フィルター、JavaScriptによる制御といった機能を取り上げていきます。例によって多数のサンプルとともに解説していきますが、Webブラウザによっては一部が動作しません。確実にサンプルを見たい方は、FirefoxまたはOperaの最新版をご使用ください。 ■ 図形のグループ化 まずは前回取り上げられなかった重要な基機能として、「図形のグループ化」を解説します。SVGのようなベクトルグ

    SVGで図形やアニメを描画してみよう
  • ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT

    ThreadとHashMapに潜む無限回廊は実に面白い?:現場から学ぶWebアプリ開発のトラブルハック(10)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) マルチスレッドのトラブルハックはさっぱり分からない… 対処が難しいトラブルといえば、GC(ガベージ・コレクション)とマルチスレッド処理に起因することが多い。 前々回(「肥え続けるTomcatと胃を痛めるトラブルハッカー 」)と前回(「JavaのGC頻度に惑わされた年末年始の苦いメモリ」)の2回にわたってGC、特にメモリ周りのトラブルを取り上げた。そこで今回は、マルチスレッド処理のトラブルの1つ、「レースコンディション(競合状態)

    ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT
    ICHIRO
    ICHIRO 2012/10/17
  • Hadoopの現実解「バッチ処理」の常識をAsakusaで体得

    Hadoopの現実解「バッチ処理」の常識をAsakusaで体得:ビッグデータ処理の常識をJavaで身につける(7)(1/4 ページ) Hadoopをはじめ、Java言語を使って構築されることが多い「ビッグデータ」処理のためのフレームワーク/ライブラリを紹介しながら、大量データを活用するための技術の常識を身に付けていく連載 “ビッグデータ”時代の「バッチ処理」 アプリケーション開発というと、システム利用者に一番近い画面系の開発が花形ですね。一方「バッチ処理」というと、何となく地味な感じがしますが、「バッチ処理」は縁の下の力持ち、これがないと、大概のシステムは稼働できません。 絶対に必要だけど、影の薄い「バッチ処理」でしたが、“ビッグデータ”への注目度が高まり、大量データを短時間に処理する「並列分散処理バッチ」が活躍する場面も増えてきました。 稿では、並列分散で「バッチ処理」を行う方法につい

    Hadoopの現実解「バッチ処理」の常識をAsakusaで体得
  • OpenJDK+SystemTapでトラブル解析はここまでできる!

    Javaでデバッグしにくい3つの場面 Javaアプリケーションで構築されたシステムの障害や性能問題が発生した場合、大半はデバッガやプロファイラ、ミドルウェアやサードパーティが提供するツールを用いることで解析できてしまいます。 しかし、以下のような状況ではJavaの世界からのアプローチがしにくく、通常のデバッグノウハウが使えないことがあります。 プロセス再起動が許されないシステムでの情報取得がしたいとき 番環境でしか発生せず、テスト環境でデバッグできない問題の場合 GC(ガベージ・コレクション)ログ(-Xloggcなど)のように、javaコマンド起動オプションを与えなければ取得できない情報が必要な場合 ソース変更が許されない場合に、特定状況下の情報を取得したいとき ある特定のメソッドなどが実行された瞬間のスレッドダンプやスタックトレースなどが必要な場合 ソースの変更ができない、環境の制約な

    OpenJDK+SystemTapでトラブル解析はここまでできる!
  • Git管理の神ツール「Gitolite」なら、ここまでできる!

    「Git」使ってますか? 近年、分散バージョン管理システム「Git」が急速にシェアを伸ばしています。筆者は、チケットシステムやバージョン管理の勉強会などを開催したりしていますが、Gitユーザーがかなり増えてきていると感じます。 しかしながら、そのような勉強会でアンケートを取ってみると、実案件では半分以上の人がSubversionを利用しており、Gitの導入はまだまだ進んでいません。移行コストが掛かったり、プロジェクトマネージャ層への知名度がまだまだ低いというのもありますが、理由の1つとして、ユーザー管理が煩雑であったり、アクセス制御に関する情報が不足しているということもあると思います。 そういうわけで稿では、Gitリポジトリのユーザー管理やアクセス制御を簡単に行う「Gitolite」を紹介します。 なお、稿ではGitの利用方法については紹介しませんので、Git自身の使い方については改め

    Git管理の神ツール「Gitolite」なら、ここまでできる!
  • 技術者が知っておきたいTomcat 7の新機能20連発

    ■ リクエスト処理のアーキテクチャ Tomcat 4時代から採用されているリクエスト処理のCatalinaアーキテクチャは変更なしで、そのまま採用しています。Tomcatが受け付けたリクエストは、リクエスト処理パイプラインによってServletまで到達し処理されます。 ■ クラスタリング(セッションレプリケーション) 若干のインターフェイスの改良はありますが、基的には同じ仕様です。 「All-to-All」「primary-secondary」の2つのレプリケーション方式が利用可能となっています。 ■ DBコネクションプール 今までどおりApache Commons DBCPを使用し、バージョンはDBCP 1.4系(JDBC 4用)を採用しています。Tomcat独自のjdbc-poolを利用する場合は別途ビルドが必要です。jdbc-poolは近いうちに同梱されるかもしれません。 では、T

    技術者が知っておきたいTomcat 7の新機能20連発
  • いまさら聞けないHadoopとテキストマイニング入門

    ビッグデータ時代の救世主「Hadoop」とは 「Apache Hadoop」は今、最も注目を集めている技術の1つです。Hadoopとは、大量のデータを手軽に複数のマシンに分散して処理できるオープンソースのプラットフォームです。 Hadoopを活用している企業は年々増え続けていて、不可欠な技術になりつつあるといえるでしょう。 連載では、Hadoopとは何か、Hadoopがどう活用できるのかということを、「テキストマイニング」に焦点を当てて解説していきたいと思います。 重い処理を複数のマシンに分散させる 複数のマシンに処理を分散させるには、プロセス同士の通信、監視、障害時の対応などを考えなければならず、プログラマにとってハードルが高いものです。しかし、Hadoopはそういった面倒くさい処理を一手に引き受けてくれ、プログラマは、やりたい処理だけに集中できます。 例えば、Hadoopを使うと、1

    いまさら聞けないHadoopとテキストマイニング入門
  • @IT:logrotateのテストを行うには

    logrotate -dv /etc/logrotate.d/chkrootkit reading config file /etc/logrotate.d/chkrootkit reading config info for /var/log/chkrootkit.log Handling 1 logs rotating pattern: /var/log/chkrootkit.log  after 1 days (30 rotations) empty log files are rotated, old logs are removed considering log /var/log/chkrootkit.log log does not need rotating

  • パスワードの定期変更という“不自然なルール”

    しばしば「パスワードは○日ごとに変更しましょう」といわれるけれど、それで当にクラックの危険性は減るの? ペネトレーションテストの現場から検証します(編集部) ※ご注意 記事に掲載した行為を自身の管理下にないネットワーク・コンピュータに行った場合は、攻撃行為と判断される場合があり、最悪の場合、法的措置を取られる可能性もあります。また、今回紹介するツールの中には、攻撃行為に利用されるという観点から、アンチウイルスソフトにウイルスとして検出されるものも存在します。このような調査を行う場合は、くれぐれも許可を取ったうえで、自身の管理下にあるネットワークやサーバに対してのみ行ってください。また、記事を利用した行為による問題に関しましては、筆者およびアイティメディア株式会社は一切責任を負いかねます。ご了承ください。 今回は久しぶりに、ペネトレーションテストの現場の話から始めよう。 ペネトレーショ

    パスワードの定期変更という“不自然なルール”
  • 知らないと損するFacebookファンページの作り方(1/3)- @IT

    プロモーション活用で注目を集めるFacebookのファンページ。簡単に作れるので、この機会にファンページを開設してみよう!(2011年2月5日にファンページの名称がFacebookページに変更になりました) ビバ Facebook! 世界最大のユーザー数を誇るSNS(ソーシャル・ネットワーク・サービス)の「Facebook」。 2010年夏には「ユーザー数が5億人を突破」というニュースが流れましたが、日でもユーザー数を伸ばし、約180万人が利用しています。 また1月15日から日でも、Facebook創業者の自伝映画「ソーシャル・ネットワーク」が公開となり、注目度はさらに高まっています。 Facebookのプロモーション活用術! まずは、Facebookを使ったプロモーション事例をいくつか紹介しましょう。 ■ FacebookのAPIを活用 外部サイトとFacebookの情報を結び付けて

  • 第1回 Rは統計解析のブッシュナイフだ - 実践! Rで学ぶ統計解析の基礎 - @IT

    今ほど統計解析が必要とされる時代はありません。オープンソースの統計処理言語・環境の「R」を使って実践的な統計解析のテクニックとリテラシーを習得しましょう! 読者にとってRは、世に溢れるデータの密林を切り開くための“ブッシュナイフ”となることでしょう(編集部) 統計解析の必要性とリテラシー 21世紀になって、経営学者の故ピーター・ドラッカー氏が言うところの知識労働者は、ますます統計解析を必要する局面が増えてきました。この状況は、20世紀後半から21世紀に起きた計算機能力の増大とインターネットの発展を基礎に、3つの大きな潮流が現れたことがキッカケとなっているように思います。その3つの潮流とは、オープンソース、オープンデータ、そしてオープンアイデアです。後ろの2つは今筆者が名付けました。 オープンソースは、皆さんがご存知のように、Linux、Apache、PerlPythonRubyなどのO

    第1回 Rは統計解析のブッシュナイフだ - 実践! Rで学ぶ統計解析の基礎 - @IT
  • 「われわれは100倍、速く書ける」――PFI 西川徹

    「天才」と呼ばれるプログラマたちが自ら会社を立ち上げるとどうなるか。その答えが知りたければ、あるベンチャー企業に注目すればいい。IT業界で注目を集めるテクノロジーベンチャー「プリファードインフラストラクチャー」の社長に話を聞いた。 特集「学生起業家たちの肖像」、最終回は現在、最も注目を集めているテクノロジーベンチャーの1つ、プリファードインフラストラクチャー(PFI)の代表取締役社長 西川徹氏に登場してもらった。東京大学大学院に在学中、ACM国際大学対抗プログラミングコンテスト(ACM/ICPC)の世界大会に出場したメンバーと設立した会社は、自然言語処理の分野で日増しにその存在感を大きくしている。 今回は特別に、連載「天才プログラマに聞く10の質問」でおなじみ、Lispハッカーの竹内郁雄氏にインタビュアーをお願いした。2人の濃密な対談の様子を余すところなくお届けする(以下、敬称略)。 出会

    「われわれは100倍、速く書ける」――PFI 西川徹
  • Hadoop+Hive検証環境を構築してみる

    Hadoop+Hive検証環境を構築してみる:Hive――RDB使いのためのHadoopガイド(前編)(1/3 ページ) Hadoop HiveはHadoop上でSQLライクなクエリ操作が可能なDWH向けのプロダクトです。SQLに近い操作が可能なため、HBaseよりもデータベースに慣れ親しんだみなさんには使い勝手がいいかもしれません。稿ではこのHiveの使い方とレビューを行っていきます。

    Hadoop+Hive検証環境を構築してみる
  • プログラミング言語Cについて知ろう

    プログラミング言語の基となる「C」。正しい文法や作法を身に付けよう。Cには確かに学ぶだけの価値がある(編集部) プログラミング言語Cは開発の仕事に役立つ人気のあるプログラミング言語です。 この連載では、Cでのソフトウェア開発をこれから始めようという方や、使った経験はあるが勉強し直したいという方のために、基をきちんと押さえながら勉強できるような解説をしていきます。 なるべく正しい文法や作法を身に付けていただくためにJIS規格を基に解説しますが、それだけにこだわらず実際の開発で役に立つことを分かりやすくお伝えしていきます。 Cの成り立ちと規格 まずは、Cの成り立ちと規格について知っておきましょう。ちょっと堅苦しい感じがするかもしれませんが、歴史を知っているとなぜこういう書き方をするのか、こういった機能があるのかといったことが分かります。また、規格を知っているとプログラミングをしていて何か

    プログラミング言語Cについて知ろう
  • 第10回 IPパケットの構造とIPフラグメンテーション

    「IPフラグメンテーション(IP fragmentation。fragmentとは断片などの意味)」とは、一度に送信することのできない大きなIPパケットを、いくつかに分割して送信するという技術である。IPプロトコルでは最大で64Kbytes(IPヘッダ部分を含んだサイズ)までのパケットを一度に送信できることになっているが、実際にはこのような大きなサイズのIPパケットを1つのパケット(フレーム)で送信することのできる物理ネットワーク媒体はない。例えばイーサネット(および相互互換性を持つ無線LANなど)では最大1500bytesだし、FDDI(光ファイバ)では4352bytesというのが普通である。このように、一度に送信することができるデータのサイズを「MTU(Maximum Transmission Unit)」といい、物理的なネットワーク媒体ごとに固有の値を持っている。 それならば、IPパ

    第10回 IPパケットの構造とIPフラグメンテーション
  • 連載:[完全版]究極のC#プログラミング - @IT

    第2回 簡潔なコーディングのために (2017/7/26) ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21) Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基の「キ」をマスターしよう 第1回 明瞭なコーディングのために (2017/7/19) C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える Presentation Translator (2017/7/18) Presentation TranslatorはPowerPoint用のアドイン。プレゼンテー

  • JUnitとEclipseを使って学ぶ、“テスト”の常識

    JUnitとEclipseを使って学ぶ、“テスト”の常識:Webアプリの常識をJSPとStrutsで身につける(10)(1/4 ページ) 連載は、JSP/サーブレット+StrutsのWebアプリケーション開発を通じて、Java言語以外(PHPASP.NETRuby on Railsなど)の開発にも通用するWebアプリケーション全般の広い知識・常識を身に付けるための連載です いまさら聞けない、“テスト”の考え方やポイント 今回は、「テストの常識」と題し、Webアプリのテスト方法を説明したうえで、実際にJUnitを使用してWebアプリのテストを行ってみましょう。 そもそも、テストとは何のために行うのでしょうか? ただ何となくテスト項目を作成して実施するのでは、作成したWebアプリの品質が低かったり、開発コストが高くなったりと後々、後悔することになります。まず「テストをなぜ行うのか」「何を

    JUnitとEclipseを使って学ぶ、“テスト”の常識
  • “すべてクラウド”も間近!? 「ZumoDrive」を使ってみた - @IT

    2009/01/23 オンラインストレージサービスは古くからあるが、汎用クラウドサービスの登場で、その使い勝手が急速に進化している。2009年1月に入ってプライベートベータテストを始めた「ZumoDrive」は、エンドユーザー向けのサービスとしては、現時点で最も先進的な利便性とリーズナブルな価格を実現したサービスの1つだ。ZumoDriveはAmazon S3をバックエンドに使い、ローカルPCのOSに透過的にマウントできる仮想ドライブを提供する。ファイルはクリックして初めてストリーム配信されるため、ローカルストレージは、もはや主従関係でいえば従の“キャッシュ”として機能する。 ZumoDriveを使ってみたい読者は、同サービスのWebサイトで招待コード“itmedia”を入力してみてほしい。現在ZumoDriveはプライベートベータテスト中だが、@IT読者に対して先着で500アカウントまで

  • 【詳報】Google Waveとは何なのか? − @IT

    2009/05/29 米グーグルは5月28日、米国サンフランシスコで開催中のイベント「Google I/O 2009」で、まったく新しいメッセージングおよびコラボレーションのためのプラットフォーム、「Google Wave」を発表した。同日、開発者向け早期プレビューとして公開。限定的にアカウントを発行して、外部の意見を取り入れながら開発を進める。年内にも一般向けサービスを公開し、それに続いてサーバの実装も順次、Apache2.0ライセンスのもとでオープンソースで公開していく予定だという。 プロジェクトリーダーで、Google Waveの基調講演でデモンストレーションを行ったラース・ラスムセン氏は、Google Waveは「3つのP」からなると説明する。 Google Waveのプロジェクトリーダー、ラース・ラスムセン(Lars Rasmussen)氏は、Google Waveは「3つのP」

  • グーグルが賭けるHTML 5の未来 - @IT

    2009/05/28 「決してWebをあなどってはいけない」(Never underestimate the Web)。Google I/O 2009初日の基調講演でシュミットCEOに続いて登壇したのは、米グーグル バイス・プレジデントのビック・グンドトラ氏だ。ゆっくりと一語一語を区切りながら語り始めたグンドトラ氏の言葉には重みがある。彼は元マイクロソフト社員で、まさにWebをあなどっていた側にいたからだ。 グンドトラ氏はWindowsプラットフォームを唱道する立場にあった。彼に限らず、マイクロソフト社員の間には、ネイティブアプリケーションでなければできないことがあるとする見方が一般的だったという。「Keyholeという会社が出てきたとき、彼らが持つようなアプリケーションこそ、ネイティブでなければできないものだと言っていた。ところがグーグルは2004年11月にKeyholeを買収し、Goo

    ICHIRO
    ICHIRO 2009/05/29
    Web Workers