タグ

ブックマーク / blog.asial.co.jp (11)

  • yumリポジトリの構築

    次に、RPMおよびSRPMを格納するディレクトリを作成します。リポジトリへのアクセスはHTTP経由にしますので、今回はCentOSのApache標準のDocumentRootである /var/www/html/ 以下へ作成します。 # mkdir -p /var/www/html/repos/cent5/{i386,i686,x86_64,SRPMS} # cp /home/user/rpm/RPMS/i386/vim-*.rpm /var/www/html/repos/cent5/i386/ # cp /home/user/rpm/RPMS/i686/vim-*.rpm /var/www/html/repos/cent5/i686/ # cp /home/user/rpm/RPMS/x86_64/vim-*.rpm /var/www/html/repos/cent5/x86_64/ # 

    yumリポジトリの構築
    Akaza
    Akaza 2015/01/13
  • 依存性反転の原則について

    こんにちは、増田です。 今回は”依存性反転の原則”についてObjective-Cで解説します(Objective-Cは筆者が好きな言語です)。 私はこの原則を理解する前は依存関係がスパゲティ状態になったプログラムを書いていました。 プログラムの処理はそうめんのように道筋の立った分かりやすいコードを書いたとしても、依存関係がスパゲティであることがよくあります。そのようなコードを書くと、一箇所を変更するために既に動いているところをいじらなければならず、この際のテストにかかるコストはとてつもなく膨大になってしまいます。 モジュール間の依存は必ずしも悪になるというわけではないですが、「意図して依存を残す」という意識がないと後で痛い目を見ます。依存性を残すところ、断ち切るところを意図してプログラムを組むことができるようになれば、何かしらの変更を迫られた際、変更箇所だけのテストでシステム全体の正常な動

  • PHP5.5 Alpha1リリース! 新機能を俯瞰する

    こんにちは、久保田です。 PHP5.5 Alpha1が11/15日付けでリリースされました。この記事では以下のような新機能や変更を紹介します。 ・ジェネレータとコルーチンの追加 ・finallyキーワードの追加 ・配列や文字列のデリファレンスのサポート ・foreachの中でのlist表現 ・PCRE正規表現での/e修飾子が非推奨化 ・NEWS翻訳 ジェネレータとコルーチンの追加 PHP5.5での一番大きな新機能は、ジェネレータとコルーチンの追加です。文法にyield構文が追加されました。 まずは、ジェネレータを説明します。例えば以下の様なコードが動きます。 <?php function hoge() { yield "hoge"; yield "fuga"; yield "piyo"; } foreach (hoge() as $str) { var_dump($str); }

    Akaza
    Akaza 2012/11/21
    5.5.0α1
  • PHP+Kestrel+Supervisorでお手軽タスクキューイング

    こんにちは、久保田です。 ウェブサービスでは、ユーザのアクションに従ってバッチ処理を行わなければならないケースがままあります。この記事では、バッチ処理の手法の一つであるタスクキューイングをPHPとKestrelとSupervisorを利用して行うやり方の導入を紹介します。 なぜなにタスクキューイング ウェブサービスでは、ユーザのアクションに従って非同期にバッチ処理を行うようなケースがよくあります。 例えばflickrのような写真を共有するウェブサービスで言えば、ユーザが写真をアップロードしたあとに非同期でその画像の複数のサムネイル生成や加工をしなければならないケースがあります。 よく見られるのは、DBにバッチ処理のためのタスクデータを入れておいて、後でcronで定期的に起動するワーカープロセスからバッチ処理を行う方法です。このやり方には、ワーカーを複数プロセスで扱いづらい、処理がリアルタイ

    PHP+Kestrel+Supervisorでお手軽タスクキューイング
  • 独自/ミラー yum リポジトリを作ろう

    こんにちは、亀です。ブログはだいぶご無沙汰となりました。 気が付いたらもう春ですね。アシアルにも新入社員が入ってきたりして、なんだか少しずつ環境の変化を感じる今日この頃です。 さて今日は、社内に自分達専用のミラー+独自 yum リポジトリを立ててしまおう!というお話です。 扱う話題としては、 ・ローカルにyum ミラーリポジトリを構築する方法 ・・+ローカルリポジトリの使用 ・独自yum リポジトリを作る方法 ・・+独自リポジトリの参照 といった内容について紹介します。 0. 専用 yumリポジトリを立てる事のモチベーション 管理するサーバの台数が少ないうちはいいのですが、管理規模がどんどん多くなっていったり、頻繁に新しいOSをインストールしたりするような場合、OSのパッケージ管理に気を配る必要が出てきます。 社内にCentOSが100台あったとしたら、そいつらが外部からyum upda

    独自/ミラー yum リポジトリを作ろう
    Akaza
    Akaza 2012/01/18
    CentOS
  • PHP5.4 alpha1リリース! PHP5.3からの新機能を見わたす

    こんにちは、久保田です。 先月6月28日、PHP5.4 alpha1がリリースされました。PHP5.3では、名前空間や無名関数の追加など、言語機能に大きな追加が行われました。PHP5.4 alpha1 ではtraitが実装され、オブジェクト指向言語としてのPHPに大きな機能追加が行われました。他にも、<?=記法のデフォルト有効化、array dereferenceの追加、無名関数内の$thisの扱いの変化、JsonSerializableインターフェイスの追加など筆記すべき様々な機能追加、改善が見られます。この記事ではPHP5.4 alpha1で見えてきた新機能をサンプルコードを交えながら概観します。 とりあえずNEWSを訳す PHP5.4 alpha1の変更点を記述した NEWS ファイルを翻訳してみたのが以下です。 <?php trait A { protected $hoge = "

    PHP5.4 alpha1リリース! PHP5.3からの新機能を見わたす
  • http://blog.asial.co.jp/816

  • 手軽に出来るApacheモジュール開発

    [実行結果] Creating [DIR]  hello_world Creating [FILE] hello_world/Makefile Creating [FILE] hello_world/modules.mk Creating [FILE] hello_world/mod_hello_world.c Creating [FILE] hello_world/.deps #include "httpd.h"#include "http_config.h"#include "http_protocol.h"#include "ap_config.h" /* The sample content handler */static int hello_world_handler(request_rec *r){ if (strcmp(r->handler, "hello_world"))

    手軽に出来るApacheモジュール開発
    Akaza
    Akaza 2010/07/08
  • PHPの名前空間と主要フレームワークの対応について

    例: pear2\text_diff\Diff zend\controller\FrontController ・名前空間は常に小文字+アンダースコア ・トップレベル名前空間にはベンダー名が入る ・ベンダー名は最短の名称(Zend Framework => zend, CakePHP => cake, symfony => symfony) ・サブ名前空間はいくつ定義してもよい ・名前空間セパレータはディレクトリセパレータに相当する ・名前空間中のアンダースコアに特別な意味はない まず、名前空間は小文字とアンダースコアで定義します。現状のPEARの規約に慣れ親しんだ方や、PerlRubyなどをお使いの方には、アッパーキャメルケース(InvalidArgumentExceptionのように単語の先頭を大文字にする形式)でないことに違和感を感じるかもしれません。 これは、名前空間とクラス名を

    PHPの名前空間と主要フレームワークの対応について
  • PHPスクリプトの遅い部分を簡単に見つける方法

    extension=xdebug.so xdebug.profiler_enable = 1 xdebug.profiler_output_dir = /tmp と設定して、apacheのリロードを行えばXdebugが動作します。 これで、あとは、ブラウザで調査したいページにアクセスすれば、 /tmp/ 以下にプロファイルデータが作成されていきます。 次にプロファイルデータの閲覧の為に、 http://sourceforge.net/projects/wincachegrind/からWinCacheGrindをダウンロードしてwindowsマシンにインストールします。 あとは、WinCacheGrindで作成されたファイルを取り込めば、関数ごとの 実行時間をたどりながら確認することができます。 ※WordPress2.7.1日語版インストール直後のTOPページで試してみた場合です。 We

    PHPスクリプトの遅い部分を簡単に見つける方法
    Akaza
    Akaza 2009/02/27
    xdebugとWinCacheGrindを使って、パフォーマンス調査
  • Samba over SSH

    こんにちは、スパイシーチキン担当の熊谷です。 近頃話題がめっきり出なくなってしまった!?スパイシーチキンですが、実は昨日のお昼ご飯にべました。なんだかいつもよりチキンが軟らかく且つスパイシーでとても美味しかったです。 さて、他のネットワークで公開されているWindowsのファイル共有やSambaサーバにアクセスしたいと思ったことはありませんか?例えば自宅で使っているファイルサーバのファイルに会社からアクセスしたいとか。そんなときサーバ側にSSHでアクセスできる環境であれば、SSHのポートフォワードを使用してアクセスすることが出来ます。 追記: 仕組みの詳細はsmaba over ssh等でググるといろいろ出てきます。詳細等は以下のサイト等々を参照してください。 http://datafarm.apgrid.org/software/html/ja/user/smboverssh.html

    Samba over SSH
    Akaza
    Akaza 2008/08/27
    ssh samba ポートフォワード トンネリング
  • 1