OSC2015 Fukuoka 参加セミナーでのメモ

2015年10月3日(土)に九州産業大学で開催された オープンソースカンファレンス 2015 Fukuoka (http://www.ospn.jp/osc2015-fukuoka/)に参加しました。

今回はセミナー中に書いたメモを(ほぼ)そのままだしてしまおうかと思います(手抜き)。だんだんメモが少なくなっていくのがリアルですね。


Open Compute Project についての第3弾 〜オープンソース化した Facebook のサーバとデータセンタとネットワーク

担当:Cobalt Users Group/Project BlueQuartz
講師:伊藤 正宏

  • スケールメリットを活かすための設計。
  • データセンターは全世界電力の1〜2%を消費。電力消費が最大の課題。
  • 涼しいところでエアフロー最優先のデータセンター、サーバー。
  • すかすかのサーバー。エアフロー、修理(部品交換)簡単。

純水ミストでの冷却はコスト高で中止、といったネタもありました。その夕方の弊社社長のツイートが(たぶん偶然)同じく純水ぶっかけネタだったのでなんとなく確保。


PG-REXで学ぶPacemaker運用の実例

担当:Linux-HA Japan Project
講師:東 一彦(Linux-HA Japan Project)

  • 「PG-REX利用マニュアル」が存在する。
  • crm_mon -rfA おすすめ
  • Pacemaker1.1はctr+D押下でヘッダ表示消えるそうな。へーへーへー
  • Act側Sby側でログは異なる。故障時は両方みないとわからないことが多い。
  • 資料公開されてる。
  • vip-master故障時、故障した方のPacemakerを一旦停止するのが良い。
  • PG-REX運用補助ツール
    • pg-rex_slave_start 修理したサーバーをスレーブに組み込み
    • pg-rex_switchover マスターとスレーブを入れ替え
    • stonith-helper スレーブ側が10秒待つ

弊社のお客さんでPG-REXな構成で運用しているところがあるんですがPG-REXと呼ばれる前に構築したものだったり。PG-REX運用補助ツールいいなぁ。つかえるのかなぁ。


【飲食OK】Samba4を「ふつうに」使おう!Samba4によるファイルサーバ構築テクニック

担当:日本Sambaユーザ会
講師:たかはしもとのぶ

  • SeLinux活かして運用するの大変そう。
  • スライドシェアに資料

Firefox OS から眺める HTML5 アプリ開発最前線

担当:Mozilla Japan
講師:清水 智公

  • ロジックはJavaScriptでしか書けない。それは良し悪しだが経験した面倒なところ。
    • コールバック地獄
      • Promiseを使った非同期処理
        • コードが読みやすくなる
        • 待ちも簡単に
        • テストが容易になる

次世代ECプラットフォーム「EC-CUBE 3」に迫る!「3」で何が変わったのか!?

担当:EC-CUBE九州ユーザーグループ
講師:金 陽信

  • 2系の問題
    • プラグイン同士の競合
      • 安心して使えない
      • カスタマイズが必要になり導入コストが高くなる
    • セキュリティ面の課題
      • 手順が複雑でバージョンアップしにくい
    • 拡張性の課題
      • WEB中心のソフトウェア
      • 今後、スマホアプリ対応などが困難
  • 2系は全部入り

  • 3系はコアだけ残してプラグイン対応。

    • Symfony Components採用。
    • フレームワーク
      • Silexフレームワーク。
      • Doctrine ORM
      • Twig
    • フィーチャーフォンを切ってすっきり。


次期baserCMSの新機能と今後の展望

担当:baserCMSユーザー会
講師:江頭 竜二

http://www.slideshare.net/ryuring/baser-cms-53530309

  • 予定されてる「統合コンテンツ管理システム」いいぞー。

ところで、baserCMSのベースとなっているCakePHP、2系についてはPHP7で動かないのでは?(予約語が増えてぶつかっちゃったので)という問題があるわけですが、


オープンソース!Open Flow 1.3 対応!日本発のネットワークスイッチOS「Lagopus Switch」

担当:Lagopus Users Community
講師:日比 智也(Lagopus Users Community)

  • Lagopus(OpenFlow スイッチ)はいろいろなことができるが、セッション(ステート)は持てない。
  • ソフト屋としてはパフォーマンスチューニングの話が面白かった。
    • そのまま実践することはないと思うけど(レイヤーが違うので)。

以上、現場(のメモ)からお届けしました。

Facebooktwitterlinkedintumblrmail

今更CentOS5+PHP5.1な環境にphpunitを入れる

保守等で現役だったりする、CentOS5+PHP5.1。

テストでSelenium(Selenese)を使うのに、外部サーバを使うのも面倒なので、CentOS5+PHP5.1な環境にphpunitを今更ながら入れてみました。
今のphpunitはPHP5.1では使えないので、epelのパッケージを利用してみます。

yum -y install epel-release
yum -y install php-pear-PHPUnit
pear upgrade pear

pearを実行しようとするとエラー。何故かパスが通っていないので、php.iniへ追加。

include_path = "[現在のPath]:/usr/share/pear"

これでpearはOK。

古いphpunitだとSeleniumの実行にインクルードが必要らしいので、
Selenium IDEからPHPUnit形式でエクスポートしたtest.phpに一行追加。
https://phpunit.de/manual/3.3/ja/selenium.html

require_once 'PHPUnit/Extensions/SeleniumTestCase.php'; // 追加行
class Example extends PHPUnit_Extensions_SeleniumTestCase

実行しようとするとSeleniumのクラスがcould not be foundになります。

phpunit test.php

phpunit3.4辺りでfixしてるようなので、githubから3.4を持って来て上書きしてしまいます。
https://github.com/sebastianbergmann/phpunit/tree/3.4

# rpm経由のphpunitを退避
mv /usr/share/pear/PHPUnit /usr/share/pear/PHPUnit-3.3.5
mv /usr/bin/phpunit /usr/bin/phpunit-3.3.5
# 3.4で上書き
unzip phpunit-3.4.zip
cd phpunit-3.4
mv PHPUnit /usr/share/pear/
cp phpunit.php /usr/bin/phpunit

実行。
取りあえずこれで目的のSeleniumは動いたので、良しとします。

Facebooktwitterlinkedintumblrmail

URLを統一したくなったので.htaccessで301リダイレクト

自社サイトにWOVN(https://wovn.io)を導入してみました。

http://www.lancard.com/ にアクセスすると右下にウィジェットが表示されていると思います。今のところほぼ機械翻訳なのでご笑覧ください(ランカードコムが orchid card com と訳されているところに気づいたら直したくらい)。

そんなわけでWOVNの管理ページを見ていたら http://lancard.com/ でのアクセスや http://www.lancard.com/work/index といったindex付きのアクセス(拡張子無しのindexなのはBaserCMS絡みです)が結構あって、URLを統一しないとアカンなぁと思ったのでした。SEO的にも統一したほうが良いとは聞きますし。

Apacheで動かしてるので.htaccessでどうにかします。
www付きに統一して、indexは無しという方針。

RewriteEngine on
#www付きに統一
RewriteCond %{HTTP_HOST} ^lancard\.com
RewriteRule (.*) http://www.lancard.com/$1 [R=301,L]

#indexなしに統一
RewriteCond %{THE_REQUEST} ^.*/index
RewriteRule ^(.*)index$ http://www.lancard.com/$1 [R=301,L]

#BaserCMS
RewriteBase /
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]

こんな感じになりました。

Facebooktwitterlinkedintumblrmail

RoundCube用にCentOSのpostfix+dovecotで簡単なテスト環境を作る

RoundCubeは設定出来たけど、メールサーバが設定出来なくてテスト出来ない。
localhost内でやり取りする程度で十分だけど・・・そんな人へ。

実験したのはCentOS6です。
DovecotもPostfixもデフォルトの設定を利用するのであれば、設定は1,2項目で済みます。

この投稿の続きを読む »

Facebooktwitterlinkedintumblrmail

PHP カンファレンス福岡に(ry

行ってきました。shun です。
ひと月以上前に参加登録が始まった当初からいつかやらなければと思っていたんですが結局時間を作れず、php 無知なまま出発しました。そう私、実は php 経験が無かったのです…!(続く)

この投稿の続きを読む »

Facebooktwitterlinkedintumblrmail

PHPカンファレンス福岡2015 に参加しました

murave@プレモル1本目です。

2015年6月27日に開催された PHPカンファレンス福岡2015 に参加しました。

http://phpcon.fukuoka.jp

私が参加したのは以下の通り。

・開会式・スポンサー紹介
・基調講演「全てを結ぶ力」(郡山 昭仁 @koriym)
・あなたと秘伝のタレ mid 2015 (石田 絢一 @uzulla)
・10年超えるサービスのphpバージョンを4から最新にする話 (小田 知央 @linyows)
・CakePHP3ウォークスルー (長谷川 智希 @tomzoh)
・CodeIgniter update (宮川 貴子 @NEKOGET)
・Laravel5を使って開発してみた (野田 健夫)
・Phalcon PHPフレームワーク Sense of Use (近藤 和宏)
・CakePHPを業務で使ってみた(7年ほど) (小山 健一郎 @k1LoW)
・インフラエンジニアからレガシーPHPへのレイヤーアップ (山下 和彦)
・レイヤードアーキテクチャを意識したPHPアプリケーションの構築 (新原 雅司 @shin1x1)
・ライトニングトーク
・閉会式

この投稿の続きを読む »

Facebooktwitterlinkedintumblrmail

PHPカンファレンス福岡2015 After Hack にいます

Fusicさんで開催されている『PHPカンファレンス福岡2015 After Hack』にいます。

https://fusic.doorkeeper.jp/events/26357

Fusicさん提供の電源、ネットワーク、コーヒー、ビールで『PHPカンファレンス福岡2015』のブログを書こうと思ってやって来ました。

この投稿の続きを読む »

Facebooktwitterlinkedintumblrmail

Future Sync Vol.5 に参加しました

2015年5月16日に開催された Future Sync Vol.5 に参加しました。
あれからもう一週間たってしまいました。遅くなりましたが感想などを。

私が参加したセッションは以下の通り。

・複雑に絡み合ったユーザーの思いを「ともにデザイン」するインクルーシブデザイン (平井康之)
・Blockchain 〜ビットコインを支える技術〜 の現在と未来 (栗元憲一)
・ウェアラブルからシンギュラリティへ (塚本昌彦)
・脳がシビれる心理学 (妹尾武治)
・世の中をザワつかせる方法 (眞鍋海里)

この投稿の続きを読む »

Facebooktwitterlinkedintumblrmail

baserCMS 3.0.7 でカテゴリ名、簡単に取れました

muraveです。

チョイ前の記事

baserCMSを3.0.2から3.0.7へ。ところでカテゴリ名ってまだ簡単に取れないんです?

で、タイトル通りの疑問を書いてましたら親切な匿名の方からコメントで情報を頂きました。

曰く、$category = $this->BcPage->getCategory(); echo h($category[‘title’]);

$categoryへの代入等はこちらで追加させてもらいましたが、確かにこれです!

ありがとうございます。

てなわけで、getCategory関数を使用してのカテゴリーのタイトル取得は以下のようになりました。

//カテゴリーのタイトルを取得
$category = $this->BcPage->getCategory();
$product_title = $category['title'];

真っ当感、ありますな。

ところで、このgetCategory関数のリファレンス、http://wiki.basercms.net/関数リファレンス/getCategoryにあったんですが、用例が変ですね。

BcPage->getCategory() ?>

でカテゴリー名が出力されるように読めるんですが、getCategory関数の返り値はarrayですのでそのままechoしちゃだめです。

Facebooktwitterlinkedintumblrmail

『Laravelエキスパート養成読本』献本いただいたのでキャンプへGO!

muraveです。Laravel(4系)には平素よりお世話になっております。

待望のLaravel本『Laravelエキスパート養成読本』が4月21日に技術評論社から発売されます。

著者のお一人、Laravel答えるマンことlocaldiskこと松尾大さんから献本いただきました。ありがとうございます!

先週の木曜日午後に届きまして、翌日、とても晴れていたので、休みを貰ってキャンプに行きました!(謎)

この投稿の続きを読む »

Facebooktwitterlinkedintumblrmail