2009年10月4日日曜日

擬似フレームあれこれ

4分割の擬似フレームを作成しようと思ったのだが、IE6とIE8でDIVタグ内のpaddingの扱いが違うらしく両方に対応するのが困難。

JavaScriptを使ったり、右端のスクロールバーのサイズ分メニューの表示をずらしたり、CSSでexpressionを使用したりと色々あるようだが手間がかからず確実そうな方法が見当たらない。

仕方がないので、IE6ではフレームの外側にスクロールバーを表示し、IE8では画面の右端にスクロールバーを表示するようCSSを切り替える方法で実現した。

擬似フレームのサンプルダウンロード




IE8での表示はこんな具合。




一方、IE6での表示はこんな具合。スクロールバーの位置が違う。


2009年6月15日月曜日

CentOSをコマンドでインストールした

CentOS 5.2をテキストで入れてみた。
インストールのオプションでServerを選び、すべてのソフトをオフにした状態でインストール。
(当然ながら)起動はかなり早いけど何も入っていない・・・

そのときのtelnetとftpを追加でインストールしたメモ。
説明はしない方向で(汗

linux text

Server

##

yum -y install vsftpd
yum -y install ftp

setsebool -P ftp_home_dir 1

chkconfig vsftpd on

service vsftpd restart

##

yum -y install telnet-server
yum -y install telnet

cp /etc/xinetd.d/telnet /etc/xinetd.d/.telnet.bak
sed -e "s/= yes/= no/" /etc/xinetd.d/.telnet.bak > /etc/xinetd.d/telnet

##

cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak

vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT

vi /etc/xinetd.d/vsftpd

/etc/init.d/iptables restart

service xinetd restart

##

useradd -G sys admin
echo password$'\n'password | passwd -f admin

ps -e | grep xinetd
ps -e | grep telnet

reboot

#vi /etc/profile
#export LANG=en_US.ASCII

shutdown -h 0

2009年6月14日日曜日

アプリケーションサーバのクラスタに関する考察

仕事でサーバクラスタの話が出たので少し調べてみることにした。

アプリケーションサーバを24時間稼動にする場合、誰でも2台以上のサーバでクラスタにする、というところまでは思いつくだろう。

しかし、その先が難しい。

ほとんどのWebアプリケーションではHTTPセッションをアプリケーションサーバが管理している。このため、片方のサーバがダウンした場合に他方のサーバに切り替えるとHTTPセッションが無効になってしまう。(つまり、ユーザーは強制的にログオフされることになる)

つまり、セッションをサーバ間で共有する仕組みが必要になる。(これをセッションクラスタリングやセッションレプリケーションというらしい。)幸いにして、多くの(高価な)アプリケーションサーバはセッションの共有に対応している。

たとえばWebLogicではクラスタ化したサーバ間でHTTPセッションをレプリケートできるらしい。(といったことが下のページに書かれている)
http://otndnld.oracle.co.jp/document/products/wls/docs81/cluster/failover.html

InterstageもV4 Enterpriseからセションリカバリ機能に対応しているらしい。
http://interstage.fujitsu.com/jp/technical/faq/apserver/v5/j2ee_webapp/faqmwtaps024.html

ただし、具体的な設定やハードウェアについて書かれているページは少ない。価格の高いエディッションでないとサポートしていない場合もあるので十分な下調べが必要そう。ネットワークの設定も問題だ。データセンターにおく場合、サーバ間で妙な通信方法とかを使用されているとお手上げである。


アプリケーションサーバを選んだら、次にクラスタを行うための方法を決める必要がある。大規模なシステムではハードウェアでクラスタを行う機器を導入するようだが、今回はそこまでの信頼性は必要なさそうなのでソフトウェアで行えないか調べた。

専用のハードウェアを使用しない場合、ApacheまたはLinuxを利用してTCP/IPの接続を振り分ける。方法はいくつかある。

・DNSラウンドロビンを使う。
http://japan.cnet.com/blog/neta/2006/08/10/dns_ecfc/
・NATまたはDRSを使う。
http://dsas.blog.klab.org/archives/50678999.html
・Apache+mod_proxy_balancerを使う。
http://www.ksknet.net/apache/mod_proxy_balan.html

Linuxの場合はLinux Virtual Serverとkeepalivedを組み合わせて使うらしく、設定が複雑そう。

Windows Serverの場合、Windows2003以降はNetwork Load Balancerという機能により簡単にロードバランスを実現できる。ただし、セッションレプリケーションには別サーバを立てるかSQL Serverが必要。今回のシステムはDBがOracleになりそうなのでWindows Serverの導入は難しそうだ・・・残念無念。


最後に。クラスタやロードバランサを導入した場合、それ自体が故障したら元も子もないので2台用意しないとだめかもしれない(そして更に経費がなくなる訳だ・・・)

2009年6月6日土曜日

SSD搭載ネットブック価格調査(2009年6月)

少し前にネットブックを購入したばかりなのだが、仕事用にもう一台ほしくなったり。
SSD搭載のがほしいので価格.comで調べてみた。

HP Mini 1000 SSD8GBモデル
\33,799
http://kakaku.com/spec/K0000007631/

HP Mini 1000 SSD16+8GBモデル
\35,800
http://kakaku.com/spec/K0000007632/

ASUS Eee PC 901-16G (パールホワイト)
\36,275
http://kakaku.com/spec/K0000007984/

ASUS Eee PC 901-X (ファインエボニー)
\37,500
http://kakaku.com/spec/00200916914/

ASUS Eee PC 901-16G (ファインエボニー)
\37,514
http://kakaku.com/spec/K0000007985/

東芝 NB100 NB100/HF PANB100HNUF
\41,900
http://kakaku.com/spec/K0000015456/

NEC LaVie Light BL100/TA PC-BL100TA
\42,982
http://kakaku.com/spec/K0000038267/

ONKYO SOTEC C204A3
\47,619
http://kakaku.com/spec/K0000036507/

HP Mini 1000 夏モデル SSD32GBモデル
\47,880
http://kakaku.com/spec/K0000032319/

ASUS Eee PC S101 (ブラウン)
\50,950
http://kakaku.com/spec/K0000001938/

ASUS Eee PC S101 (シャンパン)
\54,691
http://kakaku.com/spec/K0000001939/

ASUS Eee PC S101 (グラファイト)
\54,700
http://kakaku.com/spec/K0000001940/

SONY VAIO type P VGN-P80H/W
\67,757
http://kakaku.com/spec/K0000014262/

SONY VAIO type P VGN-P61S
\67,800
http://kakaku.com/spec/K0000037090/

ONKYO SOTEC C204A3B
\69,705
http://kakaku.com/spec/K0000036508/

※直販・色違いなどは除く。


見た目で選ぶならS101だけど値段が・・・。
値段で選ぶならEee PC 901-16Gが一番バランスがよさげ。
うーん、悩む。

2009年1月18日日曜日

PHP5をWin2003に入れるのが面倒な点について

久しぶりにPHPをインストールしてみたがうまく動かない。いろいろ調べたところ、PHP4時代から設定がすこし変わっている模様。

標準設定のままインストールすると、Webサービス拡張への登録が行われないためPHPが表示されない。そのほかの注意点として、デフォルトでは<? ?>が無効になっている(<?PHP ?>とする必要がある)ことと、php.iniはインストールしたフォルダのものを見ているっぽいといったとこがある。

環境

  • Windows server 2003 R2 Standard SP2 (32bit)
  • PHP 5.28 インストーラ付版 (php-5.2.8-win32-installer.msi)
  • IIS 6.0

手順














ISAPIを選択



Multi Byte String(日本語サポート)とMySQLは最低でも入れておく。






サービスを追加。




/でアクセスしたときにindex.phpが表示されるように設定。


<? ?>を許可する場合、C:\Program Files\PHP\php.iniを開いてshort_open_tagをOnにする。
ファイルに保存後、IISを再起動する。

Share