タグ

Operationに関するuchida75cmのブックマーク (63)

  • JVMのチューニング - ITエンジニアとして生きる

    前回、JVMとGCのしくみ - ITエンジニアとして生きるでJVMとGCのしくみについて書いた。 今回はその続きということでJVMのチューニングについて書きたいと思う。 JVMチューニングって -Xms ・・・ ヒープ全体(New領域+Old領域)の初期値 -Xmx ・・・ ヒープ全体(New領域+Old領域)の最大値 くらいしか話題に上がらないし意識しないことが多い(気がする)。 でもホントはこれだけではダメで、前回のようにPermanent領域、New領域、Old領域を意識したチューニングが必要になる。 VMチューニングを考えるその前に・・・チューニングの話をする前にまずVMの起動モードについて話したいと思う。 VMには大きく以下2つの起動モードがあり、それぞれ以下のような特徴を持つ。 ◆クライアントVMモード 起動時間を短縮し、メモリサイズを縮小するように調整されている。 VM起動時

    JVMのチューニング - ITエンジニアとして生きる
    uchida75cm
    uchida75cm 2013/12/16
    JVMのチューニング
  • Tomcatの設定 - Asterisk works Wiki

    Tomcatのパラメータ設定とは Apache TomcatはJavaのServletエンジンで広く利用されている。 インストールは比較的簡単で、運用も容易であるが、商用サービスで多数のユーザを相手にする場合にはそのままでは力不足の時がある。 Tomcatには稼動状態を調整するための設定を施すことが可能である。それについて説明する。 ヒープメモリ、JVMモードの設定 JVMの動作モードやヒープメモリなどJavaのVMに対する設定は環境変数CATARINA_OPTSにその値を設定する。 例えば set CATALINA_OPTS='-server -Xmx256M -Xms128M -Xss128k' のように設定する。 set CATALINA_OPTS='-server -Xmx256M -Xms128M -Xss128k' …Windows export CATALINA_OPTS

    uchida75cm
    uchida75cm 2013/12/16
    Tomcatのパラメータ設定(JVMとか)
  • 【真夏の夜のミステリー】Tomcatを殺したのは誰だ? (1/3) - @IT

    【真夏の夜のミステリー】Tomcatを殺したのは誰だ?:現場から学ぶWebアプリ開発のトラブルハック(6)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) 【第1章】Tomcatが無応答!? トラフィックの多い大規模サイトでは、その負荷のためにさまざまな問題が発生する。それらの問題を回避するには、性能を考慮して作られたアプリケーションや、ノウハウに基づいたミドルウェアのチューニングが必要となる。 TomcatはServletコンテナとしての長い歴史を持ち、多くの採用実績を持つオープンソースのアプリケーションサーバ(以下、APサーバ)だ。大規模なサイトで採用される事例も出てきており、To

    【真夏の夜のミステリー】Tomcatを殺したのは誰だ? (1/3) - @IT
    uchida75cm
    uchida75cm 2013/12/16
    Tomcatのチューニング
  • Ubuntu日本語フォーラム / メモリが余っているのにスワップが使用される

    このフォーラムの別の投稿( http://forum.ubuntulinux.jp/viewtopic.php?id=1145 )からリンクされている developerWorks の記事では Ubuntu 6.10 ベースで swap が使用されないようにメモリ消費量を抑える tips が紹介されていたのですが、その筆者の環境では swap はメモリが足りなくなったときに使用され、そうでない場合は 0 という状態でした。 実害は確かにないんですが、Ubuntu を使い続けていこうと決心し、こうした問題も少しずつ解決していきたいと考えているため「これこれこういう理由」というものを知りたいです。 ちなみに上記で挙げた別の投稿の投稿者も、swap は私や Shibata-san と同程度使用されているようです。

    uchida75cm
    uchida75cm 2013/12/10
    実メモリが空いてるのにswapが発生する(3)
  • メモリが足りているのにSWAPが発生 - Linux系OS - 教えて!goo

    どういう理由でメモリが十分だと認識できるのか例で説明します。 例1)ファイルサーバー samba3.0系 XEON 3GHz HDD:1TB RAID1 メモリ:4G OS:Cent OS 3.8 上記サーバーは、ファイルサーバー用途です。4台の端末から、同時に動画ファイル4Gを書込みしてみます。 検証は、topというコマンドを使います。 top 【enter】 実メモリ4G搭載していても、4Gのファイル4を同時に書込みにいくとLinuxはHDDへの遅延書込を行うために、実メモリをどんどん消費します。数分もすると、実メモリは100%消費されます。 その時のCPU使用率はたいしたことありません。5%程度です。 例2)webサーバー apache2.0系 pentium4Noothwood 3GHz HDD:250GB RAID1 メモリ:2G OS:Cent OS 3.5

    uchida75cm
    uchida75cm 2013/12/10
    実メモリが空いてるのにswapが発生する(2)
  • Linuxのスワップ処理を最適化するためのヒント

    Linuxシステムにおけるスワップ処理の効率化とスワップ処理サブシステムのパフォーマンス最適化につながるテクニックを紹介する。 コンピュータのメモリ容量を超えるサイズのプログラムを実行する必要がある場合、最近のオペレーティングシステム(OS)のほとんどはスワップ処理と呼ばれる手法を用いる。これは、メモリ内データの大部分を一時的にハードディスクに格納しておき、必要なデータだけを物理メモリ空間に持ってくるというものだ。稿では、Linuxシステムにおけるスワップ処理の効率化とスワップ処理サブシステムのパフォーマンス最適化につながるテクニックを紹介する。 Linuxは、物理メモリの領域をページという単位に分割して処理する。スワップ処理とは、ハードディスク上にあらかじめ設定した空間(これをスワップ空間と呼ぶ)にページ単位でメモリ上のデータをコピーし、そのページのメモリ領域を解放する処理をいう。物理

    Linuxのスワップ処理を最適化するためのヒント
    uchida75cm
    uchida75cm 2013/12/10
    実メモリが空いてるのにswapが発生する(1)
  • Linuxメモリ管理の最先端を探る(1/2) - @IT

    小崎 資広 2008/5/22 この記事では、Linux Kernel Watchの番外編として、Linuxの最近のメモリ管理周りの動きと、その背景のモチベーションについてお伝えしたいと思います。 メモリ管理は変更時のインパクトが大きいため、通常、Stable Tree(安定ツリー)ではあまり変更はなされません。しかし、Linuxカーネルメーリングリスト(LKML)の議論では「もうカーネル2.7は出ない」ともいわれており、十分なテストがなされたものであれば、アグレッシブなパッチでも受け入れられるようになっています。 また、メモリの急速な大容量化により、いままで問題にならなかった部分にスケーラビリティ上の問題が発生したという報告もちらほら出てきました。それを解消するためのさまざまな改善が提案されています。 こうした背景により、2007年から2008年にかけては相当面白いパッチが出てきました。

    uchida75cm
    uchida75cm 2013/12/06
    スラブキャッシュの解放、デフラグ
  • 第2回 memcachedのメモリストレージを理解する | gihyo.jp

    株式会社ミクシィ 研究開発グループの前坂です。前回の記事でmemcachedは分散に長けた高速なキャッシュサーバであることが紹介されました。今回はmemcachedの内部構造がどう実装されているのか、そしてメモリがどう管理されているのかをご紹介します。また、memcachedの内部構造の事情による弱点も紹介します。 メモリを整理して再利用するSlab Allocationメカニズム 昨今のmemcachedはデフォルトでSlab Allocatorというメカニズムを使ってメモリの確保・管理を行っています。このメカニズムが登場する以前のメモリ確保の戦略は、単純にすべてのレコードに対してmallocとfreeを行うといったものでした。しがしながら、このアプローチではメモリにフラグメンテーション(断片化)を発生させてしまい、OSのメモリマネージャに負荷をかけ、最悪の場合だとmemcachedのプ

    第2回 memcachedのメモリストレージを理解する | gihyo.jp
    uchida75cm
    uchida75cm 2013/12/06
    スラブキャッシュのメリットとデメリット
  • Charming Python: Functional programming in Python, Part 3

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Charming Python: Functional programming in Python, Part 3
    uchida75cm
    uchida75cm 2013/12/06
    スラブアロケータ、スラブキャッシュとは
  • 減り続けるメモリ残量! 果たしてその原因は!?

    物理メモリ使用状況の把握には何を使う? では、ストレージとの同期情報まで加味したメモリの使用状況監視を行うには、どうすればよいのでしょうか? 実は現在(注2)のところ、「これで完ぺき」という方法はありません。ただ、それでは困るので、ここでは次善の策としてActiveとInactiveを監視する方法を挙げます。 ActiveとInactiveはvmstat -aやcat /proc/meminfoなどと入力することで取得できます(図5)。 Activeはページキャッシュや無名ページ(注3)のうち、最近利用したり、まだストレージとの同期が取れていない「捨てられない」ページです。Inactiveは、同じくページキャッシュや無名ページのうち、最後にアクセスされてからある程度時間がたち、ストレージとの同期も完了していて、すぐに捨てられるページです。よって、/proc/meminfoの出力でいうところ

    減り続けるメモリ残量! 果たしてその原因は!?
    uchida75cm
    uchida75cm 2013/12/06
    メモリーのキャッシュ(cache)解放
  • Linux のメモリー管理(メモリ―が足りない?,メモリーリークの検出-防止)(Kodama's tips page)

    サ−バ等に使っているPC のメモリが十分かどうか気になる事は多いと思う. 調べ出すと フリーメモリーの不足や SWAP にメモリーがはみだしている様子など 心配な事がいろいろでて来る. PC の動作が遅くなる原因は様々な要因が絡み合っているので, 表面に現れた症状だけでは効果的な対策が分からない事もある. 以下では, メモリ−関連にしぼって解説する. メモリの状況を調べる メモリ−は十分なはずなのに 余裕が無い? どのプロセスがメモリを消費しているのか? メモリーのリークを検出する方法? 防止する方法? メモリ−は十分なはずなのに SWAP を使ってる? じゃ, 当のメモリ−不足はどうしたら分かるの? メモリーと SWAP 領域はどのくらい確保すると良いのか メモリの状況を調べる メモリの利用状況を調べる方法は, free, top, ps, vmstat, /proc/meminfo

    uchida75cm
    uchida75cm 2013/12/03
    メモリー管理(swap/仮想メモリー)
  • Command Technica:はじめてrsyncを使う方が知っておきたい6つのルール (1/2) - ITmedia エンタープライズ

    Linuxなどを利用する上で、「これはどうやったら実現できるのだろう」と思うことは数知れない。連載では、ユーザーがひんぱんに遭遇するであろう問題と、その解決方法を解説する。上級者には新たな発見を、初心者には上級者への道の手引きとなるだろう。 ファイルやディレクトリをバックアップ/同期するためのツールは幾つも存在していますが、rsyncはとりわけ大きな人気を誇っているといってよいでしょう。変更分を検出して差分のみを転送することで、ネットワーク経由でも効率的にバックアップ/同期が行える点や、sshなどのリモートシェル経由での利用が可能な点など、機能の洗練度はさすがに登場から10年以上たっているだけのことはあります。バックアップやミラーリングなどの用途であれば、基的にはコピー元とコピー先でわずかな違いしか発生しないはずで、ファイルの相違部分だけを転送するrsyncは効率的に機能します。 そん

    Command Technica:はじめてrsyncを使う方が知っておきたい6つのルール (1/2) - ITmedia エンタープライズ
    uchida75cm
    uchida75cm 2013/11/24
    rsyncの基本
  • muninグラフの読み方と意味 | シーズクリエイターズブログ

    サーバー監視ツール「munin」の各グラフの意味と読み方。 muninをインストールすると標準でたくさんのグラフが出力されます。中には聞いた事もない単語のグラフもあり、 「いったいこれは何なのか」と疑問に思っていたので調べてみました。 グラフはすべてplugin (/etc/munin/plugins) の内容から出力されていて、さらにそのほとんどが単なるperlスクリプトやシェルスクリプトでした。このpluginが実際はどのようなコマンドを使った結果なのかを確認しながら調べました。プログラムにはあまり明るくない&英語が苦手、なので意味違いしている可能性がありますのでお気づきの点がありましたらコメントを頂けると嬉しいです。 使用したmuninバージョンは1.4.5です。 ほとんどの値は /proc/以下から参照されているようで以下のページがとても役に立ちました。 Man page o

    uchida75cm
    uchida75cm 2013/10/28
    各Muninグラフの説明
  • ICMPタイプ

    Appendix C. ICMPタイプ以下が ICMPタイプ の全リストだ。そのタイプ/コードの組み合わせを発表した RFC または人物も示しておいた。 ICMP タイプ/コードの最新版の完全なリストが見たいのならば Internet Assigned Numbers Authority の icmp-parameters をご覧いただきたい。 Iptables 及び netfilter は内部的にタイプ 255 の ICMP を使用する。タイプ 255 は他のどこでも実用に供されされておらず、また、今後も使用される見込みもほぼないからだ。 iptables -A INPUT -p icmp --icmp-type 255 -j DROP というルールをセットしたとすれば、ICMP パケットは全て DROP される。つまり、このルールは全ての ICMP パケットをマッチさせたい時に利用でき

  • RH-Firewall-1-INPUTとは? - OKWAVE

    INPUT OUTPUT FORWARD などは、ご存じのとおりiptablesのチェーン名として意味のある単語ですが、 「RH-Firewall-1-INPUT」は、適当につけたラベル名です。 この文字列はどんなものに変更しても大丈夫です。 たとえば 「MY-FIREWALL-SETTINGS」 なんかでも大丈夫です。 ではなぜラベル名なんかを定義しているかというと、 一般的にはINPUTチェーンとFORWARDチェーンには、 設定として全く同じものを定義します。 たとえば、HTTPを許可する場合は、 -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A FORWARD -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT というように2つ分記述する

    RH-Firewall-1-INPUTとは? - OKWAVE
  • iptables のコマンド書式

    22.2. iptables のコマンド書式はじめに、フィルタリングのルールを設定する iptables のコマンド書式を解説します。iptables は以下の書式で実行します。 COMMANDSchain に指定したチェインにルールを追加するのか、それとも削除するのかといった処理を指定します。 chainルールを設定するチェインを指定します。 rule-specificationチェインに入ってきたパケットが満たすべき条件を指定します。 targetrule-specification で指定した条件とマッチしたパケットに対する処理を指定します。

  • 今更聞けないCapistranoでリリースの自動化 - プログラマでありたい

    ここ数年で開発の現場でAgile開発の文化や手法が、ずいぶんと取り入れられるようになってきているようです。アジャイル開発はその根底に文化が大事ですが、それを支えるツールというのも重要になってきます。ソース管理やビルド管理、テストの自動化と色々ありますが、今回はリリースの自動化のお話です。その中で主にRails使われることが多いCapistranoの設定と使い方です。 環境の説明 ・Ruby 1.9 ・Rails 3.2 ・Passenger ・GitSQLite3 目指す構成 今回は単純化する為に、1サーバの中にGitのリポジトリもApache+PassengerもDBも入れておきます。また複数の環境(開発、ステージング、番)にデプロイ出来るように、それぞれの構成を別けて記述するようにします。(capistrano-extを使用) 設定 必要モジュールのインストール $gem ins

    今更聞けないCapistranoでリリースの自動化 - プログラマでありたい
  • chef-solo はじめてのLinux環境構築の自動化入門 | Act as Professional

    環境構築を自動化すれば数分でサーバ構築して投入できますよ?@HIROCASTERでございませう。 vagrantで開発環境(仮想マシン)を自動構築しようの記事で、仮想マシンにchefやpuppetを自動的に実行させて開発環境を自動で構築する手順を紹介しました。 環境構築を自動化する内容をchefであれば、レシピと呼ばれるものを、puppetであればマニフェストと呼ばれるものを記述しなければなりません。 今回はパッケージ(NTP)を導入して、NTPの設定ファイルを自動的に配備して、サービスを立ち上げるという環境構築の自動化をchef-soloを使って、紹介したいと思います。基的に他のソフトになっても手順は同じです。参考にしてください。 chefとchef-soloの違いchefはクライアントとサーバの形を取っており、chefを実行するためにはサーバにレシピや付随する数多くのデータがなければ

    chef-solo はじめてのLinux環境構築の自動化入門 | Act as Professional
  • DevOpsとはどんなもので、何が議論されているのか(前編)

    開発と運用の対立を越え、ビジネスのために協力し合う。「DevOps」ムーブメントをテーマにしたイベントが2月24日に都内で行われました。 IT業界がパッケージソフトウェアからオンラインサービスへと転換しつつある中で、優れたサービスを迅速に実現する重要なキーワードとしてDevOpsは注目されはじめています。 この記事では、日でDevOpsの普及に努めている森川裕和氏(@nxhack)の講演をダイジェストで紹介しましょう。 眠れない管理者の悩みは世界共通 会場で、自分が運用の人は?(3割くらい)。では開発の人は?(8割くらい)。ではビジネスマンの人は?(2~3人)でも、これは全員のはずですよね。 これが今日のプレゼンの原点になります。 私はWebの運用やネットワークのBGPの運用までやっていたことがある、いわゆる「眠れないシステム管理者」でした。で、システムがスケールしないよね、とか、やっぱ

    DevOpsとはどんなもので、何が議論されているのか(前編)
  • DevOpsとはどんなもので、何が議論されているのか(後編)

    開発と運用の対立を越え、ビジネスのために協力し合う。「DevOps」ムーブメントをテーマにしたイベントが2月24日に都内で行われました。 IT業界がパッケージソフトウェアからオンラインサービスへと転換しつつある中で、優れたサービスを迅速に実現する重要なキーワードとしてDevOpsは注目されはじめています。 この記事では、日でDevOpsの普及に努めている森川裕和氏(@nxhack)の講演をダイジェストで紹介しましょう。 (この記事は「DevOpsとはどんなもので、何が議論されているのか(前編)」の続きです。 クラウドで、インフラにもアジャイルが入ってきた デベロッパーには、2001年からの十何年かのアジャイル開発の議論やノウハウがあります。では運用にはアジャイルな運用のノウハウはあるの? インフラというのは固いところがあって、どうしようもないところがあります。例えば、新しい機能を追加する

    DevOpsとはどんなもので、何が議論されているのか(後編)