8月 152011
 

small lightシリーズ
[1] ライブドアのsmalllightを使って動的に画像をリサイズしてみる
[2] いろいろsmalllightを使って動的に画像をリサイズしてみる
[3] smalllightでのエンジンの選択の仕方
[4] smalllightでのエンジンの選択の仕方 (ヒントオプション追加)

先日の記事を書いた時点では気づいていなかったのですがsmalllightはJPEGのリサイズを高速化するパラメータがありました。
ヒントオプションというものです。早速再度有効にしてとってみました。

テスト画像

JPEG 6400×4800(17.7MB) -> 640×480

オプション

ヒントオプションなし
dw=640,dh=480,cw=640,ch=480
ヒントオプションあり
dw=640,dh=480,cw=640,ch=480,jpeghint=y
Continue reading »


8月 122011
 

small lightシリーズ
[1] ライブドアのsmalllightを使って動的に画像をリサイズしてみる
[2] いろいろsmalllightを使って動的に画像をリサイズしてみる
[3] smalllightでのエンジンの選択の仕方
[4] smalllightでのエンジンの選択の仕方 (ヒントオプション追加)

smalllightでは利用できるエンジンがimagemagickとimlib2がありますが
それぞれが対応している形式は以下です。

imagemagick imlib2
jpg
gif ×
png

これだけ見ればimagemagickでもいいじゃん!ということになりますが
速さはどうなのでしょうか?
Continue reading »


8月 122011
 

small lightシリーズ
[1] ライブドアのsmalllightを使って動的に画像をリサイズしてみる
[2] いろいろsmalllightを使って動的に画像をリサイズしてみる
[3] smalllightでのエンジンの選択の仕方
[4] smalllightでのエンジンの選択の仕方 (ヒントオプション追加)

先ほど書いた「ライブドアのsmalllightを使って動的に画像をリサイズしてみる」では
とりあえず入れてみて、リサイズしてみた!といった感じでしたが
僕が触ってみてこうしたら楽だとかの設定例を上げてみます。
Continue reading »


8月 122011
 

small lightシリーズ
[1] ライブドアのsmalllightを使って動的に画像をリサイズしてみる
[2] いろいろsmalllightを使って動的に画像をリサイズしてみる
[3] smalllightでのエンジンの選択の仕方
[4] smalllightでのエンジンの選択の仕方 (ヒントオプション追加)

最近、動的に画像をリサイズするのが流行っているようです。
ゆめみラボのmod_ktaiやクックパッドのmod_tofu、livedoorラボEDGEのsmall_lightなどいろいろありますが
今回small_lightを使ってみたので記事を書いてみます。
ついでに速いと噂のlibjpeg-turboも入れてみます。

smalllightとは

公式を見るのが一番早いとは思うので一度見てみてください。(→smalllight

僕がsmalllightで特にいいなぁと思ったのが4点です。
・Apacheモジュールで動く
・cropできる
・パラメータがわかりやすい、指定しやすいように考えられてる(と思う)
・公式のデザインが凄いわかりやすくていい

とりあえずインストールして使っていきましょう。
Continue reading »


8月 092011
 

昔やってたブログ(閉鎖)のネタ再利用ですが
たまたま検索してみたら動く情報があんまりなかったので再度動作確認して記事にしてみました。

携帯でよくあるアニメーションGIFですがリサイズをを行うにはどうすればいいでしょうか?
例えば以下のコードの場合はダメです

意図したように動かないコード


<?php
//元ファイル
$src='src.gif';
//書き込みファイル
$dest='dest.gif';
$im=new Imagick($src);
//サムネ作成
$im->thumbnailImage(40, 0);
//書き込み
$im->writeImage($dest);
$im->destroy();
exit;

静止画のGIFが出来上がります。
そこで画像シーケンスを書き込むwriteImagesを使ってみます


$im->writeImages($dest,true);

アニメーションGIFはできるのですが最後のフレームのみがリサイズされてしまいます。
そこでアニメーションを維持しつつリサイズを行う方法について解説します。

Continue reading »


7月 132011
 

If you manage many objects with high traffic , Varnish get a swap (although it rare)

Varnish 3 have new parameter “shortlived”.
This parameter description is

Objects created with TTL shorter than this are always put in transient storage.

transient storage is malloc storage.



storage.list
200
Storage devices:
        storage.Transient =*** malloc ***
        storage.s0 = malloc

Continue reading »


7月 132011
 

一回こんなタイトルで書いてみたかったいわなちゃんです。
別にこれだけ注意しとけ!というわけではないのですが、とりわけドハマリしそうでまず注意しておきたいポイントに付いて解説します。

Continue reading »


7月 012011
 

Varnishはバックエンドが複数ある場合、そのうちひとつが死んでも残りのバックエンドを使うfailover機能がありますが
バックエンドに画像が何もなかったときはどうなるでしょうか?通常の場合はそのまま404を返します。
しかし、画像が投稿されてから非同期でサムネを作成したり、何らかの画像処理を行ったりで一時的にデフォルトの画像を出したいことがあります。
いわばファイル版のfailoverみたいなもんですね。方法がありますので書いてみます。
Continue reading »


6月 202011
 

hmskさん主催の第一回のTokyo.vclでVarnishの話をしてきました。
5分~15分の長さでと言われたのでのんびりいっぱい喋れる!
・・・と思ったら詰め込みすぎて結構早口で聞き取りにくかったかもしれません。 申し訳ないです。

内容はVarnishCache3.0の新機能と2.1/2.0系からVUPするときの変更点についてです。

Continue reading »