• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:パフォーマンス・レスポンス向上技法勉強方法)

パフォーマンス・レスポンス向上技法勉強方法

このQ&Aのポイント
  • システムのレスポンス向上技法を効果的に学ぶ方法とは?
  • 既存システムのボトルネック調査や新規開発時の注意点を学びましょう。
  • AccessやExcelを使用する環境でも効果的な学習方法があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • AKARI0418
  • ベストアンサー率67% (112/166)
回答No.1

基本情報技術者試験ならびに応用情報技術者試験の勉強をなさってみてはどうですか? 総合的にといわれると、そうなってしまうと思います。 DBについては、AccessとOracle, SQLServerで大きく2分されてしまいます。 システムのレスポンスに着目するのであれば、プロバイダーの性能を勉強していくと良いと思います。 Jet,OLEDB,0040等です。 Jetはネットワークでのアクセスに向かない理由がわかると思います。 0040は早いが、OLEDBは便利などです。 DBソフト選択 かけられるお金で決めてください。 クライアント数にもよりますが、金額面で差が大きいです。 お金を気にしないのであれば、 Oracle>SQLServer>Access 個人的には、Accessを使うくらいなら、CSVファイルを使います。 システムのボトルネックの考え方 http://www.atmarkit.co.jp/fnetwork/survey/survey07/network1.html ボトルネックになりえる部分はそう多くないと思います。 サーバーの性能 対処、サーバーの強化、負荷分散、機能分散(アプリケーションサーバーとDBサーバーの切り離しなど) DBエンジンのレスポンス 対処、サーバーの強化、DB構成の再検討 ネットワークトラフィック 対処、ネットワーク回線の強化、負荷分散 クライアントサーバーで考えるなら三層アーキテクチャの構成を勉強されると良いでしょう。 根本的な話ですが、VB6.0の時点でパフォーマンスが非常に低いです。 .NetFramework等に移行したほうが良いと思います。 VB.NETでは格段にパフォーマンスが向上されています。 VB6.0で速度の向上をめざすなら、 たとえば For 構文で使用するループ変数はコンパイラ上long関数ですので、ループ変数にInteger方の変数を使用すると、IntegerからLongへの型変換が自動で行われるため、Nミリセカンド遅くなる。 IF str = "" then より If str = vbNullString Then のほうが早い とか、 Format(),Left(),Right(),Dir()などの引数はバリアント方であるため、 Format$(),Left$(),Right$(),Dir$()などの引数を文字列固定にしたほうが早い。 こういうことを意識して組んでいくということですよね、 よっぽど非効率な組み方をしていない限り、全部改善しても、1秒も変わらないと思います。 SQLですが、プログラム中で、編集や計算したほうが、断然速いです。 ただネットワークを介した場合、データ量が変わりますよね、このあたりの調整が大事だと思います。 Table A(a,b,c) SELECT * FROM A より SELECT A.a,A.b,A.c FROM A のほうが早いとかありますが、データ量が少なければ、速度はほとんど一緒ですよ。 話がまとまりませんでしたが、これを勉強すれば全てがわかるというものはありません。 一つ一つ地道にやるしかありません、お互いがんばりましょう。

mini0524
質問者

お礼

周りにアドバイスを聞ける人がいないため大変困っていました。 詳しくありがとうございました。 1つずつ、経験をつみながら学んでいきたいと思います。 どれもとても勉強になりました。 まずは教えていただいた内容を考えることと、全体的な知識向上に 技術者の勉強もしてみようと思います。 望まれるレスポンスを提供できる環境を提案できるように 開発言語の特徴に関しても学んでみます。

関連するQ&A