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.
CakePHP 1.1.13.4450 + PHP 5系 + MySQL 4.1系にてテスト Job モデルは com_id フィールドがあって Com モデルに belongsTo Job を一覧表示するときに Com の name フィールドも表示したい Job.idJob.nameJob.com_id 1仕事A1 2きつい仕事2 3楽な仕事1 Com.idCom.name 1会社A 2会社B というデータから、 Job.idJob.nameCom.name 1仕事A会社A 2きつい仕事会社B 3楽な仕事会社A こんな感じの一覧を表示したいわけです。どうするのが効率が良いか。まず、Job モデルのアソシエーションを以下のように設定。 <?php class Job extends AppModel { var $name = 'Job'; var $belongsTo = array(
Squid2.6STABLE8以降は、"http_port" の "accel" オプションでリバースプロキシ(アクセラレータ)を指定するようになった。 Squid-2.5以前のアクセラレータモードの動作はまったく異なるため、引き続き使用する場合は2.6以降にアップグレードすることを強くお勧めします。 このページでは、リバースプロキシ(Reverse Proxy)を使った、Webサーバのパフォーマンス改善について示します。 このページは次のような章立てになっています。 1章ではリバースプロキシの概要、2章では普通のリバースプロキシと透過モードでのリバースプロキシの比較、3章ではリバースプロキシでのキャッシュの働き、4章ではSquidをリバースプロキシとして機能させる設定 1章、リバースプロキシの概要 2章、普通のリバースプロキシと透過モードでのリバースプロキシの比較 3章、リバースプロキシ
ちょっとキャッチ−なタイトルをつけてしまったが、今日は独断と偏見でMySQLを高速化する方法を10個紹介しよう。MySQLサーバをチューニングするときや初期導入する場合などに参考にしてもらいたい。 1. バッファを増やす、または減らす チューニングの基本中の基本であるが、適切なバッファサイズを設定することはパフォーマンスチューニングの要である。主なバッファは次の通り。 innodb_buffer_pool_size・・・InnoDBだけを利用する場合は空きメモリの7〜8割程度を割り当てる最も重要なバッファである。余談だが、実際にはここで割り当てた値の5〜10%ぐらいを多めにメモリを使うので注意が必要だ。 key_buffer_size・・・MyISAMだけを利用する場合は、空きメモリの3割程度を割り当てるといい。残りはファイルシステムのキャッシュ用に残しておこう。 sort_buffer_
スクリーンショットの表示 このアイコンの上にカーソルを置くと、すべてのスクリーンショットが表示されます。 各項目に関連するスクリーンショットのみを表示する場合は、それぞれのアイコンの上にカーソルを置いてください。 概要 トピック・リストに戻る Oracle Enterprise Managerの新機能であるSQLのチューニングおよび診断機能の特長 Automatic Workload Repository(AWR)は、問題の検出や自己チューニングなどを目的とするパフォーマンス統計を収集、処理、および管理します。 Automatic Database Diagnostic Monitor(ADDM)は、Oracleシステムの診断やチューニングに必要な労力を軽減します。 SQLチューニング・アドバイザの機能を使用して、SQL文を素早く効果的に最適化できます。 データを診断する監視の完了後、パフ
プロキシキャッシュサーバであるSquidの設定パラメータを用いてバイトヒット率を上げれば、利用可能な帯域幅を3~6割近くも拡大できる。Webサイトの最適化を考えるあなたにはまずこれを試してみていただきたい。 帯域幅の制限は、インターネットに接続している多くの人にとっていまなお残る問題の1つだ。しかし、プロキシキャッシュサーバSquidをネットワークにインストールし、設定パラメータを用いてバイトヒット率を上げれば、利用可能な帯域幅を3~6割近くも拡大できる。 Squidは、きめ細かいチューニングによってさまざまなニーズに対応できる。現行の安定版には少なくとも249個のパラメータがあり、丁寧なコメントがついた設定ファイル(通常は「/etc/squid.conf」)は4600行以上もある。このボリュームには、経験豊かな管理者でも圧倒されるだろう。設定の変更はすべてこのファイル上で行う。 1週間で
Webサイトでは一度の表示であっても、複数のコネクションで様々なデータが送信される。JavaScript、CSS、画像、Flashなどなど。コネクションが増えればそれだけ表示に時間がかかり、ユーザビリティは悪くなる。 コマンドラインで実行して連結する GoogleやAmazonでは回避策として複数の画像を一つにまとめ、CSSを使ってずらして表示する手法が使われている。それを実現するのがSmartSpritesだ。 今回紹介するオープンソース・ソフトウェアはSmartSprites、画像を連結してコネクションを改善するライブラリだ。 SmartSpritesはJava製のソフトウェアで、別途PHP版も提供されている。ルートディレクトリを指定すると、そこ以下にある画像ファイルを探索し、それらを結合してくれる。同時にそれを元のように表示するためのCSSも生成される。後は画像をそのまま表示する代わ
ここ数年の大規模サービスのシステム運用について調べてみたので参照したページやファイル、本へのリンクをまとめておく。PDF へのリンクも多数含まれているのでご注意を。 時代が時代なら企業のノウハウとして隠されていたような情報がこれだけ公開してもらえているというのが非常にありがたい。公開してくれている各企業や公開してくれている人に感謝。 あとで気付いたが、Google や Facebook の事例も探しておけばよかった。Thrift とかあったのに。「こんな情報もあったよ」などあればぜひ教えてください。追記していきます。 youtube http://d.hatena.ne.jp/stanaka/20070427/1177651323 digg http://d.hatena.ne.jp/stanaka/20070427/1177651323 livedoor http://labs.cybo
最新文章 2018-12-26 05:10▪ 龙岩一公交车遭劫持致5死应急办称嫌犯从居委会“逃出” 2018-12-26 05:10▪ 徐汇区科协第九次代表大会:发挥人才优势助推技术创新 2018-12-26 05:10▪ 山东将迎大风降温局部地区降温超10℃ 2018-12-26 05:10▪ 骗子称销赃低抛iPhoneX年轻候车人中了调包计买走模... 2018-12-26 05:10▪ 昆明首座装电梯天桥提供人性化便捷服务受欢迎 2018-12-26 05:10▪ 中组部要求:在元旦春节期间走访慰问生活困难党员、老党员、... 2018-12-26 05:10▪ 涉及30万人,葛洲坝集团宜昌基地六大类职能分离移交宜昌 2018-12-26 05:10▪ 央行:四季度88.8%的居民认为收入增加或基本不变 2018-12-26 05:10▪ 一男子高速“飙车”后拍视频晒微信群因涉嫌危险
ついに,MySQL 5.1.30 GA(GeneralAvailability)がリリースされた。MySQL5.0から3年の歳月をかけて,多くの新機能を搭載した意欲的なバージョンとなっている。 しかし,現時点では,多く(約180)のバグが残されている。そのため,本番システムに適用するには細心の注意が必要だ。米Sun Microsystemsでは,十分なテストを実施した上での本番システムへの適用を呼び掛けている。 MySQL 5.1はパーティショニング,イベントなど多くの新機能を搭載しているが,注目したい点は,レプリケーション機能の強化だ。今回は,MySQL5.1で信頼性の高い機能に成長したレプリケーション機能を紹介する。 MySQL 5.0までのレプリケーションと問題点 MySQLには,手軽なレプリケーション機能が搭載されている。構築が容易でレスポンスが高いことが特徴だ。これにより,データ
開発部・システム運用グループの長野です。最近は「サーバ/インフラを支える技術」を読みながら通勤しています。今回はmixiの画像配信について書かせて頂きたいと思います。1回目は画像配信の課題について説明させて頂きます。 ■画像配信の種類 これまで画像の配信は大きく分けて2種類あると考え、システムを構築してきました。1つは1ファイルあたりへのアクセスが非常に多くなりますが、ファイル数が少ないもの。もう一つはファイル数が膨大になる代わりに、1つのファイルへのアクセスは少ないものになります。 前者はmixiの中で使われるロゴ画像やメニューの画像等のページ部品、また広告画像や絵文字画像になり、後者はユーザがアップロードする日記やアルバムの画像にあたります。ページの部品の画像はファイル数はそれほど多くないものの、サーバへのアクセス数が最大で秒間に数万リクエストにもなります。逆にアルバムや日記の画像は全
最近、雨の日が続いて自転車通勤ができていない naoya です。 今日は、先週ぐらいからフォト蔵に導入した Apache で mod_expires と mod_rewrite を使ったウェブサーバへのアクセスを減らす方法を紹介します。 通常のウェブサーバは、更新されていないリリースに対してアクセスすると、ステータスコード 304 とIf-Modified-Since ヘッダをつけて応答データを返しますが、CSS や JavaScript など比較的更新頻度の少ないファイルに対して、毎回応答を返すのはウェブサーバから見ると無駄なアクセスです。 Apache の mod_expires と mod_rewrite を使うと、この無駄なアクセスをブラウザキャッシュを有効活用にすることにより、静的なファイルに対するアクセスを減らすことができます。 まず、仕組みから説明すると、とても単純で mod
Posted by: Hirotaka Ogawa @ February 16, 2007 05:42 PM | 前のエントリーで書いた方法だとブラウザによってはページをリロードするたびに待たされることになります。 mt-search.cgiをmod_cacheで超高速化する!! - Ogawa::Memoranda なんでかな?と思ったので、動的コンテンツ(この場合はURLにクエリ文字列を含む動的コンテンツ)へのリクエストに対する、(mod_cacheで実現された)サーバーサイドキャッシュの振る舞いをもう少し深追いしてみました。 サーバーサイドキャッシュがない場合 サーバーサイドキャッシュがない場合には、すべての動的コンテンツへのリクエストごとにレンダリングを行い、そのデータがレスポンスとして返されます。 動的コンテンツで、Last-Modified, ETagヘッダを含むレスポンスを行
キャッシュ制御の方法 サーバサイドからキャッシュを制御するには、以下の2つの方法がある。 HTTPヘッダによる制御 METAタグによる制御 まずは、これらがどのようなものか、軽くおさらいしておく。 ■HTTPヘッダによる制御 HTTPプロトコルでは、HTTPヘッダにさまざまな情報を格納することができる。そのうちいくつかの情報は、キャッシュ制御のためのヘッダである。リクエスト(クライアント→サーバ)用のものと、レスポンス(サーバ→クライアント)用、リクエスト/レスポンス共通のものが存在する。 ■リクエスト用 If-Modified-Since 日時を指定する。指定した日時より新しいコンテンツの場合のみデータを返却するようにサーバに指示する。ローカルキャッシュの最新確認に使用される If-None-Match 指定したエンティティタグに一致しない場合のみコンテンツを返却するようにサーバに指示す
New CakePHP 5.0 Chiffon. Faster. Simple. Delicious. What's new in version The migration guide has a complete list of what's new in. We recommend you give that page a read when upgrading. A few highlights from 5.0 are: PHP 8.1 required. Improved typehints across the framework. CakePHP now leverages union types to formalize the types of many parameters across the framework. Upgraded to PHPUnit 10.x
events.php.gr.jp 第36回PHP勉強会 本当はお盆休みの宿題だったものがズレこんだ発表ですが、やってきました。 おそらくこれまでの発表でもっとも準備に時間がかかった発表だったかなと思います。 会場に来ていない方は資料をぜひ見て頂ければと思います。(押しつけがましい) ついでにですが、負荷テストの結果をGoogleDocで公開しているのでこちらもあわせて。 発表資料ダウンロード(PDF) 負荷テスト結果資料 動画(見れないかも?) 今回はCakePHP1.1、CakePHP1.2RC2、CakePHP1.2 svn版、symfony1.0.18、pukiwiki、xoops、wordpressとさまざまなソフトウェアに対して簡易的な負荷テストを実行しています。 実稼働にどこまで近いかは不明ですが、xDebugのステップ数などとも相関があるようにみえるのである程度は普遍的な結果
フレームワークを使ってパフォーマンスに問題があったため、Plain PHPで書き直したという話です。 先日受信したメールの内容を.forward経由でDBを保存するという処理を実装しました。まあ良くある処理なのですが、このシステムではWeb側をCakePHPで実装していたので、メール処理もCakePHPのCLI機能(cakeコマンド)を利用しました。 実際に動作してみて数件程度では問題無かったのですが、負荷試験として短時間に数百件、数千件のメールを受信させると、LAが80程度まで跳ね上がりました。処理自体を見直したり、不要なSQLをカットしたりしたのですが、それほど大きな効果はありませんでした。 これはフレームワークの起動に時間がかかっていると判断し、CakePHPを使わずベタなPHPスクリプトだけで実装してテストすると、同じ負荷をかけてもLAが3-4程度まで落ちました。 timeコマンド
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く