JAVAのパフォーマンスの最適化と分散アーキテクチャの展開

まず、設計最適化JAVAののパフォーマンスの最適化 
、上のパフォーマンスの最適化設計の最適化を意味しています。それは多くの場合、ソフトウェア開発の前に場所を取る必要があります。ソフトウェア設計とシステムアーキテクチャがソフトウェアZongtishejiの品質に決定的な影響を持っているので、ソフトウェアの開発に先立ち、システムアーキテクトは、様々な潜在的な問題やシステムに存在し、かつ合理的な設計を与えることが技術的な問題を評価する上でなければなりません。そのため、システム設計のパフォーマンスチューニングに影響を与え、それがコード最適化することを想定し、また最大です。JVM最適化されたシステムは、その最適化システムの「品質」の設計を最適化することで、ミクロレベルの「量」のために最適化された 
大型の顕著な特徴の設計の最適化である:それは、パフォーマンスの問題を一つのコンポーネントを回避することができるが、変性成分実装;例えば:低いものの、開発者は、検出頻度が低すぎると仮定すると、バランス周波数検出とリソース消費を打撃しなければならないので、成分Eが動作を検出サイクルモニタリングを通じて発生した連続的な検出時間は確かに、システムリソースの一部を占有しますリソースの消費量が、システムのリアルタイムの応答が低下する、それがコード層を想定チューンで、この問題の検出方法の検出頻度を得るために必要な最も適切なを実現し、最適化する必要性に、私たちは、デザインパターンを観察することができますEが発生するイベントの時間、イベント通知成分E aは、それによって構成要素の動作をトリガモードで。この設計は、基本的に、基本的にこの問題を克服するために、パフォーマンスモニタ上のリスクが存在するサイクルを克服する。 
設計最適化、および設計者は、頻繁に使用される設計手法、デザインパターン、および頻繁に使用される主要なコンポーネントと性能の利点に精通している必要があり ソフトウェア・システムに統合有機的アイデア、とは。 
注:良いシステム設計パフォーマンスの問題に多くの可能性を回避することができ、したがって、システム設計上のいくつかの時間を過ごすために、できるだけ多くは、高性能のプログラムを作成するための鍵です 
第二に、JAVAコード最適化のパフォーマンスの最適化 
ソフトウェアの開発にチューニングコード、または開発されたソフトウェア、ソフトウェアの改善およびプログラムコードの最適化は、メンテナンス時に行われる。コードの最適化は、多くの符号化技術に精通し、開発者のための必要性を必要とします言語のAPI、そしてシーンはAPIやライブラリの正しい使用に関連している。同時に、アルゴリズム、柔軟なデータ構造でなく、コードの最適化の重要な部分を。 
パフォーマンスコードマイクロ調整の最適化が、「良い」の影響で、システムの「悪い」の実装を実現するには非常に大きいですが。例えば、ランダムアクセスではリスト、LinkedListはArrayListのと同じを達成するためにしかし、オーダーのいくつかのパフォーマンスの低下;同じアナロジーは、ストリームモードやJAVA NIOの使用の方法を使用してファイルを読み書き実現することで、システムが十分にあった大きさの順であることができるかもしれない 
ためには、最適化とデザインを比較したが、 、私はミクロレベルでの最適化コードの最適化となりますが、それは、システムのパフォーマンスの最適化に最も直接的な影響である。 
3、最適化されたJVM 
のJavaソフトウェアは、常にJVM仮想マシン上で実行されるため。仮想マシン用に最適化されたJVMもある程度のJAVAプログラムのパフォーマンスを向上させることができます。JVMは、ソフトウェア開発の開発フェーズの完了で、またはマイルストーンとして、通常、後半ソフトウェア開発のことができます。 
Javaソフトウェアの実行プラットフォームとして。JVMパラメータは、直接JAVAプログラムのパフォーマンスに影響します。

例えば、JVMのヒープサイズなので、上のガーベジコレクションのポリシーと。 
チューニングJVMレベルに。開発者は、原則と基本的なJVMのメモリ構造の実装をある程度理解している必要があります。例えば、ヒープメモリ構造、GC等の種類。その後、プログラム参照の特性に応じました。合理的なJVMの起動パラメータを設定します。


IV。最適化されたデータベース 
アプリケーションの大半のために。データベースが不可欠です。JDBCの方法を使用してデータベースに接続するJavaプログラム。データベースのチューニングは、3つの部分に分けることができます。

  • アプリケーション層では、SQL文を最適化します。
  • データベースを最適化します。
  • データベース・ソフトウェアの最適化。

アプリケーション層で最適化されたデータベースへのアクセス。プログラミングのスキルの多くが含まれます。たとえば。多数のためのJDBCクエリのSQLクエリを使用した場合と同じ構造がPerparedStatement文を置き換えるために使用することができました。データベースクエリの効率を改善するため。使用中のSelectステートメント、表示欄の名前を使用*を避けるために、照会する 
データベースの最適化で、主な目的は、優れたデータベースのテーブル構造を確立することです。

例えば、カスケードマルチテーブルクエリ、合理的に冗長なフィールドの利用効率を向上させるために、大規模なテーブルの場合、水平分割線または類似の技術のOracleパーティションを使用することが可能であり、データクエリの効率を改善するために分割された有効なレベルを確立することができますOracleのパーティションテーブルまたは類似技術;データベースクエリの効率を改善するためです。SELECT文で。照会する列名を表示し、*の使用を避けます。 
データベースの最適化。主な目的は、優れたデータベースのテーブル構造を確立することです。例えば、マルチテーブルクエリカスケードの効率を向上させるために、合理的に冗長なフィールドを使用することができます。大きなテーブルの場合。データベースクエリの効率を向上させるため、及び効果的事項インデックス確立するために、別々のデータラインレベルに使用することができる 
JAVA CaozuojitongのV.の最適化パフォーマンスの最適化 
Caozuoxitong、チューニング・ツールとデータをメインストリームでは、例えば、異なっていてもよいですUnixシステム。共有メモリ・セグメント。セマフォは、共有メモリの最大値(SHMMAX)。共有メモリの最小値(SHMMIN)すべてのシステムリソースを最適化することが可能である。加えて、ファイルハンドルの最大数、仮想メモリのサイズとして、ディスクブロックサイズ及び他のパラメータは、ソフトウェアの性能に影響を与える可能性があります。仮想メモリインターフェイスを設定します

おすすめ

転載: www.cnblogs.com/java8899/p/11622741.html