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

  • 調査の難しい「OutOfMemoryError」事例、5選

    メモリ不足の問題の切り分け方の基 まずは、メモリ不足がJavaヒープとCヒープのどちらで発生したかを切り分けておこう。 Javaヒープ OutOfMemoryErrorがスローされ、JavaVMの実行が継続している場合には、Javaヒープが不足している可能性が高い。Javaヒープ不足かどうかを確定させるために、スローされたOutOfMemoryErrorのトレースを確認しよう。 java.lang.OutOfMemoryError: Java heap space <=======【*1】 at java.nio.CharBuffer.wrap(CharBuffer.java:350) <=======【*2】 at java.nio.CharBuffer.wrap(CharBuffer.java:373) at java.lang.StringCoding$StringDecoder.

    調査の難しい「OutOfMemoryError」事例、5選
    nishitki
    nishitki 2015/01/18
  • システムコールと標準ライブラリ関数の違いを知る

    やはりシステムコールを利用した方が速いのか? では先に挙げた3種類のサンプルプログラムを調べて、実際にシステムコールを呼び出している回数と、システムコールごとの処理時間を調べてみる。ここではtruss(1)を使うが、OSによってはこれがstraceや、dtrussになる。指定するオプションも変わることがあるので、末尾の説明を参考にしてほしい。 最初に、システムコールを使わずに作ったサンプルプログラムを調べてみよう。truss(1)を実行すると、以下のようになる。 % rm -f out % touch out % truss -Sc ./copy-fgetc-fputc syscall seconds calls errors readlink 0.000016482 1 1 lseek 0.000012292 1 0 mmap 0.000111746 8 0 open 0.0001827

    システムコールと標準ライブラリ関数の違いを知る
    nishitki
    nishitki 2015/01/15
  • 難しいが強力! Rubyのメタプログラミング、self、特異クラス/メソッド、オープンクラスとモンキーパッチ

    難しいが強力! Rubyのメタプログラミング、self、特異クラス/メソッド、オープンクラスとモンキーパッチ:若手エンジニア/初心者のためのRuby 2.1入門(12)(1/4 ページ) オープンソースのオブジェクト指向プログラミング言語「Ruby」の文法を一から学ぶための入門連載。最新版の2.1に対応しています。今回は、Rubyの「黒魔術」といわれるメタプログラミングの概要、self、特異メソッド、特異クラス、オープンクラス、モンキーパッチなどの使い方をコード例を交えて解説します。

    難しいが強力! Rubyのメタプログラミング、self、特異クラス/メソッド、オープンクラスとモンキーパッチ
    nishitki
    nishitki 2015/01/07
  • 絵文字だって使えちゃう~GitHub(ギットハブ)の使い方:issueの裏ワザ編

    絵文字だって使えちゃう~GitHub(ギットハブ)の使い方:issueの裏ワザ編:海外Webサービスのトリセツ(20) 海外Webサービスの使い方を「日語で」分かりやすく説明するシリーズ、今月は「GitHub(ギットハブ)」でissueの投稿に使える裏ワザを紹介します。

    絵文字だって使えちゃう~GitHub(ギットハブ)の使い方:issueの裏ワザ編
    nishitki
    nishitki 2015/01/07
  • 20年前の公開FTPサーバーのよみがえらせ方

    IIJ Technical WEEK 2014」の会場に、まるでタイムスリップしてきたかのようにSun Microsystemsの「SPARCstation IPX」が姿を現した。20年前に同社が提供していたアノニマスFTPサーバーはどんな姿だったのだろうか。 20年前のサーバーの姿を、そしてインターネットの姿を覚えているだろうか? インターネットイニシアティブ(IIJ)が2014年11月26日から28日にかけて開催している「IIJ Technical WEEK 2014」の会場には、まるでタイムスリップしてきたかのようにSun Microsystemsの「SPARCstation IPX」が姿を現し、世界初のグラフィカルなWebブラウザー「NCSA Mosaic」上で約20年前のIIJのWebページ(いわゆる「ホームページ」)を表示した。 11月27日に行われたセッション「てくろぐ・せ

    20年前の公開FTPサーバーのよみがえらせ方
    nishitki
    nishitki 2014/11/29
  • AWSのデータセンターの中身を、設計総責任者が話した

    AWSのデータセンターの中身を、設計総責任者が話した:「ここまで話していいの?」(1/2 ページ) Amazon Web Services(AWS)のバイスプレジデント兼ディスティングイッシュド・エンジニア、ジェームズ・ハミルトン氏は、AWSが11月11~14日に開催した「AWS re:Invent 2014」で、データセンターの構成、サーバーやスイッチの自社設計、SR-IOVなどについて語った。 [2014/11/21訂正]記事の初出時に、ハミルトン氏がAZ間の距離を「数キロメートル」と言ったと記述しましたが、数十キロメートルである可能性もあります。ハミルトン氏はAZ間が「multiple kilometers」であると表現しています。後出のハミルトン氏の議論では、例えばロサンゼルスとニューヨークの間の伝送遅延は74ミリ秒だが、これを1、2ミリ秒に抑えるためにAZ間は近くなくてはならない

    AWSのデータセンターの中身を、設計総責任者が話した
    nishitki
    nishitki 2014/11/21
  • 「Listenキューについて」(1) Linux Square - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    nishitki
    nishitki 2014/11/19
  • 実録! チーム開発が捗り過ぎるSlack+GitHub+Trelloの使い方

    実録! チーム開発が捗り過ぎるSlackGitHub+Trelloの使い方:普通の開発者のためのリーンスタートアップ手順書(5)(1/2 ページ) スタートアップではいかにお金を使わずにプロダクトを開発するかは成功につながる大きなポイントとなる。コストを掛けずにプロダクトを作っていく上で、導入すべきツールをどのように使うかを数回に分けて紹介。今回は、開発プロジェクト向けチャットツール「Slack」の特徴を解説しプロジェクト管理ツール「Trello」や「GitHub」と組み合わせた活用事例を紹介する。

    実録! チーム開発が捗り過ぎるSlack+GitHub+Trelloの使い方
    nishitki
    nishitki 2014/10/30
  • OpenStackのコアデベロッパーは何をしているのか

    OpenStackのコアデベロッパーは何をしているのか:OpenStack最前線~ユーザ会メンバーが持ち回りで語る「OpenStackのリアル」~(2) @IT特集「OpenStack超入門」は日OpenStackユーザ会とのコラボレーション特集。特集記事と同時に、日OpenStackユーザ会メンバーが持ち回りでコミュニティの取り組みや、超ホットでディープな最新情報を紹介していく。第2回は日OpenStackユーザ会メンバーで、OpenStack開発コミュニティ コアデベロッパーの元木顕弘氏が語る。 OpenStack開発コミュニティの“日常”とは? はじめまして。日OpenStackユーザ会の元木と申します。普段はOpenStack開発コミュニティで、「Neutron」「Horizon」のコアデベロッパーとして活動しています。今回はOpenStack開発コミュニティの様子、コアデ

    OpenStackのコアデベロッパーは何をしているのか
    nishitki
    nishitki 2014/10/28
  • 分散ストレージCeph/RADOSとは?

    連載バックナンバー IaaS構築・運用環境として注目を集める「OpenStack」でストレージを使用する場面としては、Compute service(Nova)が使用するファイルシステム、Image service(Glance)、Volume service(Cinder)、Object storage(Swift)などが挙げられます。 連載では、OpenStackのストレージ環境として注目を集めているOSSの分散ストレージ「Ceph/RADOS」について見ていきます。同じくOSSストレージインフラの選択肢としてCeph/RADOSと並んで検討されることの多いGlusterとの比較にも言及する予定です。 はじめに:Cephとは? RADOSとは? Cephの名前は頭足類を意味するCephalopodsに由来しています。開発者のペットであるタコのニックネームとして使われているそうです(*

    分散ストレージCeph/RADOSとは?
    nishitki
    nishitki 2014/10/19
  • ますます進化・拡大するOpenStackとOpenStackユーザーたち

    ますます進化・拡大するOpenStackとOpenStackユーザーたち:OpenStack最前線~ユーザ会メンバーが持ち回りで語る「OpenStackのリアル」~(1) @IT特集「OpenStack超入門」は日OpenStackユーザ会とのコラボレーション特集。特集記事と同時に、ユーザ会メンバーが持ち回りでコミュニティの取り組みや、まだどのメディアも取り上げていない超ホットでディープな最新情報をコラムスタイルで紹介していく。第1回は日OpenStackユーザ会会長 中島倫明氏が語る。 日OpenStackユーザ会メンバーがコミュニティの最新情報をお届け! はじめまして。日OpenStackユーザ会にて会長を務めております中島と申します。コラム連載に先立ち、日OpenStackユーザ会メンバーを代表して、皆さまにごあいさつとコラムの趣旨をお伝えしたいと思います。 コラムでは

    ますます進化・拡大するOpenStackとOpenStackユーザーたち
    nishitki
    nishitki 2014/10/15
  • OpenStackが今求められる理由とは何か? エンジニアにとってなぜ重要なのか?

    OpenStackが今求められる理由とは何か? エンジニアにとってなぜ重要なのか?:OpenStack超入門(1)(1/3 ページ) スピーディなビジネス展開が収益向上の鍵となっている今、システム整備にも一層のスピードと柔軟性が求められている。こうした中、なぜOpenStackが企業の注目を集めているのか? 今あらためてOpenStackのエキスパートに聞く。 今強く求められている「ビジネスとITの連携」 経営環境変化が激しい近年、「ビジネスとITの連携」の重要性がますます高まっている。これを受けて、開発、運用の両面でさまざまなムーブメントが起こっている。その一つの象徴といえるのが、開発分野におけるアジャイルや、アジャイルを核とするDevOpsだろう。これまでビジネス部門と開発・運用部門は、部門の壁、契約の壁などによって分断されてきた。しかし変化の速い市場に最適なサービスを迅速に立ち上げ、

    OpenStackが今求められる理由とは何か? エンジニアにとってなぜ重要なのか?
    nishitki
    nishitki 2014/10/15
  • ShellShockに管理者はショック! パスワード定期変更の議論どころではない?

    中でも多かった意見は、「サービスごとに異なるパスワードを設定する」「分かりにくい文字列をパスワードにする」の二つと同列に「パスワードの定期変更」を並べるのはどうなのかということと、これらのいずれかを対策とするという要件であるため、パスワードの定期変更だけを採用してしまうと、根的な対策にはならないのではないかという意見です。 それに対し、@keijitakeda氏から「必ずしも駄目とも思えない、一律にパスワードの定期変更をあざ笑うような風潮を広めることはあまりよくない」と反論がありました(なお、@keijitakeda氏は基的にパスワードの定期変更には反対の立場だそうです)。 @keijitakeda氏に対して、たくさんの反論ツイートが向かいます。まとめると、定期変更は一定の効果はあるのは分かってはいるけれど、あくまでも他の2つの補助的な役割に過ぎないので、ここでいずれかの対策に含めるの

    ShellShockに管理者はショック! パスワード定期変更の議論どころではない?
    nishitki
    nishitki 2014/10/12
  • 設定を見直すだけ、いますぐ簡単にできる「標的型メール攻撃対策」

    設定を見直すだけ、いますぐ簡単にできる「標的型メール攻撃対策」:すぐ実践可能!(1/4 ページ) カギは「ZoneID」と「アーカイバー」と「保護されたビュー」。これらの設定を見直すことで、なぜ標的型メール攻撃対策ができるのかを考察しよう。 脅威はメールからやってくる――いますぐできる対策は? 近年、機密情報などの窃取を目的とし、特定の企業や組織を狙い撃ちにする「標的型攻撃」が、情報セキュリティの大きな課題となっている。「標的型攻撃」はさまざまな手法が存在するが、その中でも組織の関係者や顧客などを装い、メールを送信する「標的型メール攻撃」と呼ばれる攻撃が現在の主流となっており、手口も巧妙化、多様化の一途をたどっている。 稿では、従来型のセキュリティ対策では防ぐことが難しいといわれる「標的型メール攻撃」に対し、費用負担も少なく容易に導入可能な、攻撃を緩和する対策について考察する。 標的型メ

    設定を見直すだけ、いますぐ簡単にできる「標的型メール攻撃対策」
    nishitki
    nishitki 2014/09/03
  • 夏休みの子どもの自由研究に最適! 植物からメールをもらおう

    夏休みの子どもの自由研究に最適! 植物からメールをもらおう:Arduinoで始めるWeb技術者のためのIoT入門(3)(1/3 ページ) 今注目のInternet of Thingsを実現するセンサーデバイスのインターフェースとしてArduinoを使い、電子工作の基礎から実装までを紹介する連載。今回は、観葉植物の土が乾いたことを土壌温度センサーで検知し自動的にメールを送信するシステムをJavaScriptで作ります。

    夏休みの子どもの自由研究に最適! 植物からメールをもらおう
    nishitki
    nishitki 2014/08/02
  • Linuxメモリ管理の最先端を探る(2/2) - @IT

    小崎 資広 2008/5/22 VM(仮想メモリ)の改善 昔からのLinuxユーザーの方は、カーネル2.4の時代に、一時期VM(仮想メモリ)が不安定で悩まされていたことを覚えている方もいるかもしれません。 現在のVMは、Andrea Arcangeliの作成した割とシンプルな設計なVMに、Rik van Rielの作成したページフレームからページテーブルエントリを逆引きするためのreverse mappingという機能を追加したものが基となっています。 これは、コードの複雑さと性能の間でバランスの取れた、なかなか評判のいいものだったのですが、カーネル2.6の登場から約5年がたち、だんだんアラが目立つようになってきました。 というのも、当時は一般的なパソコンのメモリ量は256M~512Mbytes程度で、サーバでも4Gbytesの壁を超えるようなマシンはまれでした。しかし、DRAMの急激な

    nishitki
    nishitki 2014/06/23