今回の概要 システムが応答しない、パフォーマンスが劣化したなどのトラブルが発生したときに、原因がなかなか掴めず、あたふたすることはないだろうか? 本稿では、Java EEトラブルシューティングの現場で役立つ7つ道具を紹介する ある日、突然電話が鳴る 用件は、「システムが不定期に停止する。よく分からないけど、どうやらJava EE部分がおかしい」とのこと。このような事態が発生したとき、やみくもに原因を調べ、いつまでたっても問題が解決できず、原因の一片も発見できないことが多々ある。 トラブルが発生した場合、ツールが充実していない昔は、開発者の経験と勘に頼るところが非常に大きかった。Webシステムが普及するいま、昔とは比べ物にならないほど、システムの数が増え、開発者数が増える一方、システム障害を切り分けられる職人的なエンジニアの人数はシステム数に比例して増えているわけではない。そのため、すべての
今回の概要 本稿ではWebアプリケーションの開発プロジェクトで実際に直面したメモリに関するトラブル事例の中からjava.lang.OutOfMemoryErrorを題材としたTipsを紹介する。 帰宅直前に、突然電話が鳴り響く 業務を終えて帰宅しようとしたとある夜、突然電話が鳴る。相手は社内のプロジェクトのマネージャである。 「現在、テストを実施しているが、数分経つとOutOfMemoryErrorが発生してアプリケーションが落ちてしまう。再起動を掛けると、また順調に動くが、しばらく利用していると、同じようにOutOfMemoryErrorが発生する。メモリ不足のエラーなので、物理メモリを増やそうかと思っているが、物理メモリ増設の前に、アプリケーションという観点からメモリ不足を引き起こす問題がないか調査してほしい」 取りあえず、原因を探るために現場に急行した。 現場にてトラブルの詳細をヒア
メモリ不足の問題の切り分け方の基本 まずは、メモリ不足が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.
Why Australia's Construction Industry Needs a Stronger Focus on Safety Innovations Safety Challenges in Construction Current Accident Statistics In the construction and engineering fields, accident statistics reveal a significant concern for both management and workers. Despite advancements in technology, incidents remain prevalent, often resulting from inadequate systems and outdated processes. W
ゲームの作り方とアルゴリズムをジャンル別にまとめてみました。ゲーム制作や、プログラミングの勉強用にご活用ください。言語別ゲームプログラミング制作講座一覧もあわせてお読みください。 リンク切れがおきていたものは、URLを表示しておくので、Internet Archiveなどでキャッシュを表示させてみてください。 RPG ゲームの乱数解析 乱数を利用した敵出現アルゴリズムの解説 各種ゲームプログラム解析 FF、ドラクエ、ロマサガのプログラムの解析。乱数の計算など ダメージ計算あれこれ(http://ysfactory.nobody.jp/ys/prg/calculation_public.html) ダメージの計算式 エンカウントについて考えてみる エンカウント(マップでの敵との遭遇)の処理方法いろいろ RPGの作り方 - ゲームヘル2000 RPGのアルゴリズム ドルアーガの塔 乱数の工夫の
PHP、Perl、Ruby、C、C++等40以上の言語をブラウザで実行できるようになるjQueryプラグイン「Run This」 2010年03月11日- Run This! PHP、Perl、Ruby、C、C++等40以上の言語をブラウザで実行できるようになるjQueryプラグイン「Run This」。 ブラウザ内の<pre>コードで記述した部分を、その場でそのまま動かすことができ、うまくサイトに組み込めばより訪問者にとってわかりやすいページを作ることが出来そうです。 例えば、PHPの入門サイトなんかでは挙動を一瞬で確認できてしまいます。 具体的には以下の言語に対応しています。 Ada, Assembler, AWK, Bash, bc, Brainf**k, C, C#, C++, CLIPS, Clojure, COBOL, Common Lisp, D, Erlang, Forth
さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 たとえば、S:スタート G:ゴール *:壁 $:解答の経路 としたとき、 ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * * *********** * * * * ******* * * * * * ************************** という入力に対し、 ************************** *S* * $$$ * *$* *$$*$ ************
昨年も取りまとめられていた「最も危険なプログラミングエラーTop 25」の2010年版が発表された(本家/.記事)。 2010年版で一番のエラーとされたのは、クロススクリプティングを引き起こし得る「ウェブサイトの設計不備」。その後にSQLインジェクションの原因となる「SQLクエリの保護不備」、バッファオーバーフローの原因となる「メモリバッファ境界チェックの不備」と続く。このTop 25のエラーは、最近中国で起きたGoogleへの大規模サイバー攻撃や、その他軍用システムから一般ユーザまでを対象とした大小様々なサイバー攻撃の多くで悪用されているとのこと。 今回のレポートでは、製品のセキュリティに対して開発者らが責任を負うよう消費者が声を挙げるべきであると推奨している。「開発チームのメンバー全員がセキュアプログラミング技術のトレーニングを適切に受けていることを確証する責任を負う」ようベンダーに求
数が増えてきたので別記事に分けてみました。分類は超テキトーです。変態文法シリーズも足してみました。 手続き型言語 汎用スクリプト言語 Perl Perl基礎文法最速マスター - サンプルコードによるPerl入門 Perlオブジェクト基礎文法最速マスター - 燈明日記 Moose & Mouse基本文法最速マスター/The Fastest Way to Mastering Moose & Mouse - perl-mongers.org Ruby Ruby基礎文法最速マスター - Route 477 Rails基礎文法最速マスター - cod.note PHP PHP基礎文法最速マスター - Shin x blog php変態文法最速マスター - milieuの日記 Python基礎文法最速マスター - LazyLife@Diary VBScript 基礎文法最速マスター - CX's VB
第1回 Google Go登場の背景 赤坂 けい チームWordProgress 2009/12/2 突然登場した新しいプログラミング言語「Go」。その独自性、魅力を余すところなく堪能してみよう(編集部) 2009年10月末にグーグルが発表した、新プログラミング言語Go(またはgolang)は、速くて軽量な言語である。ただし、「速さ」と「軽量」の意味合いには、少しだけ特殊な意味合いが込められている。 第一に、Goの「速さ」とは、コンパイルの速さという意味合いが強い。また、Goの「軽量」とは、並列処理に対応した言語でありつつも言語仕様が軽いといった意味合いがある。 コンパイルが速く、並列処理の記述が容易で、言語仕様が軽量だという、Goのうたい文句に引き付けられた人は多いだろう。そして何より、世界最大規模のWebサービスを提供しているグーグルが、錚々(そうそう)たるメンバーの名の下に、自社のシ
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、地域サービス事業部の吉田一星です。 今回は、Hadoopについて、Yahoo! JAPANでの実際の使用例を交えながら書きたいと思います。Hadoopとは、大量のデータを手軽に複数のマシンに分散して処理できるオープンソースのプラットフォームです。 複数のマシンへの分散処理は、プロセス間通信や、障害時への対応などを考えなければならず、プログラマにとって敷居が高いものですが、 Hadoopはそういった面倒くさい分散処理を一手に引き受けてくれます。 1台では処理にかなり時間がかかるような大量のデータも、複数マシンに分散させることで、驚くべきスピードで処理を行うことができます。 例えば、今まで1台でやっていた、あるログ集計処理
エンジニアがFlashアプリを作るためのツール。それがAdobe Flexです。新バージョンの登場でぐっと使いやすくなると同時に,求めやすい価格になったFlexの使い方を解説します。 中垣 茂 隔週更新中 ・第29回 Flexが備えるMXMLコンポーネント(Part13:Tree) 今回は【mx.controls.Tree】コンポーネントを紹介します。階層構造のナビゲーションなどに使われるコンポーネントで,非常になじみ深いユーザー・インタフェースです。ただし,実際に使うときには注意すべき点があります。 ・【特別レポート】ブラウザ/OSを越えた次世代環境「Adobe AIR」を試してみよう アドビシステムズは2008年2月25日に,アプリケーション実行環境「AIR」の正式版をリリースしました。AIRについては名前は聞いたことがあっても,“正体”を理解している人はさほど多くないのではないかと思
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く