2010年9月22日水曜日

フリーで使えるJavaScriptと CSSの CDNいろいろ

httpsが使えるのはGoogleとMSのみ。
httpsに拘らないならCached Commonsがライブラリ豊富で便利そう。
でも使いたいライブラリがGoogle Libraries APIで間に合うならGoogle Libraries APIでいいんじゃないかな。レスポンス速度が速いし。
(レスポンス速度はminファイルのロード時間を4回計った2~4回目の平均値。状況によって変わってくるだろうから、参考程度に。)


Google Libraries API

  • 主要なJavaScriptライブラリをホスティングしている
  • バージョン指定でメジャーバージョンのみの指定や、マイナーバージョンまでの指定等が可能
  • https可
  • YUIはバージョン2しかない
  • ブラウザキャッシュは1時間 or 1年間(参考:floatingdays: Google AJAX Libraries APIのブラウザキャッシュ期間
  • レスポンス速度
    • jQuery:0.069秒 
    • YUI 2 YUI Loader:0.066秒


Microsoft Ajax Content Delivery Network - ASP.NET Ajax Library
  • ASP.NET関連以外ではjQuery関連の3つをホスティングしている。Validationプラグインは便利かも?
    • jQuery
    • jQuery UI
    • jQuery Validationプラグイン
  • https可
  • ブラウザキャッシュは1年間(max-ageとExpiresが違う気がする?)
  • レスポンス速度
    • jQuery:0.161秒


YUI
  • httpsは使えない
  • JavaScript、CSSをそれぞれ1つずつにまとめられる(Combine Files)のは便利
  • ブラウザキャッシュは10年間
  • レスポンス速度
    • YUI 2 YUI Loader:0.181秒


Cached Commons


JsLoad: Remote loading API of JavaScript library
  • Google App Engineで作られている
  • 2008年10月から更新されていないようだ


JavaScript Host(←※リンク切れ)
  • 閉鎖しちゃったみたい


(2010/10/19 追加)
jQuery Code Server
  • jQuery自身によるjQueryのホスティング
  • ダウンロード用のファイルをそのままhotlinkしてよいことにしたようだ
  • jQuery UIとかプラグインは提供しないのかな?



参考

2010年9月19日日曜日

監視ツールMonitの調査メモ

フリーでオープンソースなサーバ監視ツール「Monit」についての調査メモ。参考サイトの羅列がメイン。


監視対象



できること
  • プロセスを再起動
  • プロセスを止める
  • メールで通知


その他
  • 簡易Webサーバ付きで、状況をWebページで確認できる
  • yumだとRPMforgeから最新版の5.1.1をインストールできる(2010年9月現在)
  • /etc/monit.confはchmodで700にする


参考サイト

2010年9月6日月曜日

Google Maps API (V2)を iPadで使う場合の注意点

各所でiPadには対応していないを書かれているGoogle Maps API V2だが、やってみたら使えた。
以前使ったときには確かに対応していなかったと思うが、最近対応したのだろうか?Change Logにも書かれていないが...。

ただしiPadでは動きが変わる点があったのでメモ。


注意点1
GMarkerに対してdisableDragging()すると、iPadではそのマーカーをクリックしてもclickイベントを感知できないようだ。

対策としてはdisableDragging()しないこと。ドラッグしたいなら、代わりにドラッグ用のGMarkerを表示して、ドラッグが終わったらドラッグ先の場所に元のマーカーを移動して表示する、とすればたいてい間に合うのではないだろうか。


注意点2
こちらはAPIとは関係ないが、Google Mapsで経路検索結果を表示する場合の行き方(乗り物)を指定するパラメータのうち、電車についてのパラメータの値がiPad/iPhoneの場合は特殊なので注意。
詳しくはこちら → GoogleMapの経路検索で、車、電車、徒歩を指定するURL - iRSSの日記

PHPで変数を arrayや objectにキャストする

PHPでは「$after = (array)$before」のようにカッコ付きで型を指定しればデータをキャスト(型変換)できる。
特に、配列の場合とそうでない場合の両方あり得るデータを配列として扱うのに便利。

$arr = (array)$array_or_not;

以下は、配列やobjectにキャストするとどうなるかの実験結果。
//配列にキャスト
var_dump((array)123);         // => array(1) { [0]=>  int(123) }

//配列を配列にキャスト
var_dump((array)array(123));  // => array(1) { [0]=>  int(123) }

//Objectにキャスト
var_dump((object)123);        // => object(stdClass)#1 (1) { ["scalar"]=>  int(123) }

//配列をObjectにキャスト
var_dump((object)array(123)); // => object(stdClass)#1 (1) { [0]=>  int(123) }

//Objectを配列にキャスト
var_dump((array)(object)123); // => array(1) { ["scalar"]=>  int(123) }

ブログ アーカイブ

tags