タグ付けされた質問 「performance」

サーバーのハードウェアとソフトウェアのパフォーマンス、またはネットワークのパフォーマンスに関する質問。

4
RabbitMQとZeroMQまたは他の何かを選択する方法は?
ロックされています。この質問とその回答はロックされています。なぜなら、質問はトピックから外れていますが、歴史的に重要だからです。現在、新しい回答やインタラクションを受け入れていません。 高速で信頼性が高く、マシン全体に分散できるキューイングシステムを探しています。プラットフォームはLinuxです。オープンソースが望ましい。 RabbitMQとZeroMQはどちらも良いように見えますが、これらまたは他のキューシステムの経験はありません。私を正しい方向に向けることができますか?

4
Linuxバックグラウンドフラッシュの制限(ダーティページ)
Linuxでのバックグラウンドフラッシュは、書き込まれたデータが多すぎる(/ proc / sys / vm / dirty_background_ratioで調整可能)か、保留中の書き込みのタイムアウトに達した(/ proc / sys / vm / dirty_expire_centisecs)場合に発生します。別の制限(/ proc / sys / vm / dirty_ratio)に達していない限り、より多くの書き込みデータがキャッシュされる場合があります。それ以上の書き込みはブロックされます。 理論的には、これにより、他のプロセスに影響を与えることなく、ダーティページを書き込むバックグラウンドプロセスが作成されるはずです。実際には、キャッシュされていない読み取りまたは同期書き込みを行うプロセスを妨害します。ひどく。これは、バックグラウンドフラッシュが実際に100%のデバイス速度で書き込みを行い、この時点で他のデバイスリクエストが遅延するためです(道路上のすべてのキューと書き込みキャッシュがいっぱいになるため)。 フラッシュプロセスが実行する1秒あたりの要求量を制限する方法、または他のデバイスI / Oを効果的に優先する方法はありますか?

2
書き込まれているファイルを確認します(iotopのようですが、プロセスではなくファイル用)
Linuxサーバーを使用していますが、多くのディスクioを実行しています。ほとんどのディスク書き込みを行うプロセスが1つあります。これを見つけiotopたのは、ディスクI / Oを実行しているプロセスを示しています。どのファイルが書き込まれているのかを示す同等のプログラム(debian lenny aptリポジトリー内)はありますか?「トップ」のようなインターフェースは素晴らしいでしょうか?これも可能ですか?

5
memcacheデーモンのプールを使用してセッションをより効率的に共有できますか?
1台のWebサーバーのセットアップから2台のWebサーバーのセットアップに移行しているため、2つの負荷分散マシン間でPHPセッションの共有を開始する必要があります。すでにmemcachedがインストールされており(開始されているため)、php.iniファイル内の3行のみ(session.save_handlerおよびsession.save_path)を変更するだけで、新しいサーバー間でセッションを共有できることに驚きました。 私は置き換えました: session.save_handler = files で: session.save_handler = memcache 次に、マスターWebサーバーでsession.save_pathlocalhostを指すように設定します。 session.save_path="tcp://localhost:11211" スレーブWebサーバーではsession.save_path、マスターを指すように設定します。 session.save_path="tcp://192.168.0.1:11211" 仕事は終わった、私はそれをテストし、それは動作します。しかし... 明らかにmemcacheを使用するということは、セッションがRAMにあり、マシンがリブートされるかmemcacheデーモンがクラッシュすると失われることを意味します-これには少し懸念がありますが、2つのWebサーバー間のネットワークトラフィックを特に心配しています(特になぜなら、誰かがスレーブWebサーバーに負荷分散されると、そのセッションはマスターWebサーバーからネットワークを介してフェッチされるからです。save_pathsネットワークを使用する前にマシンが独自のセッションストレージを検索するように2つ定義できるかどうか疑問に思っていました。例えば: マスター: session.save_path="tcp://localhost:11211, tcp://192.168.0.2:11211" スレーブ: session.save_path="tcp://localhost:11211, tcp://192.168.0.1:11211" これにより、サーバー間でセッションが正常に共有され、パフォーマンスが向上しますか?つまり、ネットワークトラフィックを50%節約します。または、この手法はフェイルオーバー専用です(たとえば、1つのmemcacheデーモンに到達できない場合)。 注:memcacheの複製について具体的に尋ねているわけではありません-PHP memcacheクライアントがプール内の各memcacheデーモン内でピークに達し、見つかった場合はセッションを返し、見つからない場合のみ新しいセッションを作成できるかどうかすべての店で。私がこれを書いているとき、私はPHPに少し質問していると思っています、笑... 想定:スティッキーセッションなし、ラウンドロビンロードバランシング、LAMPサーバー。

11
ハードウェア支援の仮想化を無効にする理由はありますか?
最近、デルから多数のサーバーがあり、そのすべてでBIOSでハードウェア支援仮想化が無効になっています。 私の知る限り、ハードウェア支援による仮想化は良いことです-では、なぜデルはそれを無効にするのでしょうか?マシンが仮想マシンホストとして機能していない場合、パフォーマンスのオーバーヘッドがありますか?セキュリティ上の問題はありますか? 回答に関連する場合、主に使用します: ホストOS:Windows Server 2003 Enterprise R2(32ビット) ゲストOS:Windows Server 2003 Enterprise R2(32ビット) VMM:Virtual Server 2005 Enterprise R2 SP1

2
Windowsパフォーマンスモニターでカウンターの設定を保存する方法
Windowsパフォーマンスモニターには、包括的で複雑なパフォーマンスカウンターのセットが必要です。この時点で、パフォーマンスモニターを使用するたびに、カウンターを1つずつ追加する必要があります。カウンターセットを保存し、後で使用するときに読み込む方法はありますか?ありがとうございました、

3
x86 / x64仮想化にはどのくらいのオーバーヘッドがありますか?
Intelハードウェア仮想化を使用するWin64ホストおよびLinux64ゲストの各操作に対して、x86 / x64仮想化(おそらくVirtualBox、おそらくVMWareを使用し、間違いなく準仮想化ではありません)のオーバーヘッドはどれくらいですか? 純粋にCPUにバインドされたユーザーモードの64ビットコード 純粋にCPUにバインドされたユーザーモードの32ビットコード ハードドライブへのファイルI / O(主にスループットではなく、待ち時間が重要です) ネットワークI / O スレッド同期プリミティブ(ミューテックス、セマフォ、条件変数) スレッドコンテキストスイッチ アトミック操作(lockプレフィックスの使用、比較とスワップなど) 私は主にハードウェア支援のx64ケース(IntelとAMDの両方)に興味がありますが、非支援のバイナリ変換やx86(つまり32ビットのホストとゲスト)のケースについても聞いてみませんか。準仮想化には興味がありません。

9
完全なハードドライブ暗号化はパフォーマンスにどのような影響を与えますか?
ここにはHPノートブックがあります。HPのハードドライブ暗号化を有効にして、紛失/盗難の場合にクライアントデータベースとIPを保護することがポリシーです。 このような状況でパフォーマンスヒットの証拠があるかどうか疑問に思っていましたか?マシンは主に開発ワークステーションとして使用されます。ここでの事例証拠は、マシンが遅いことを示唆しています。 別のアプローチ(つまり、ディスク全体ではなく機密データのみを暗号化する)を使用する必要がありますか?

1
アプリケーションのVMwareパフォーマンス要件をVMware管理者に説明する方法
多くの場合、オンサイトのdebian-stableベースのアプリケーションのインストールは、仮想マシン(通常はVMware ESXi)で実行されます。一般的なケースでは、仮想化環境に対する可視性や影響力はなく、VMware vCenterクライアントや同等のものへのアクセスもありません。ここではVMwareに焦点を当てます。これは、私たちが目にする最も一般的な方法だからです。 私たちがしたいこと: お客様のVMware管理者に伝える:パフォーマンス基準X、Y、Zを満たしている限り、VMware ESX環境などでアプリケーションを実行できます。 実行中のシステムであっても、基準X、Y、Zが実際に継続的に満たされているかどうかを判断できます(たとえば、現在も)(アプリケーションを停止してベンチマークを実行することはできません。仮想環境は時間とともに変化します)。 基準X、Y、およびZが満たされた場合、十分なパフォーマンスでアプリケーションを実行するための適切な仮想HWリソースがあることを確信してください。 X、Y、Zとは何ですか? パフォーマンスの問題がある場合、問題はアプリケーションではなく、仮想化環境にあることが何度もあります。たとえば、別の仮想マシンが大量のCPU、メモリ、またはディスクが実際に格納されているSANを使用している場合、アプリケーション以外のものが頻繁に使用します。現在、それを証明または反証する方法はありません。 理論的には、アプリケーションが遅い場合もあります... ;-) パフォーマンスの問題の根本的な原因(仮想環境またはアプリケーション)をどのように判断しますか? 通常、CPU、メモリ、およびディスクI / Oのパフォーマンスの問題には3つの領域があります。 CPU たとえばVMwareでは、管理者はMHzで表される予約と制限を指定できますが、たとえば、あるESXホストの512MHzは別のESXホストの512MHzとまったく同じです。 そして、私たちが実際にそれを得るかどうかをどのように測定しますか?アプリケーションの実行中に、おそらく4つのCPUで212%のCPU使用率になっていることがわかります。私たちのアプリケーションが多くのことをしているからか、同じホスト上の別のVMがCPUを集中的に使用してすべてのCPUを使用しているからでしょうか? メモリー(バルーニング?) たとえば16GB RAMを要求すると、多くの場合構成されますが、バルーニングのために、実際には4GBしか得られず、驚くことに、アプリケーションのパフォーマンスが低下します。 VMwareツールに現在のバルーニングについて尋ねることができますが、それはしばしば嘘をつく(または少なくとも不正確である)ことがわかりました。OSが合計16GBのRAMがあり、すべてのプロセスの常駐メモリ(RSS)の合計が4GBのRAMであると考える例を見てきましたが、VMwareツールからバルーンが0であると通知された場合でも2GBのRAMしかありません: -( また、コピーオンライトメモリなどの共有RAMが簡単に存在する可能性があるため、RSSを一緒に追加するだけでは有効ではありません。そのため、すべてのプロセスからRSSを単純に差し引いて、RAMの空き容量を測定し、バルーニングを確実に検出することはできません。バルーニングのいくつかのケースを検出できますが、バルーニングが有効であるが、この方法では検出できない他のケースがあります。 ディスクI / O ディスクの読み取りと書き込みの数、読み取りと書き込みのバイト数、およびIO待機%を経時的にグラフ化できると思います。しかし、それはディスクI / Oの正確な状況を教えてくれますか?すべてのCPUを使用する別のVMでビットコインマイナーが実行されている場合、CPUリソースが低下し、IO待機(%で測定されます)上がります。 要約すると、VMware管理者などに、どの言語を使用してどのようなパフォーマンスが必要かを、ポータブルで測定可能な方法で説明できますか?

2
高ディスクI / O-jbd2 / sda2-8プロセス
CentOS 5.8最終サーバーでファイルサーバーを実行しました。 現時点での唯一の懸念は、jbd2 / sda2-8プロセスのために断続的ではあるが継続的な高ディスクI / Oアクティビティが一般的なスローダウンを引き起こすように見えることです。 jbd2 / sda2-8は、最初のハードドライブの2番目のパーティション(IE:ルートパーティション)である/ dev / sda2を使用しています。 詳細: "iotop"を使用すると、犯人は "jbd2 / sda1-8"で1秒ごとに書き込みを行うように見えます。 「jbd2 / sda2-8」が時々表示されますが、3秒ごとではありません。アイドル状態のときは、1分間に1〜2回表示されます。システムを使用している場合、より頻繁に表示されます。 ATOPの結果:http ://grabilla.com/02b14-8022db2e-4eb9-4f10-8e10-d65c49ad7530.png IOTOPの結果:http ://grabilla.com/02b14-cf74b25d-4063-4447-9210-7d1b9b70e25b.png HTOP結果:http ://grabilla.com/02b14-ad8cad0e-89b0-46d3-849d-4fd515c1e690.png jbd2 / sda2-8は、iotopがまったく使用されていなくても、ディスクに書き込みを行うiotopで見られるプロセスです。 誰かがjbd2 / sda2-8プロセスによって引き起こされる高いディスク使用量をどのように解決できるか考えていますか?

2
CPU時間とCPU使用率は同じですか?
CPU時間の Wikipediaページでは、 CPU時間は、クロックティックまたは秒で測定されます。多くの場合、CPU使用率と呼ばれるCPU容量の割合としてCPU時間を測定すると便利です。 期間をパーセンテージで置き換える方法がわかりません。を見るとtop、2.17のコアを使用し%CPUていることMATLABはわかりませんか? PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 18118 jasl 20 0 9248400 261528 78676 S 217.2 0.1 8:14.75 MATLAB 質問 CPU使用量をよりよく理解するために、CPU使用量を自分で計算するにはどうすればよいですか?

4
ramfsとtmpfsのパフォーマンスの違い
多くの100 kbの単一ファイル(イメージ)で構成される約10 GBのデータ用に、メモリ内ストレージシステムをセットアップする必要があります。多くの読み取りとかなり定期的な書き込みが行われます(新しいファイルの追加、古いファイルの削除)。tmpfsは通常のファイルシステムのように動作する ことを知っています。たとえば、dfを使用して空き領域や使用済み領域を確認できます。これは便利な機能です。しかし、ramfsがIO操作の速度に関していくつかの利点を提供するかどうかに興味があります。ramfsを使用する場合、消費されたメモリのサイズを制御できないこと、および空きRAMを完全に消費するとシステムがハングすることがありますが、このシナリオでは問題になりません。 要約すると、私は興味があります: -パフォーマンスの面で、どちらが速いか:ramfsまたはtmpfs(そしておそらくその理由)? -ときはないtmpfsのは、スワップ領域を使用できますか?既に保存されているデータをスワップ(現在実行中の他のプログラム用にRAMを解放するため)に移動するか、その時点で空きRAMが残っていない場合は新しいデータのみを移動しますか?

4
stdinから1秒あたりの行数をカウントするUnix / Linuxコマンドはありますか?
ログファイルから1秒あたりのSQLクエリの数を数えようとしていますが、grepからstdoutをコマンドにパイプすることでリアルタイムでそれを行いたいと思っています。(私はいくつかのパフォーマンステストを行っています) 私は自分でそれを書くことができましたが、これは確かに存在すると考えました。 wcを見ましたが、これを許可するオプションが見つかりませんでした。 また、アクセスログからテールをパイプすることで、1秒あたりのリクエストをカウントするために使用できます。

8
Linux Webサーバーのスワップを完全にオフにする必要がありますか?
最近、私の友人は、十分なメモリのあるLinux Webサーバーでスワップをオフにすることをお勧めします。私のサーバーは12 GBであり、現在、ピーク負荷の下で4 GB(キャッシュとバッファーをカウントしない)を使用しています。 彼の主張は、通常の状況ではサーバーはそのRAMをすべて使用しないため、OutOfMemory状況に遭遇する唯一の方法はバグ/ ddos​​ / etcによるものであるということでした。スワップが投入された場合にはそうオフシステムは、最終的にはプログラムのホギングメモリ(ほとんどの場合、Webサーバー・プロセス)と、おそらくいくつかの他のプロセスがクラッシュすることメモリ不足になります。スワップがオンになっている場合RAMとスワップの両方を消費し、最終的には同じクラッシュを引き起こしますが、その前にsshdのような重要なプロセスをオフロードしてスワップし、多くのスワップ操作を開始して大幅なスローダウンを引き起こします。この方法では、ddosシステムの下で大きな遅延のために完全に使用できない状態になる場合があり、ログインしてWebサーバープロセスを強制終了したり、すべての着信トラフィック(ssh以外)を拒否することはできません。 これは正解?何かが足りませんか(スワップパーティションは、十分なRAMがあったとしても、ある意味で非常に便利です)。オフにする必要がありますか?

8
Linux NFSサーバーのパフォーマンスの分析
NFSサーバーを分析して、アプリケーションの潜在的なボトルネックを追跡したいと思います。サーバーはSUSE Enterprise Linux 10を実行しています。 私が知りたいのは次のようなものです: どのクライアントがどのファイルにアクセスしているか クライアントごとの読み取り/書き込みスループット 他のRPC呼び出しによるオーバーヘッド クライアントにサービスを提供するために他のNFS要求またはディスクI / Oで待機した時間 私はすでに利用可能な統計について知っていて/proc/net/rpc/nfsd、実際、それらを詳細に説明するブログ記事を書きました。私が探しているのは、特定のクライアントが見るパフォーマンスに貢献している要因をより深く掘り下げて理解する方法です。NFSサーバーがクラスター上のアプリケーションのパフォーマンスで果たす役割を分析して、最適化の方法を考えたいと思います。
22 linux  performance  nfs 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.