tech

700 件の記事

2013

fluentd使ってみた(超入門編)

今時Fluentd使った事無いとか、ありえない的な空気が漂ったので、とりあえず試しにfluentd使ってnginxのログを溜め込むようにしてみました。 ということで、とりあえずCentOS→CentOSにログ転送するようにしました。 早速インストール # vim /etc/yum.repos.d/td.repo [tr…

Instagram for WordPressが重いから勝手にカスタマイズしてみた

ニートのときに書いた旅行の記事を読もうとしたらレスポンスに20秒近くかかっていました。 原因を探る為に調べていたら、どうやら「Instagram for WordPress」のプラグインが足を引っ張っていたようです。 んで、コードをみてみるとなんと画像1回1回ご丁寧にphp側でinstagramのAPIと通信しているじ…

forのなかでcountしてもあまり速度的に変わらないというお話。

なんかforの中でカウントしてるよーとか今日コードを眺めてて思っていた僕です。 あ、社会復帰記念に超どうでもいい技術ネタ書きます。 で、まあ実験用のスクリプトをこんな感じに用意します。 count.php <?php $max = []; for( $i = 0; $i < 10000000; $i++ ) { $ma…

GooglePlusComponent作りました!

cakephp2系で、google plusのoauth認証をしたいと思ったポリドッグです。 cakephp2系からAuthコンポーネントの拡張が柔軟になったし、AuthComponent使った形で実装してみました。 ソースコードはこちら https://github.com/polidog/GooglePlusCom…

macな開発環境にxhguiを導入する

XHProf のデータを GUI で表示。データは MongoDB に保存。 / “<?paul” http://t.co/n89PmQYT— Masashi Shinbara (@shin1x1) 2013, 1月 3 こんなツイートを見つけてしまったので早速試してみる事にしました!!! とりあえずまずはxhprof…

2012

PHPでjojo言語とか動かせるようにしたよ!!!

昨日brainf*ckで遊んでたせいかいろいろぐぐってたらこんな記事見つけました。 http://matome.naver.jp/odai/2133472419282441301 だいたいの言語がrubyで実装されてたんで、なんか悔しいなぁーと思ってPHPで実装しました。 んでもって、どんな言語でもすぐに対応できる感じ…

apacheのmod_rewriteとnginxのrewriteの違い

よくapacheのmod_rewriteつかってurlを書き換えるときにこんな感じの指定するときってあると思います。 たしかcakePHPのmod_rewriteって以下の感じですね。 RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] じゃあこれと同じようなことをnginxでやると…

今まで気づかなかったPHPの可変変数

コードレビューしててPHPの変数の中に${"hoge".$i}みたいな変数みたいなのがあって、なにこれ!?って思ってしまった訳ですが、普通にPHPマニュアル見たところ可変変数の指定だと・・・ しかもマニュアルの上の方に記載されてたし。。。 うーん、知っているつもりでもまだまだ知らない事も沢山あるんですな。 <?php …

静岡JavaScript勉強会 #2でElephantJSのLTしてきました。

11/17に開催された静岡JavaScript勉強会 #2でElephantJSのLTをしてきました。 参加じたいは今回で2回目です。去年に引き続き、今年も良い刺激を頂けました。 この勉強会って他には無いなんか素敵な雰囲気があって、ほんと参加するたびによい刺激を受けます! 主催してくれた、@tomofさんにはほんと感謝…

cakephpでのモデル呼び出し方

cakephpでコントローラからモデルを呼び出す場合って、$this->usesに使用するモデル名を配列で定義しなきゃいけないですよね。 結構めんどくさいというか、、、なんというか、、、めっちゃめんどくさいですよね。 じゃあ$this->Hoge->find("all");とかした際にモデルのオブジェクトが生成されてな…

webシステムを作る上で一番重要な要素はなんですか?

この質問を弊社のエンジニアに個別に聞いてみました。 ふと、部下とチャットで作業の確認等をしていたときに、気になったので聞いてみたのが始まりです。 予想外に面白いというか同じチームや同じ会社の人間なのに全然答えがちがっていたので驚きました。 自分は「データ構造か」と思いました。 たしかにDBがボトルネックになる事が多い仕…

ElephantJsを作りました

ElephantJs作りました。 Javascriptのクラスだとおもった? 残念、PHPのクラスでしたー(・∇・ ) ElephantJsはPHPからJavascriptを実行するためのクラスです。 動かすためにはV8jsが必要です。 ソースーコードはgithubに載っけてあります。 https://github.c…

ゆるかわPHPの会 #1

先月ノリでatndに登録したイベント「ゆるかわPHPの会 #1」を、弊社エクスクウェイドにて開催しました。 まあ僕が主催者だけあってそりゃもうぐだぐだした感じのイベントになってしまったわけです... ただ、弊社エンジニアの協力や、参加していただいた方々の協力もあって初めてにしては良いイベントになったのかと思います。 P…

かっこ良くPHPのエラーをだしてみる

PHPで開発してるとNoticeとかWarningとかのエラーが結構でることってありますよね。 僕もよくあります。 でもでも、やっぱイケてるCTOとして、部下にNoticeだとかWarningだとかのエラー出すのはかっこわるい訳ですよ。 こんな感じに... こんな画面じゃお嫁に行けないわ..ってぐらい恥ずかしいですね。…

phpのリダイレクトではまったこと。

phpを初めて使ってからもう6年経つ僕ですが、リダイレクト処理で勘違していたみたいです。 リダイレクトのヘッダを生成した瞬間僕は、phpの処理がとまると勘違いしておりました。 こんな感じに <?php // ...処理いろいろ if ( $isRedirect ) { header('Location: index.p…

PHPerだけどrbenv入れてみる

なんか急にrailsで遊びたくなったのでせっかくなんでrbenvいれますた。 Mac(LION)にインストールしたんで、そのログの残しておきます。 必要そうなものを入れる $ brew install readline $ brew link readline $ brew install openssl $ brew…

MacBookProにSWFEditorをいれてみた(brew編)

以前はMacPorts使ってた僕ですが、最近はもっぱらbrew派です。 そんな僕ですが、やっぱりSWFEditorは使いたくなる訳です。 ところが今の僕のMacBookProにはSWFEditorには入っていません。 ということでインストールしようと思ったら、libpngが周りでトラブルが・・・・ wget "http…

cakephpのModel::setDataSource()メソッドについて

仕事で本来接続されるはずのないデータベースにcakePHPで作られたアプリからデータベースに接続来るなんともキモい現象が発生していました。 よく、アプリの接続先を本番環境と開発環境で切り分けたいとか、このサーバからはこのDBにしか接続したくないってときは、よくモデルのコンストラクタに以下のコードを書いて対応していること…

homebrewでpythonをインストールしたのです

すっかりhomebrew派になった私でございます。 やっぱりイケてるマカーはhomebrewじゃないと! ということで、homebrewでpythonをインストールしてみました! brew install python Error: Failed executing: make (pkg-config.rb:21) T…

MySQLdbでTRUNCATE TABLE文を発行したら、commitされなかったでござるの巻き

本来TRUNCATEはトランザクションをサポートしてないのでcommitされないってのはおかしいですね。。。 すいません、無知なもので。。。 んでまあ前回の「mysqliでTRUNCATE TABLE文を発行したら、commitされなかったでござるの巻き」の続きなんですが、結局pythonでためしたところ同じ結果でした…

mysqliでTRUNCATE TABLE文を発行したら、commitされなかったでござるの巻き

PHPでのお話です。 マスター/スレーブまでカバーしたDBライブラリを使用しているときに、なぜかSELECTしたあとTRUNCATE文を発行したら、なぜか永遠に処理が終わらないという現象に遭遇しました。 SELECTはスレーブに接続して、INSERT,UPDATE,DELETEはマスターに接続するという単純なライブラリ…

foreachで無限ループする方法

なんかforeachなら絶対に無限ループなんかないと僕は思っていたわkです。 forじゃないんだから、無限ループになるわけなんかないでしょ。 って思っていた自分は死ねばいいと思います。マジで。 まあ無限ループというかメモリオーバーで落ちるだけなんですが、うっかり「memroy_limit = 12288M」とかしちゃう…

memcachedを複数起動する場合のinit.dの書き方

CentOS系でmemcachedを1つのサーバの中で複数起動したい場合ってありますよね。 とくに開発サーバの場合は...もうね... んで、/etc/init.d/memcachedをコピーして/etc/init.d/memcached2でもつくって設定入れ替えればいいとおもいました。 でもなぜかコピペしてもうまくい…

nginxでwordpressの表示を6倍速くしてみた

このブログをabで速度はかってみたら以下のような絶望的な結果が出ました(´・ω・`) Requests per second: 10.64 [#/sec] (mean) Time per request: 9399.835 [ms] (mean) Time per request: 93.998 [ms] (mean,…

var_dumpやdebug_print_backtraceをやめてconsole.logを使おう

phpの配列の中身を確認するときってvar_dump使って出力すると便利ですよね。 あとはdebug_print_backtraceなんかで中身を確認するとかも便利ですよね。 開発時にはよく使ったりしますが、htmlのレイアウト崩れたして不便だったり見にくかったりする場合も多々あるかと思います。 なんか良い解決策がない…