タグ

ブックマーク / www.techscore.com (14)

  • Ansibleの標準モジュールでEC2のサーバー構築をしてみる | TECHSCORE BLOG | TECHSCORE BLOG

    はじめに はじめまして、多田です。 最近は環境構築にAnsibleを利用することが多くなりましたが、調べているとAWSのようなクラウド環境の構築についてもAnsibleはその多くを標準モジュールとして備えているようですので、いくつか試してみました。 どこまでやるか 標準モジュールを利用したPlaybookを作成し、以下の内容の構築・設定を行えるようにする。 セキュリティグループの作成 EC2インスタンスの作成 AMIの作成 CloudWatchの設定(オートリカバリ) 前提 AWSマネジメントコンソールで、サーバー構築に使用するIAMユーザが作成されていること AWSマネジメントコンソールで、キーペアを登録してあること 準備 Pythonインストール pyenv でpythonをインストールします。 [vagrant@ansible ~]$ sudo yum install git [va

  • Ruby2.0のModule#prependは如何にしてalias_method_chainを撲滅するのか!? | TECHSCORE BLOG | TECHSCORE BLOG

    Ruby2.0のModule#prependは如何にしてalias_method_chainを撲滅するのか!? お久しぶりです。寺岡です。 lazyについて書いた前回に続いて、Ruby2.0について書いてみたいと思います。 今回注目する新機能は、Module#prependです。 Module#prependはRuby2.0で新たに追加された、Module#includeの親戚のような機能です。 一言で表すと「クラスの継承階層の手前にモジュールを追加する」ことができるようになります。 ActiveSupportのMudule#alias_method_chainを使わずに綺麗なモンキーパッチ実装することができる、Module#prependの挙動を探ってみたいと思います。 ruby2.0-rc1のインストール まずは実行環境の準備です。 前回の記事ではruby2.0-preview2を使い

  • Rails 4.1.0 の ActiveRecord enums を使ってみる | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 先日、Rails 4.1.0.rc1 がリリースされました。 リリースノートをパラパラを見ていたら ActiveRecord enums という新機能があったので試してみました。 ActiveRecord enums とは 会員のデータを保持する users テーブルを作成して、会員ステータスを保持する status カラムを用意して、その値が 0 なら仮登録、1 なら登録、2 なら退会済みにしよう、・・・ということって良くありますよね? ActiveRecord enums は、モデルクラスでこんな風に使います。 class User < ActiveRecord::Base # ステータス: temporary (仮登録), active (登録), resign (退会). enum status: %i(temporary active resign)

  • Railsライブラリ紹介: ページングを行う「kaminari」 | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 一覧画面に「<< | < | 1 | 2 | 3 .. 10 | 11 | 12 ... 98 | 99 | 100 | > | >>」のようなリンクが付いていることは多いですね。 ページング、ページネーション、ページャー、・・・などと呼び方は色々ありますが、ここでは「ページング」と呼ぶことにします。 今回はページングを実現するライブラリ kaminari をご紹介します。 kaminari (https://github.com/amatsuda/kaminari) kaminari の導入 Gemfile に以下の行を追加します。

  • Railsのコールバックまとめ | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Techscore 体の記事の下書きを書き進めています。 ということで、コールバックの記事の下書きを公開します。 コールバックの種類 コールバックとは、バリデーションの実行やデータベースへの保存などのタイミングで処理を行うための機能です。 あるタイミングで必ず実行する必要がある処理をコールバックに指定することで、モデルの一貫性を保つことができます。 Rails のコールバックの種類をまとめてみると、非常に多いことが分かります。 after_find 検索メソッドでオブジェクトが見つかったタイミングで実行されます。 検索条件を指定せずに all メソッドを呼び出すなど、検索結果が大量になる場合は注意が必要です。 検索結果の数だけコールバックが実行されますので、パフォーマンスに重大な影響を及ぼす可能性があります。 after_initialize オブジェクトがインス

  • Model に関する変更点

    3. Model に関する変更点 2013/10/03 シナジーマーケティング(株) 鈴木 圭 [Rails 4.0] 第3章 Model に関する変更点 3.1. attr_accessible から StrongParameters へ 3.2. 非推奨となった動的ファインダメソッド 3.3. scope には Proc オブジェクトの指定が必須 3.4. トランザクションの隔離レベルの指定 3.5. ActiveModel::Model モジュール 3.6. クエリ API の変更点 3.6.1. all が配列ではなく Relation を返す 3.6.2. pluck は複数カラムを指定可能 3.6.3. update_attributes は update のエイリアス 3.6.4. update_column の代わりに update_columns 3.6.5. none

  • Railsライブラリ紹介: N+1問題を検出する「bullet」 | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Rails の便利なライブラリをシリーズでご紹介してみたいと思います。 今回は「N+1 問題」を検出してくれるライブラリ、bullet です。 bullet (http://github.com/flyerhzm/bullet) N+1 問題 N+1 問題とは、OR マッパーを使用しているときに発生しがちな問題です。 何かの一覧画面を作成しているときに、 一覧に表示するデータを取得するために SELECT を 1 回実行(N レコード返される) 各データの関連データを取得するために SELECT を N 回実行 データベースアクセス(SELECT)が合計 N+1 回も実行される(JOIN して 1 回の SQL で取得した方が効率的) というものです。 具体的なコードで考えてみましょう。 例として店舗の一覧画面を作成しているとします。 関係するモデルは以下の通りです

  • Rails 4.1.0 で追加された Module#concerning と関心事の分離 | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Rails 4.1.0 で Module#concerning というメソッドが追加されました。 Module#concerning とは Rails 4.0 で concerns ディレクトリが追加されたことを覚えているでしょうか。(see 「2.4. concerns ディレクトリの導入」) concerns ディレクトリに Mixin 用のモジュールを置いて、それをモデルなりコントローラなりで include する、という使い方をするものですが、Module#concerning を用いると、わざわざ concerns ディレクトリにファイルを作成せずに、モデルクラスの中に記述することができます。 コードで表すと、Rails 4.0 では以下のように書くことができるようになりました。 # app/models/article.rb class Article

  • RedisにおけるRDBファイルのバックアップ | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Redis におけるバックアップとリストアについて調べました。 データを永続化する方法については「Redisにおけるデータの永続化」で調べました。 RDB ファイルのバックアップ RDB ファイルでのバックアップ手順は以下のようになると思います。 BGSAVE コマンドを実行する(非同期での RDB ファイルの生成が開始される)。 RDB ファイルの生成が完了するまで待機する(完了したかどうかは、LASTSAVE コマンドの結果が変化したことや、RDB ファイルの i-node 番号が変化したことで判別可能です)。 (redis-check-dump で生成された RDB ファイルに問題が無いことを確認する。) RDB ファイルをコピーする(別サーバなど Redis が動作するサーバがクラッシュしても安全な場所に保管する)。 上記を一日一回など、定期的に実行します。

  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

  • Maven-TECHSCORE-

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

  • トップページ

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

  • TECHSCORE - Java,SQLプログラミング技術解説

    SQL データベース操作言語SQLについて、またRDBMSの持つ機能について詳しく解説します。 DB概要、SQL、テーブル操作、データ操作 ... 特集:replication PostgreSQLのレプリケーションシステムを紹介し、それらの機能を比較していきます。 特集:pgbench PostgreSQLのベンチマークテストに用いられるプログラムである pgbench について解説します。 SQL演習問題 各章に用意された演習問題を集めました。

  • デザインパターン[モデリング] -TECHSCORE-

    オブジェクト指向プログラミングにおいてデザインパターンを利用することは、開発者に様々なメリットを与えてくれます。 ここでは、「デザインパターンとは何か」というようなデザインパターンの基事項と、GoFの23個のデザインパターンをJavaを利用してわかりやすく解説します。 デザインパターン INDEX

  • 1