投稿

8月, 2015の投稿を表示しています

【CentOS6】YUM(Remi)経由でPHP5.4からPHP5.6に移行

イメージ
PHP5.4のサポートが切れるのでPHP5.6にアップグレードしたときの覚書。 環境: CentOS 6.7, PHP 5.4.44   目次 現状の確認とバックアップ PHP 5.6にアップグレード 日本語形態素解析「MeCab」を再インストール   1.現状の確認とバックアップ PHP 5.5と5.6の変更点を確認 PHP: PHP 5.4.x から PHP 5.5.x への移行 - Manual PHP: PHP 5.5.x から PHP 5.6.x への移行 - Manual インストールされているパッケージを一覧表示 # yum list installed | grep php php.x86_64                5.4.44-1.el6.remi      @remi php-cli.x86_64            5.4.44-1.el6.remi      @remi php-common.x86_64         5.4.44-1.el6.remi      @remi php-devel.x86_64          5.4.44-1.el6.remi      @remi php-fpm.x86_64            5.4.44-1.el6.remi      @remi php...

【Node.js】非同期処理をasyncからPromise(bluebird)に乗り換えるか

イメージ
ES6から非同期処理の仕組みが強化されたので調査したときの覚書。 今までは async.js を使っていた。全く問題なかったけど、速度的には遅い方らしい。 Why I am switching to promises   目次 Promise Generator 今後どう書いていくか   まずはES6で標準入りしたPromiseとGeneratorを理解するところから。   1.Promise 下記サイトが分かりやすい。 Chapter.1 - Promiseとは何か | JavaScript Promiseの本 Promiseは非同期処理を抽象化したオブジェクトとそれを操作する仕組みの事をいいます。 今までコールバックしていたのをPromiseを通して操作すると一貫した書き方が出来るようになる。 Node.jsエンジニアなら2014年内に知っておきたいPromise入門 | Tokyo Otaku Mode Blog Promiseをラッピングして使いやすくしているライブラリが bluebird 。 よく使うasync.parallel()はPromise.all()で置き換えることが出来る。 bluebird/API.md at master · petkaantonov/bluebird | GitHub   2.Generator 処理を任意の時点で止めて再開できるフロー制御の仕組み。 「function*」でGeneratorであることを宣言。「yield」キーワードで止める箇所を指定。 非同期関数をyieldで宣言して、順次実行するのに便利。 Generatorを利用したフロー制御のライブラリが co 。 サンプルプログラムとかは下記記事を参考に。 Node.js 0.12 では yield が使えるのでコールバック地獄にサヨナラできる話 - てっく煮ブログ   3.今後どう書いていくか 個人的にGeneratorの「function*」「yield」という見慣れないキーワードを書くのに抵抗があるので、Promise中心でいく予定。 既に試してみた方の記事もあるので参考に。 Node.js - 最近のjs非同期処理 ...