You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
KLab Advent Calendar 2011 「DSAS for Social を支える技術」の7日目です。 @methane の新シリーズは Apache+php のチューニングです。 今日のお題は、タイトルのとおり、phpのプロセス数(=並列数)を減らすことです。 これはチューニンガソンでも人気のチューニングだったのですが、 今日はそのメリットをまとめます。 ロードアベレージが下がる プロセス数をコア数+α程度に抑えると、ロードアベレージがコア数の数倍〜 数十倍になることがなくなります。 例えばロードアベレージがコア数の100倍になると、1リクエストの処理に かかる時間は100倍以上に増え、せっかく処理したのにクライアント側が タイムアウトしていて完全に無駄骨になったり、最悪では再リクエストが来て さらに負荷が上がる負のスパイラルに陥る可能性があります。 たくさん一気に処理しよう
php前提。PHP はクソ。滅びろ。ruby はしらんが python か perl か java のほうがよっぽど楽。javascript は多分同じかもっと地獄。よいところ導入が安い動作環境的な意味でも、コード的な意味でも。置けば動くし、書けば動く。本当に何も知らん人間でもなんとか動く。エンジニアの頭数もそろえやすい。運用コストのスケーリングができるapache+mod_php だけでも普通に早い。apc 入れればそれだけで大抵のリクエストさばける。nginx+php-fpm+apc なんて環境にすればもっとさばける(と思う。まだ試してない。)最悪 HIPHOP-PHP でなんとかできることは Facebook が証明している。ドキュメントが読みやすいphp.net のドキュメントはテンプレートがしっかりしていて全部それにそっているので非常に読みやすい。邦訳も早い。よくないところ標準の
These are things in PHP which make me sad. They are real, objective issues which I have personally encountered in my normal day-to-day activites. Nothing on this site should be taken to be the view of my employer or is related to my employer in any way. If you'd like to contact me (in a polite and constructive way), I'm @ericwastl on Twitter. Update 2018-07-08: Updated reflection argument inspecti
3. XPathXML や HTML の任意の位置を取得するための式XPathエンジンがあれば、 XPathを指定して HTML 上の値を簡単に持ってこれる 4. XPath<?php$url = 'http://www.nicovideo.jp/';libxml_use_internal_errors(true);$doc = new DOMDocument();$doc->loadHTML(file_get_contents($url));libxml_clear_errors();$xpath = new DOMXPath($doc);foreach ($xpath->query('//a') as $node) { echo $node->textContent . "";}
Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su
柿の種が降ってきてあわててミドリゾウリムシを持って逃げる防空頭巾姿の白い生き物がクラスの定義ファイルを読み込む手段に spl_autoload_register() をお勧めする7つの理由。 2007年も残すところ一ヶ月を切り、PHP 4 の開発・メンテナンスと、築城400年祭と、商標使用期限の終了が迫っています。既に PHP 5 への移行は済んだと思われますが、この機会にクラスを定義したファイルの読み込み方法について見直してみましょう。 クラスを定義したファイルを1ファイル1クラスで保存している場合、PHP 4 から使用できる手段として、コードの先頭で require_once() を使用して読み込んでいました。使用するクラスの数だけ列挙が必要なため、オブジェクト同士の協調を図るコードを書く場合など、非常に多くの手間が掛かります。 例えば <?php /** * クリスマス・イヴ未明
phpunit などを使って PHP スクリプトをテストする時に、プライベートメソッドをテストしたくなる時があると思いますが、PHP では結構難しいように思います。 PHP でプライベートメソッドをテストする方法として、思い付くのは以下の方法くらいでしょうか。 パブリックメソッドからプライベートメソッドを完全にテストできるように工夫する プライベートメソッドのテスト用にパブリックメソッドのラッパーを作成しておく テスト時のみ、テストしたいプライベートメソッドの Private を Public に書き換える Runkit などを使って定義を変更する 1. が実現できれば問題ないのですが、全てがうまくいくようにパブリックメソッドを作成するのは困難だと思います。また、テストのためだけにメソッドを増やしたり、変更したくないため、2. と 3. はあまりやりたくありません。4. であればできそうな
今回から未修正の脆弱性とパッチを適用しない場合の対処を順次紹介します。脆弱性の危険度の順ではなく、パッチファイル名の順番に紹介します。紹介する脆弱性情報はSRA OSS Inc日本支社にてPHP4セキュリティ保守サービスとして提供しているものです。パッチ類は筆者の会社であるエレクトロニック・サービス・イニシアチブが、現在サポートされているPHPからレガシーPHPにバックポートしています。パッチの説明文を引用して脆弱性を解説します。パッチそのものの紹介は含みませんのでご了承ください。 PHP 4.3.9の評価は、PHPプロジェクトが配布しているソースコードではなくRedHat Enterprise Linux 4で提供されているPHPのSRPM(ソースRPM)のソースコードがベースになっています。PHP 5.1.6についてはPHPプロジェクトが配布しているソースコードがベースとなっています。
はじめに この資料は「PHPでTDD&CIワークショップ」 http://atnd.org/events/16626 で @yamashiro が発表するための資料だよ。 ワークショップ参加者じゃなくても記事読むだけで完結するようには書いてあるよ。 概要としては、Jenkins を使って PHP のウンコレガシーなコードをいかに綺麗にして行くかということを説明する。 自画自賛だけど PHPMD とか PHPCPD の使い方の説明の資料としてもそこそこイケてる資料になってると思いました。まる。 この記事に書かれてることは、割とTemplate for Jenkins Jobs for PHP Projectsとかぶってるけど、プラグインを絞ってあるのと、一個一個のプラグインについて解説、また実際にエラーが起きたときにどうすればいいのか書くよ。 Java と Jenkins のインストールとJ
TDDしたい、CIしたいと思ってもなかなか導入できない。何でだろう? PHP製WebアプリケーションでのTDDを学び始めた現時点の気持ちまとめ。 Seleniumを使うような高いレイヤーのテスト どんなテストを書けばいいのかわからない 例えばDBから商品情報取ってページ生成する場合。 商品カテゴリごとに異なる趣きのページを作るのでそれぞれにviewのテストを書いたとする 各ページ内の商品詳細URLにパラメータが追加されることになった URL生成は共通のモデルで行っている 修正は一ヶ所で簡単なもの だったとしてもviewのテストはそうは行かない。 先に用意したテストケースを全部書き直さなきゃならない。 小さな変更にかかるコストが大きくなる 単純に時間がかかるというより めんどくさくなる → どうせやらなくなる という思い。 コントローラーとか中間くらいの層のテスト viewよりは下、ユニット
面白いエントリを見つけたので和訳しました。PHPが使われていた歴史が古い事や開発者のコミュニティの観点から見たPHP論。読みやすいので早速どうぞ。 なお画像は「各プログラム言語からは各言語オタクがどう見えるか?」です。 原文 Why PHP Was a Ghetto http://codefury.net/2011/04/why-php-was-a-ghetto/ なぜPHPはゲットーだったのか ダンボ地区のかなりクールなスタートアップの創始者と私は世の中の多くのPHPの開発者でない人たちがPHPとその周囲のコミュニティを軽蔑するのかについて話していた。彼はとても興味深い点に言及した事が私の印象に残った。なぜなら私はこれまで聞いた事がない点だった。 お気づきかもしれないが、開発者がPHPに対して通常抱く不満は、だいたい以下の通りである: 醜い構文 他の言語が備えているいくつかの必要な
Quality Assurance in PHP Projects - Presentation Transcript Quality Assurance in PHP Projects Sebastian Bergmann June 10th 2010 Sebastian Bergmann Co-Founder and Principal Consultant with thePHP.cc Pioneer in the field of QA for PHP projects Creator of PHPUnit Contributor to PHP Get the help you need from the experts you trust. Consulting | Code Review | Training When things go wrong in so
今日から始めるJenkins CI(PHP, Windows, XAMPP使い向け) 2011/05/26 ざっくり言うと、継続的インテグレーションの最大の利点はリスクが軽減されることにある。以前に経験したことがあるプロジェクトでは、長期のプロジェクトの終わりの段階になっても、実際に終わってみるまで、それがどれくらいの長さになるのか見当もつかなかった。(出典:Continuous Integration / Martin Fowler) 今週雨が続いて「もう梅雨かあ」とボケボケな事を考える程度には田舎者の@remoreですこんばんは。もうこっちで暮らして10年は経つんですけどね。 さて、この前「アジャイルプラクティス」を読了して、アジャイルの魅力に取りつかれ始めています。2ヶ月前にまとめたPHPのテスティングフレームワークとBDD(ビヘイビア駆動開発)について調べた。で少し取り上げたJen
前までPHPの環境といえば、Apache + mod_phpだったわけですが、Apacheとかどデカいwebサーバーってはたして必要なの?ってことで、最近だとwebサーバーだけならNginxだけでいいのではという結論に達しまして。Nginxはリバプロとして使われている企業が多いと聞きますが、PHPの場合、PHP5.3からPHP-FPMがデフォルトで取り込まれたってことで、Nginx(webサーバー) + PHP-FPM(FastCGI)構成に移行してしまいました。 その時のメモです。尚、環境はCentOSです。 configure (Nginx) $ ./configure \ --prefix=/usr/local/nginx \ --with-http_ssl_module \ ... SSLはこのオプション指定しないと入らない --without-mail_pop3_module \
Recently I received an email pointing me to this article and with a request that I conduct a test of Nginx, which should supposedly be a better web serving application. But in previously mentioned article they state they are getting over a 500% more from the same hardware with a new piece of software, is still awesome. From the experience I know that with such claims, one must utilise some healthy
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く