Goのコンカレンシー、略して合コンを勉強したわけですが。 Tour of Goの例とかはさっぱり良くわからないので "Goルーチンで並行化する方法: 6秒かかる処理を3秒にしよう" を参考にして遊んでみました。コードもこの記事からとったものです。大変わかりやすい例で、並行処理の素晴らしさがよく分かる記事でした。 package main import ( "fmt" "time" ) func threeSecond() { time.Sleep(3000 * time.Millisecond) fmt.Println("3 seconds passed") } func oneSecond() { time.Sleep(1000 * time.Millisecond) fmt.Println("1 second passed") } func twoSecond() { time.Sle
FuelPHP でユニットテストを行い、カバレッジも取得してみた。 導入 今回は AWS EC2 上に環境を構築した。 PHP 7 MySQL 5.7 Nginx FuelPHP 1.8 PHPUnit 5.5 AspectMock 1.0 PHP7 と Nginx と MySQL5.7 のインストール # nginx $ sudo yum install -y nginx # php7 $ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm $ sudo yum --disablerepo=* --enablerepo=remi install -y php70 php70-php-fpm php70-php-devel php70-php-mbstring php70-php-pdo php
cakephp3で "ログイン状態の保持" の機能を実装してみました。 ※Quick Start Guide http://book.cakephp.org/3.0/en/quickstart.html に追加する感じで 方針 cookieとデータベースにログインキーを保持 両者が一致したらログインとする テーブル auto_loginテーブルを作ります CREATE TABLE `users` ( `id` INT(11) AUTO_INCREMENT PRIMARY KEY, `email` VARCHAR(255) NOT NULL, `password` VARCHAR(255) NOT NULL, `created` DATETIME, `modified` DATETIME ); CREATE TABLE `auto_login` ( `user_id` INT(11) UNS
環境 MAC: Yosemite(10.10.3) MAMP: 3.2.1 NetBeans: 8.0.2 Xdebug: 2.2.5 前提 MACにMAMPがインストールされている事とする PHPバージョンの確認 MAMPのphpinfoで、PHPのバージョンを確認する。 私の環境では、5.6.7。 Xdebugを有効化 MAMPをインストールすると、Xdebugも一緒にインストールされています。 しかし、デフォルトではXdebugは無効化されている為、有効化する必要があります。 まず、ターミナルを開いて下記コマンドで、php.iniの場所を確認する。 $ find /Applications/MAMP -name "php.ini" /Applications/MAMP/bin/php/php5.1.6/conf/php.ini /Applications/MAMP/bin/php/p
こんにちは、オークファンの @dz_ こと大平かづみです。 Prologue - はじめに プライベートでも使っている Visual Studio Code で PHP デバッグができるように、 PHP Debug の拡張機能を導入してみました! Visual Studio Code とは? さて、 Visual Studio Code は、Microsoft 製のオープンソースのエディタです。 Javascript をはじめ、 PHP もある程度補完してくれ、シンプルながら使いやすいエディタです。Windows はもちろん、Mac, Linux でも利用できるので、両刀遣いとしても重宝します。 Visual Studio Code > Debuggers > PHP Debug 前提 接続先のサーバーに xdebug がインストールされていること おおまかな流れ 接続先サーバーの xde
最近はGoやScalaでサービスを開発したり、既存のシステムを置き換えたりする事例が増えてきてますよね。私も仕事ではruby/railsがメインなのですが、新しくアプリケーションを開発するにあたって別の言語・フレームワークを検討する機会があり、少しだけScala(とJava)のフレームワークPlayを触ったので、**Railsでいう◯◯はPlayではどうやるの?**という点をまとめたいと思います。 ちなみに、この記事を書いてる時点で筆者のScala歴・Play歴は10時間くらいですので、「Play Framework入門」と銘打ったものの、「Play Framework紹介」に近いかもしれませんwご了承ください。 サンプルコード 以下ではこちらのコードから色々抜粋して貼り付けてます。 https://github.com/suzan2go/hello_play 公式のScalaToDoLi
参考 やむにやまれない理由で、ローカル環境またはローカルの仮想マシン内に自分だけの開発環境を構築できない場合があります。 でもリモートデバッグはやりたい...ヨダレが出るほどに...var_dumpとか書きたくないし! 想定環境 今回の想定は、↓の図のような感じで開発してるものとします。 ポイントは、 開発者のローカル端末でソースコード編集が行われず、開発サーバ内のソースコードをみんなで編集している 開発サーバが、開発者ローカル端末と 同サブネットに存在しない。 開発サーバが同サブネットに存在する場合は... 同サブネットに存在する場合は、そもそもxdebugの設定で解決する(はず)と思います。 xdebug.remote_connect_backの設定がそれです。 remote_connect_backは、$_SERVER['REMOTE_ADDR']によってデバッグ待機中のマシンを確認
はじめに 最近は関数型言語が流行りつつあるので、僕も乗り遅れまいと(すでに乗り遅れている感じが否めないが)Vertxを学んでみる。 ちなみにVertxとは何か・・・というと僕は正確な答えを持ってない。 僕のイメージでは負荷分散プログラムのフレームワークというイメージ。 とりあえず、僕のイメージでVertxを語ってみる。(間違ってるかもしれないので、鵜呑みにしないように!w) Vertxって? プログラムの最小単位をVerticleと定めて、Verticle単位でプログラムを動かす事を目的としている。 例えばServerVerticleというHTTPリクエストを待ち受けるプログラムを書いたとした場合に、リクエストを受けるのはServerVerticleだが実際の処理はUserVerticleに任せる場合は以下のようになる。 これだけだと何が良いのかわからないと思う。 Vertxの特徴はVer
GroovyとVert.xの勉強その2として、前に作った簡単なHTTPサーバを拡張してみました。 前に作ったのはこれ http://qiita.com/i18n/items/72cc2a0c820a8fb0ca72 RouteMatcherというクラスをリクエストハンドラとして使うと RubyのSinatraっぽいことができるようなので、今回はそれを試してみました。 ルーティングと処理は下記のとおり。 ・GET / → Hello,Worldを表示 ・GET /ユーザID → データベースからユーザを検索してきてその名前を表示 このあたりは複雑でもないし、公式ドキュメントにもちゃんと書いてあるので写経に近い感じです。 しかしコールバックがもう大変ですね。Groovy、クロージャーを取り扱うのが簡単でよかった。 import org.vertx.groovy.platform.Vertic
Vert.xとは、公式ページより JVM上にリアクティブアプリケーションを構築するためのツールキットです @timfox氏が中心となって、現在2015年6月22日を目標にversion 3が開発されています。この投稿含め何回かに分けてVert.x 3の動くサンプルを実装していこうと思います。 概要 今回は、公式によるWebアプリケーションフレームワークApexを用いてシンプルなRESTサーバを動かしてみます。 Vert.x coreはHTTP、TCP、ファイルシステムへのアクセス等低レベルの機能のみを実現しており、このうえにウェブアプリケーションを構築する際に必要となる多くの機能を提供するのがApexです。Node.jsでいうところのExpress、RubyでいうところのSinatraのようなライブラリです。 今回は簡便のためにデータはオンメモリに保存します、データをデータベースに保存する
超エコで超高速なやつらの性能比較: Go vs Node.js (vs Vert.x) 今時のWebで大量接続で高負荷になりそうなサイトを作りたい人は必見。 スタートアップ起業が選ぶなら、こういう言語やフレームワークを選ぶべき。 人気が出て急激な負荷に耐えられる様に、最初から正しいアーキテクチャを選んでね。 妙なやつを選んだらサーバはたくさん必要だし、クラウドでも費用が高くなるし大変だよ。 Node.js vs Go の記事を読んだのでこの記事を書いています。 http://yosuke-furukawa.hatenablog.com/entry/2014/02/10/134014 https://speakerdeck.com/yosuke_furukawa/benchmarking-node-dot-js-vs-golang http://sssslide.com/speakerdec
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く