memcachedのベンチマーク測定

libmemcachedの付属ツールを使って測定できるということなのでlibmemcachedをインストールして測定してみました。

$ /usr/local/bin/memslap --servers=127.0.0.1:11211 --test set

としたら

memslap: unrecognized option

とか言われて怒られました。
mekeで失敗してた感じなのをスルーしたせいかな?

で下記を実行
これはすんなりいきました。

$ /usr/local/bin/memslap -s 127.0.0.1:11211
servers : 127.0.0.1:11211
threads count: 1
concurrency: 16
run time: 600s
windows size: 10k
set proportion: set_prop=0.10
get proportion: get_prop=0.90
cmd_get: 12312537
cmd_set: 1368071
get_misses: 7783539
written_bytes: 2373588715
read_bytes: 5077038895
object_bytes: 1488461248

Run time: 600.1s Ops: 13680608 TPS: 22798 Net_rate: 11.8M/s



でさらに調べたらもっと簡単そうなのがあったのでそれを利用
http://www.interdb.jp/techinfo/mcb/

コンパイル
gcc -Wall -lpthread -lnsl -o mcb mcb.c

エラーが出る

mcb.c: In function ‘connector_thread’:
mcb.c:529: warning: cast from pointer to integer of different size
mcb.c: In function ‘main’:
mcb.c:859: warning: cast to pointer from integer of different size

どうやら64bit環境のせいらしい。
http://www.programming-magic.com/20081019165052/

malloc.hをincludeして再度コンパイル
あれ?また同じエラー・・・・

でもなぜか使えるようになった。

./mcb -c set -a 127.0.0.1 -p 11211 -t 10 -n 1000 -l 100
condition =>
        connect to 127.0.0.1 TCP port 11211
        command = set
        10 thread run
        send 1000 command a thread, total 10000 command
        data length = 100
result =>
        interval =  0.353254 [sec]
        performance =  28308.236398 [command/sec]
        thread info:
          ave. = 0.284751[sec], min = 0.215646[sec], max = 0.352510[sec]


まだ、memcachedが落ちる問題が解決してないので引き続き調べていきます・・・

とりあえずやり方忘れるからメモ

memcachedがなぜか落ちるので自動再起動

http://d.hatena.ne.jp/editnuki/20120415/1334474130

これを参考に自動再起動設定しました。

起動スクリプトにおかしいところはない感じなんだけど・・・

なぜかrestartができないのでstartで開始するように変更。

 

15秒おきで3回チェック

異常のままなら再起動って感じらしい。

これをcronで3分置きに実行。

お好みでmailコマンドで再起動かかったらメールするようにするといいかも。


#!/bin/sh TCPCHECK_CMD=/usr/lib64/nagios/plugins/check_tcp CHK_OK="TCP OK" COUNT=1 while [ $COUNT -le 3 ]; do RES=`$TCPCHECK_CMD -H localhost -p 11211 -t 5 -E -s 'stats\r\nquit\r\n' -e 'uptime' | awk '{print $1,$2 }' | head -n 1` if [ "$RES" = "$CHK_OK" ]; then echo "memcached status OK" exit 0 else echo "memcached status NG" fi COUNT=`expr $COUNT + 1` sleep 15 if [ $COUNT -gt 3 ]; then /etc/rc.d/init.d/memcached start echo "RESTART" fi done exit 0


まだ、落ちる現象の原因は未解決だけど、どうしようか・・・・1日1回程度なら再起動かかっても特に問題ないんだけど、今後の開発のために調べておいた方がいいんだろうな~

memcachedが落ちたのでNagiosで監視

急にキャッシュしなくなったので何でかと思ったら

closeし忘れていたせいで接続数がオーバーした模様。

まだ、サービス公開してないので良かったけれど公開していたらまずかった。

ということで

Nagiosで監視することにしました。

 

11211ポートに接続できるか?

memcachedが稼動しているか?

を下記の設定で監視できます。

 

vi /usr/local/nagios/etc/objects/localhsot.cfg

localhsot.cfgに下記を追加

#memcached
define service{
  use                             local-service
  host_name                  localhost
  service_description     memcached
  check_command         check_memcached
}

 

vi /usr/local/nagios/etc/objects/commands.cfg

commands.cfgに下記を追加

#memcached
define command {
 command_name    check_memcached
 command_line       $USER1$/check_tcp \
   -H $HOSTADDRESS$ \
   -p 11211 \
   -t 5 \
   -E \
   -s 'stats\r\nquit\r\n' \
   -e 'uptime' \
   -M crit
}

http://gihyo.jp/dev/feature/01/memcached_advanced/0003?page=1を参考にして設定したのだけれど-Eオプションが-s 'stats\r\nquit\r\n' \の後に書かれていたのでそのままだと動かなかったので-Eオプションを先に記述。

(コマンドにて改行コードを利用するためには-Eが必要)

 

ダウンした時、再起動も自動でしたいと思って探したら

http://d.hatena.ne.jp/editnuki/20120415/1334474130

まだ、試してないけどあとでやる予定。

ひとまず、これで様子見します。

 

追記

やっぱり落ちた。

コネクション80%越えたらアラート出すようにしてみようかと思います。

 http://gihyo.jp/dev/feature/01/memcached_advanced/0003?page=1

でも、ある特定の動作の時によく落ちてる気がするからその辺も怪しいんだけど

どうも、再現されないから困る・・・・

 

mod_expiresが効かないと思ったらモジュール版PHPを使ってたせいだったのか

なんか挙動がおかしいと思ってたらこういうことだったとは・・・

http://www.arielworks.net/articles/2004/0125a

このままのコードだと動かなかったので

$time_newestに値を追加して

$time_newest = strtotime("now");
$time_newest = intval($time_newest);

キャッシュがない場合Last-ModifiedとExpiresを出力したら正常に動作しました。

header( 'Last-Modified: ' . gmdate( "D, d M Y H:i:s T", $time_newest ) );
header( 'Expires: ' . gmdate( "D, d M Y H:i:s T", $time_newest + 600 ) );//とりあえず10分にした

 

でもなんかまだ気になる点があるけど動いたらから

ま、いっかということで先に行こうかと思います・・・

 

そういえばステータスコード304を返すとSEO的にはどうなんだろう?

再訪までの期間とかどうなるんだろう?

エロWEBサービスが熱い

最近、エロWEBサービスが続々と出てきてびっくりする。
しかも、素人がすごいサービスを作ったりしているからさらに驚きです。

僕なんて1個のサービス作るのにそれはそれは血の滲むような思いでエロ動画を見まくって・・・
じゃなくて血のにじむような努力をして1ヶ月くらいかけて完成させるわけですよ〜
もうね、上がいすぎて自分はなんてちっぽけなんだろうと思っちゃいます。

たとえば
http://anond.hatelabo.jp/20130120190550
の人とか素人なのにすごいです・・・僕なんてhtmlを覚えてからサーバー立てるまでに何年もかかってるのにorz
この人こっちの業界来た方がいいんじゃないかなと思います。

で次はこの方
http://d.hatena.ne.jp/inouetakuya/20120331/1333192327
この方はプロの人みたいですけどすごくお洒落で動きのあるエロサイトを作ってます!

そして
http://razokulover.hateblo.jp/entry/2013/01/14/072823
この人は学生さんみたいです。
いまどきの学生さんはこういうこと簡単にできちゃうんだろうな〜
ちなみにアドワーズに彼女募集の広告を出してましたw

最後に
http://anond.hatelabo.jp/20130122180847
いや、もうすごいっすw
顔認識システムで自分好みのAV女優の動画を探せるというありがたいサービス

ほかにもあるかもしれないですが僕が知っている限りだと短期間でこれだけのエロサービスが作られています。
エロいサービスってわくわくするんですよね〜

僕も負けずに頑張るぞ!
というわけで
現在、新たにエロWEBサービスを開発中ですw

これからアダルトサイトを始めようと思ってる人へ!アダルトサイト運営で失敗しないため6項目の予備知識

アダルトサイトを始めようと思っている人へ
自分がアダルトサイトを作る際に調べたことや運営してから気づいたことなどをふまえ
準備段階として絶対に知っておいた方がいいことをつらつらと書いていこうかと思います。

1、ブログかホームページかWEBサービスか?
2、サーバー選び
3、どのジャンルで運営するか?
4、アフィリエイトについて
5、更新について
6、アダルトサイト運営時の注意事項と風営法の届出

1、ブログかホームページかWEBサービスか?

まずサイトを始める前にどのタイプでサイトを始めるかで必要な知識や条件が変わってきます。

・ホームページ制作の知識が全くない場合
アダルト可能なレンタルブログでの運営が早いかと思います。
ただ、画像の圧縮など多少の知識は必要なのでなんとかググって覚えて下さい。

・普通程度にホームページ制作の知識がある場合
アダルト可能なレンタルサーバーを借りてブログまたはホームページでの運営になります。
ただし、中途半端なスペックのサーバーや安すぎるサーバーなどを借りるなら
FC2などの無料のアダルト可能なレンタルブログで運営した方がいいです。
アダルトサイトは人気が出るとアクセス数がアダルトでない一般のサイトより多くなる可能性があるので
転送量が簡単にオーバーしてしまったりサーバーに負荷をかけすぎて制限されたりする可能性があります。

・ホームページ制作の知識やサーバーの知識がめちゃくちゃある場合
どのタイプでも運営可能ですがサーバー選びは重要です。

2、サーバー選び

サーバーを借りて運営をして行く場合
アダルトサイトの場合、サーバー選びは非常に重要になります。
また、無修正サイトなどの場合は選択肢は海外サーバーしかありません。ただし、無修正物はアップロードするのはやめた方がいいです。あくまで海外サイトの画像や動画へリンクするという形にするようにした方がいいかもしれません。
修正ありでしたら国内のサーバーでも運営可能です。

チェック項目として

  • サーバー会社の評判
  • サーバー会社の設立年月日やサービスの開始時期
  • 転送量
  • 回線の太さ
  • サーバーの距離
  • 容量
  • 料金

といった感じになります。
中でも評判とサービスの開始時期はよくチェックして下さい。
サーバー会社の設立年月日やサービスの開始時期をチェックするのはなぜかと言いますと
評判の悪いサーバー会社のサービスを別会社で再販するケースがあるからす。
設立して間もない会社やサービス開始して間もないようなところは避けた方が無難です。

転送量は無制限のところがほとんどとなっていますが
実際に無制限のところはないです。
同じサーバーに同居している他のユーザーに迷惑がかかりそうな場合制限されます。

回線太さですが100M共有なんて場合はあまりお勧めできません。
共用サーバーで人気サイトなんかと同居してしまった日には大変です。

サーバーの距離というのは実際にサーバーが設置されている場所のことです。
海外サーバーを借りる場合、日本からの距離は重要です。
例えばアメリカのサーバーを借りるとして西海岸と東海外とで倍近く通信時間に違いが出ます。
これは自分が失敗したので声を大にして言いたい。
西海岸のサーバーにするべきです。

容量は多いに越したことはないです。

料金ですが日本でサーバーを借りる場合、かなり高くなります。
また、無修正サイトなどは運営できません。

コストを抑えて自由度の高いサイト運営したい場合
海外のVPSがお勧めです。
むしろ海外VPS以外で運営するならFC2ブログ http://blog.fc2.com/ でレンタルして運営するのが一番かと思います。
お勧めできるVPSですがLINODE http://www.linode.com/さんがけっこういいと思います。

3、どのジャンルで運営するか?

まず、http://adult-slider.com/ で年齢のつまみを動かしてみて下さい。
動画件数が表示されると思います。
一番、需要のある年齢は23歳となっています。22〜24がボリュームゾーンといったところでしょうか。
次に http://nukinator.com/で運営してみたいジャンルを検索してみて下さい。
「人妻」で検索をかけた場合6000件以上の動画が検索結果に表示されます。
作品数の多いキーワードはそれだけ需要がありますので需要のあるゾーンで運営するサイトの条件を決定してきます。

例えば「人妻」動画紹介サイトを運営する場合
22〜24歳くらいの女優さんが出演している動画を紹介するとリピートしてくれる確立が高くなります。

これとは逆にマニアな層に向けたサイトを運営するのも良い場合もあるようです。
こちらの場合コンバージョン率が高くなる傾向があると聞いています。
ただし、運営するにはそういった性癖がないとかなりきつい作業になるかと思います。

4、アフィリエイトについて

皆さんアダルトアフィリエイトはものすごく儲かると思っているかもしれませんが
正直なところそれは一部のサイトだけです。
爆発的なアクセスがあるようなサイトにはかなり収益があがります。
アダルトサイトの場合 数十万〜200万程度稼げるか1万円未満程度しか稼げないか両極端になるかと思います。
では、具体的な数値の話になりますが
1日およそ5〜7万PVで数十万の収益をあげることができるようです。
1日数千程度のアクセスですと1万円未満収益になるかと思います。
なぜここまで収入に開きが出てくるかということですが
それは純広告や特定の広告代理店との繋がりがあるかどうかがポイントになります。
広告を出す方は当然ですがある程度まとまったアクセスが期待できそうなサイト以外に接触しません。
数千アクセス程度ではまず純広告を取ることは難しいです。
アダルトを扱う広告代理店でもある程度成果をあげられるサイトとしか特別な単価での交渉してくれません。
そしてそうなると自分で掲載できる広告というのはアダルトASPの物に限定されてしまうので
思うように収益をあげることができないです。
まず運営するにあたりアクセスを伸ばすことを第一に考えるようにした方がいいです。

純広告や広告代理店との契約が取れない場合
アダルトASPでお勧めするとしたらDTIが良いかもしれません。
DTI http://www.affiliate-dti.com/の場合、成果カウントにクッキーを利用している素材があるので再訪問での登録でも成果がカウントされます。
クッキー素材があるかどうかは収入に大きく影響されるのでなるべくクッキーを利用した素材を使う方がいいです。

5、更新頻度について

アダルトサイトの場合、更新頻度は命です。更新のことを考え、なるべく手間のかからないような仕組みで運営することをお勧めします。
例えば、ホームページとブログであれば圧倒的にブログの方が更新が楽です。
プログラムで自動的に更新してしまうような場合でなければブログでの運営が良いです。
多くのアダルトサイト途中でやめてしまうのは更新の手間が予想以上に大変だからです。
無理なく続けられる仕組みを利用しましょう。
人気のあるサイトはほぼ毎日更新しています。

6、アダルトサイト運営時の注意事項と風営法の届出

アダルトサイトを運営する場合、日本ではかなり神経質にならざるを得ません。
まず、日本で禁止されているものですが

・児童ポルノにひっかかる物(http://ja.wikipedia.org/wiki/%E5%85%90%E7%AB%A5%E8%B2%B7%E6%98%A5%E3%80%81%E5%85%90%E7%AB%A5%E3%83%9D%E3%83%AB%E3%83%8E%E3%81%AB%E4%BF%82%E3%82%8B%E8%A1%8C%E7%82%BA%E7%AD%89%E3%81%AE%E5%87%A6%E7%BD%B0%E5%8F%8A%E3%81%B3%E5%85%90%E7%AB%A5%E3%81%AE%E4%BF%9D%E8%AD%B7%E7%AD%89%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E6%B3%95%E5%BE%8B
・無修正

特に無修正に関してはその物をサーバーにアップロードする行為は日本ではアウトですし海外サーバーを利用の上でも危険なのでやめておいた方が無難です。

風営法の届出は有料会員などで料金を取る場合、届出が必要になります。
アフィリエイトにおいては特別な届出は必要ないようです。

簡単ですが予備知識として以上のことは非常に重要になりますので
これからアダルトサイトを運営しようと思っている人、アダルトサイト運営に興味がある人は参考にしてみて下さい。

jQueryを使ってスライダー式アダルト動画検索作ってみた!

皆さんこんにちは、タイトルを見てまたあいつかよ!と思った人もいるかと思いますが
ええ、そうですまた私ですw
「アダルト動画検索ヌキネーター」と「これなんてAV女優?」をちょっと前に作った者ですが
あれから、さらに自分好みのエロ、my favorite エロを見つけるにはどうしたらいいか考えていました。

頭のの中はエロでいっぱい。
朝も昼も夜も雨の日も風の日もエロでいっぱい
いい年したおっさんのくせにエロでいっぱい。
若干、これでいいのか?と人生について考えてしまいましたw



そして、私はついにその方法を見つけました!



あれをこうしてこうやってどーん!ってしたらいける!



というわけで



アダルト動画検索ADULT SLIDER
略して「アダスラ
http://adult-slider.com/


作りました!



どんなサイトかというと
バスト、ウエスト、ヒップ、カップ数、身長、年齢の項目で両端可変のスライダーがあり
つまみをお好みで調整することにより自分の好きなタイプの女性のエロ動画が探せるってやつです。
リアルタイム?で検索結果が画面に反映され該当動画のサムネイルが一覧で表示されます。

まあ、ぶっちゃけあの有名な完全に一致さんで使われてたjQueryのselectToUISliderがかっこ良すぎたので自分も使ってみたかっただけなんですw





それでは、どんな手順で作ったか簡単に書いてみたいと思います。

1、スクレイピングによりデータを収集しデータベース化する

作成するデータ

  • AV女優データ
  • 動画データ

スクレイピングに利用したライブラリ

htmlSQL
ダウンロード http://www.jonasjohn.de/lab/htmlsql.htm

AV女優データの作成方法

某レンタル、通販サイトのAV女優データを収集
バスト、ウエスト、ヒップ、カップ、身長、生年月日が記載されているのでその項目をスクレイピング

include_once("snoopy.class.php");
include_once("htmlsql.class.php");

$wsql = new htmlsql();

if (!$wsql->connect('url', "スクレイピング対象URL")){
    print 'Error while connecting: ' . $wsql->error;
    exit;
}
//取得範囲の指定
$wsql->isolate_content('<table class="hoge">', '</table>');
//td内の情報取得
if (!$wsql->query('SELECT * FROM td')){
print "Query error: " . $wsql->error;
exit;
}
foreach($wsql->fetch_array() as $row){
	//$row[text]などでtd内のテキストデータをごにょごにょして対象データをいじる。
}

動画データの作成方法

各種動画サイトよりhtmlSQLを使い動画URLやタイトルなどを取得する。
やり方はAV女優データの作成方法と同じです。

AV女優データと動画データを女優名で紐付けする。


2、スライダーと動画データの抽出と表示

利用したjQuery
selectToUISlider
ダウンロード http://www.filamentgroup.com/lab/update_jquery_ui_slider_from_a_select_element_now_with_aria_support/
Zoomer Gallery
ダウンロード http://addyosmani.com/blog/zoomer-gallery-a-jquery-plugin-for-displaying-images-with-flash-like-zooming-effects/

スライダー利用準備
htmlヘッダー内に以下を記述し指定ディレクトリにファイルをアップロードします。

<head>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.7.1.custom.min.js"></script>
<script type="text/javascript" src="js/selectToUISlider.jQuery.js"></script>
<link rel="stylesheet" href="css/redmond/jquery-ui-1.7.1.custom.css" type="text/css" />
<link rel="stylesheet" href="css/ui.slider.extras.css" type="text/css" />

<script type="text/javascript">
	$(function(){
		//.hide()をつけないとドロップダウンが表示される。
		$('select#cups, select#cupe').selectToUISlider({labels: 12,sliderOptions: {change:function(e,ui){getContents();}}}).hide();			
		fixToolTipColor();
	});

	function getContents(){
			var cs =$('#cups').val();//カップの左つまみ
			var ce =$('#cupe').val();//カップの右つまみ
			//getでphpに値を渡しxxx.phpで該当する値のデータをmysqlから引っ張って結果表示部分を作り<div id="douga"></div>に表示する
			var http = $.get("xxx.php?cs="+ cs,null, function(data) {
				$("#douga").html(data);
			});

	}

	//purely for theme-switching demo... ignore this unless you're using a theme switcher
	//quick function for tooltip color match
	function fixToolTipColor(){
		//grab the bg color from the tooltip content - set top border of pointer to same
		$('.ui-tooltip-pointer-down-inner').each(function(){
			var bWidth = $('.ui-tooltip-pointer-down-inner').css('borderTopWidth');
			var bColor = $(this).parents('.ui-slider-tooltip').css('backgroundColor')
			$(this).css('border-top', bWidth+' solid '+bColor);
		});	
	}
</script>
</head>

ボディ内にスライダー部分となるselectを記述


<body>

<select name="cups" id="cups">
<option value="">指定しない</option>
<option value="A">Aカップ</option>
<option value="B">Bカップ</option>
<option value="C">Cカップ</option>
<option value="D">Dカップ</option>
<option value="E">Eカップ</option>
<option value="F">Fカップ</option>
<option value="G">Gカップ</option>
<option value="H">Hカップ</option>
<option value="I">Iカップ</option>
<option value="J">Jカップ</option>
<option value="K">Kカップ</option>
<option value="L">Lカップ</option>
<option value="M">Mカップ</option>
<option value="N">Nカップ</option>
<option value="O">Oカップ</option>
<option value="P">Pカップ</option>
</select>
<select name="cupe" id="cupe">
<option value="">指定しない</option>
<option value="A">Aカップ</option>
<option value="B">Bカップ</option>
<option value="C">Cカップ</option>
<option value="D">Dカップ</option>
<option value="E">Eカップ</option>
<option value="F">Fカップ</option>
<option value="G">Gカップ</option>
<option value="H">Hカップ</option>
<option value="I">Iカップ</option>
<option value="J">Jカップ</option>
<option value="K">Kカップ</option>
<option value="L">Lカップ</option>
<option value="M">Mカップ</option>
<option value="N">Nカップ</option>
<option value="O">Oカップ</option>
<option value="P" selected="selected">Pカップ</option>
</select>

<div id="douga"></div>

</body>

Zoomer Galleryを使ったマウスオーバーによる画像のズームについては
http://addyosmani.com/blog/zoomer-gallery-a-jquery-plugin-for-displaying-images-with-flash-like-zooming-effects/
に詳しく書いてあります。
これを使うとgoogleイメージ検索みたいにマウスオーバーでぶわっと画像が飛び出てきます。



肝心の動画データのプレイヤー部分の表示はヌキネーターの方にリンクして任せています。


3、利用したサーバーや細かい設定などは

http://anond.hatelabo.jp/20110804021353
と同じです。
負荷対策とかDOS対策とか

  • iptablesで攻撃してきそうな国からのアクセスを遮断
  • mod_evasiveの導入で一定時間での連続的なアクセスを遮断
  • httpd.confの設定 KeepAlive等
  • mod_expiresでキャッシュ設定
  • mysql クエリーキャッシュの設定
  • APCの導入


ざっとですがこんな感じで作りました。

このサービスを作ってみて

手前味噌なんですけど予想以上に使い勝手が良くて非常に捗りますw
正直いってジャンルとか女優名で検索するよりはるかに自分好みの動画が探せます。
ADULT SLIDERで好みの動画を探してヌキネータで視聴しブックマークする。
最強です!
個人的に作ってほんとに良かったですw



jQueryのselectToUISliderは色んな分野で使えそうですね。
CVP分析とかその他もろもろの意思決定ツールとか作ったら便利かも。
数値を入力したりせずにつまみを動かすとすぐ結果が出るっていうのが素晴らしい。



しかし、jQueryって素晴らしい。
スーパーハカーじゃなくても見た目派手でこのサイトすごくね?ってサイトが簡単にできる。
魔法のような技術ですね。
自分の技術力だけじゃこんな派手な見せ方はできません。
どちらかと言えば人のふんどしで相撲をとるタイプなんで・・・w
jQueryみたいな誰もが簡単に利用できて、「すげー!」ってなる技術って最高です!



ヌキネーター
これなんてAV女優?
ADULT SLIDER



と3サイト作ってみて今のところエロ系サービスでやりたいことは大分できたかなと思います。
スクレイピングやデータベース、サーバー、セキュリティ関係など大分勉強できました。
エロサービスでなければここまでやらなかったと思います。



そして、サイト作成とは別にはてなで日記を書く楽しさも覚えましたw
サービスを作ったらやはり反応が気になるものでブックマークコメントやツイッターでのコメントとかがあると
嬉しくて小躍りしてましたw
自分の作ったサービスの反響が分かるってほんと楽しいですね。



そしてそして、今回のサービスの反響も気になってますw



アダルト動画検索ADULT SLIDER
http://adult-slider.com/



コメントがあることを祈って小躍りの準備をして待ってます。






全裸でw






そしてそして、ツイッターとかブログとか始めたんでよかったらお友達になってね
プログラマーさんやデザイナーさんやWEB系の技術者の人やエログ運営者さんとかお気軽にお声をおかけください。
情報交換とかエロい話とかできたら嬉しいです。

ではではまたWEBサービスを作った時は日記を書いてみます。
生暖かい目で見守ってあげて下さいw