タグ

phpと開発に関するshusatooのブックマーク (2)

  • PHPでID生成器を実装してみました | チャットワーククリエーターズブログ

    こんにちは!Web開発チームの安達です。 この記事は、ChatWork Advent Calendar2014 15日目の記事です。 みなさん、Scala使ってますか? 今日は「PHPでID生成器を実装してみた」というお話をしたいと思います。 IDの生成ウェブサービスのグローバル展開やスケーラビリティについて考えだすと、IDの生成に関わる課題が浮かび上がってくると思います。 例.「東京とシドニーのデータセンターにサーバを配備したとき、IDが衝突しないように生成できるのかな?」 またサービスの可用性について考えだすと、こちらでもID生成が絡む課題が。 例.「RDBMSのAUTO INCREMENTでIDを生成しているんだけど、この1台が落ちたらサービス止まっちゃう…。」(単一障害点) 理想としては、スケールアウト出来て、複数のサーバで並列にID生成が可能で、単一障害点にならないような形でID

    PHPでID生成器を実装してみました | チャットワーククリエーターズブログ
  • コードをまとめる技術としてのイテレータとジェネレータ - Qiita

    ジェネレータが5.5から入ったことで完全に空気と化した(?)PHPのイテレータを、ちょっと違う面からまとめたいと思います。 コードをまとめるということ Don't Repeat Yourself(DRY)という言葉があります。達人プログラマーというに出てくる言葉です。 信頼性の高いソフトウェアを開発して、開発そのものを簡単に理解したりメンテナンスできるようにする唯一の方法は、DRY原則に従うことです。 「すべての知識はシステム内において、単一、かつ明確な、そして信頼できる表現になっていなければならない。」 (p. 27) 端的に言えば「同じことを二度書いてはいけない」ということですね。この原則を当てはめなくてもいい例外のパターンもいくつかあるのですが。。 コードにおいて「同じことを二度書いてはいけない」を忠実に守ろうとすると、同じコードを何度も書きたくなったら、何らかの方法でそのコードを

    コードをまとめる技術としてのイテレータとジェネレータ - Qiita
  • 1