<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Develop Spot &#187; プログラミング</title>
	<atom:link href="http://www.develop-spot.com/category/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.develop-spot.com</link>
	<description>teamspeakサーバや備忘ログ</description>
	<lastBuildDate>Sat, 11 Feb 2012 04:20:38 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>プロセスを確認して自動起動させる（シェルスクリプト）</title>
		<link>http://www.develop-spot.com/2010/03/%e3%83%97%e3%83%ad%e3%82%bb%e3%82%b9%e3%82%92%e7%a2%ba%e8%aa%8d%e3%81%97%e3%81%a6%e8%87%aa%e5%8b%95%e8%b5%b7%e5%8b%95%e3%81%95%e3%81%9b%e3%82%8b%ef%bc%88%e3%82%b7%e3%82%a7%e3%83%ab%e3%82%b9%e3%82%af/</link>
		<comments>http://www.develop-spot.com/2010/03/%e3%83%97%e3%83%ad%e3%82%bb%e3%82%b9%e3%82%92%e7%a2%ba%e8%aa%8d%e3%81%97%e3%81%a6%e8%87%aa%e5%8b%95%e8%b5%b7%e5%8b%95%e3%81%95%e3%81%9b%e3%82%8b%ef%bc%88%e3%82%b7%e3%82%a7%e3%83%ab%e3%82%b9%e3%82%af/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 18:08:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[VPS]]></category>
		<category><![CDATA[サーバー]]></category>
		<category><![CDATA[シェル]]></category>
		<category><![CDATA[監視]]></category>

		<guid isPermaLink="false">http://www.develop-spot.com/?p=472</guid>
		<description><![CDATA[先月くらいからお名前.comのVPSサービスで勝手に各種サービスが落ちている事が数回あった。 そこで、プロセスの存在を確認しプロセスが死んでいたら起動するシェルを作成した。 ※エラー処理もしていないので実用性は低いです。 [...]]]></description>
			<content:encoded><![CDATA[<p>先月くらいからお名前.comのVPSサービスで勝手に各種サービスが落ちている事が数回あった。<br />
そこで、プロセスの存在を確認しプロセスが死んでいたら起動するシェルを作成した。<br />
※エラー処理もしていないので実用性は低いです。</p>
<p>##2010/03/13追加<br />
amavisdのプロセスも確認するようにした。<br />
amavisdがダウンしていると送受信メールのウィルスチェックができず、そこでメールが止まってしまう。<br />
（ログ）<br />
connect to 127.0.0.1[127.0.0.1]:10024: Connection refused</p>
<p>$ vi process_chk.sh</p>
<pre class="brush: shell; gutter: true; first-line: 1; highlight: []; html-script: false">
#!/bin/sh

message=&quot;&quot;

#amavisd
amavisd=`ps ax | grep &#039;^.* amavisd (master)$&#039; 2&gt;/dev/null`
if [ -z &quot;${amavisd}&quot; ]; then
  /etc/rc.d/init.d/amavisd start
  message=&quot;${message}amavisd &quot;
fi

#postfix
postfix=`ps ax | grep &#039;^.* /usr/libexec/postfix/master$&#039; 2&gt;/dev/null`
if [ -z &quot;${postfix}&quot; ]; then
  /etc/rc.d/init.d/postfix start
  message=&quot;${message}postfix &quot;
fi

#dovecot
dovecot=`ps ax | grep &#039;^.* /usr/sbin/dovecot$&#039; 2&gt;/dev/null`
if [ -z &quot;${dovecot}&quot; ]; then
  /etc/rc.d/init.d/dovecot start
  message=&quot;${message}dovecot &quot;
fi

#httpd
httpd=`ps ax | grep &#039;^.* /usr/local/httpd/bin/httpd -k start$&#039;`
if [ -z &quot;${httpd}&quot; ]; then
  /etc/rc.d/init.d/httpd start
  message=&quot;${message}httpd &quot;
fi

#send mail
if [ -n &quot;${message}&quot; ]; then
mail -s &quot;process_chk.sh develop-spot.com&quot; &quot;***@docomo.ne.jp&quot; -- -f &quot;***@develop-spot.com&quot; &lt;&lt; body
${message}start.
body
fi

exit 0
</pre>
<p>こんな感じでシェルを作ってクーロンに登録してとりあえず応急処置。</p>
<div class="code">
$ crontab -e<br />
*/5 * * * * /root/process_chk.sh
</div>
<p>監視サービスを設置したいが、ポート制限があり外部からだとポート監視程度しかできない。（DBはポートが解放できないためアウト）<br />
またどのサービスが落ちるか分からないため同じサーバーで監視をしても、監視系サービスが落ちたら終了する。<br />
お名前側でポート監視くらいは用意してほしいな。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.develop-spot.com/2010/03/%e3%83%97%e3%83%ad%e3%82%bb%e3%82%b9%e3%82%92%e7%a2%ba%e8%aa%8d%e3%81%97%e3%81%a6%e8%87%aa%e5%8b%95%e8%b5%b7%e5%8b%95%e3%81%95%e3%81%9b%e3%82%8b%ef%bc%88%e3%82%b7%e3%82%a7%e3%83%ab%e3%82%b9%e3%82%af/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Web Toolkit（GWT） -導入編</title>
		<link>http://www.develop-spot.com/2009/12/google-web-toolkit%ef%bc%88gwt%ef%bc%89-%e5%b0%8e%e5%85%a5%e7%b7%a8/</link>
		<comments>http://www.develop-spot.com/2009/12/google-web-toolkit%ef%bc%88gwt%ef%bc%89-%e5%b0%8e%e5%85%a5%e7%b7%a8/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 02:49:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Google Web Toolkit]]></category>

		<guid isPermaLink="false">http://developspot.dip.jp/?p=216</guid>
		<description><![CDATA[最新のGoogle Web ToolkitのEclipseプラグインの導入方法などが、あまり記事として存在していないのでメモ程度に残しておきます。 必要なもの JAVA Eclipse（All In Oneを使用） Pl [...]]]></description>
			<content:encoded><![CDATA[<p>最新のGoogle Web ToolkitのEclipseプラグインの導入方法などが、あまり記事として存在していないのでメモ程度に残しておきます。</p>
<h2>必要なもの</h2>
<ul>
<li>JAVA</li>
<li>Eclipse（<a href="http://mergedoc.sourceforge.jp/" target="_blank">All In One</a>を使用）</li>
<li>Plugin for Eclipse</li>
</ul>
<h2>JAVA（Java SE）のインストール</h2>
<div id="attachment_225" class="wp-caption aligncenter" style="width: 310px"><a href="http://111.68.164.121/develop-spot.com/wp-content/uploads/2009/12/java_se_dl1.jpg"><img class="size-medium wp-image-225" title="java_se_dl" src="http://www.develop-spot.com/wp-content/uploads/2009/12/java_se_dl-300x240.jpg" alt="" width="300" height="240" /></a><p class="wp-caption-text">Sun Developer Network(SDN)</p></div>
<ol>
<li>「JDK 6 Update 17」を選択し「Platform」に自分の使用しているOSを選択し、「I agree&#8230;」を選択し「Continue」を押下すると次の画面が表示されます。</li>
<li>「Windows Offline Installation」の「jre-6u17-windows-i586.exe」を選択するとダウンロードが開始されます。</li>
<li>ダウンロードが完了したら、インストールを完了させます。</li>
<li>JAVAのインストールは完了です。</li>
</ol>
<h2>Eclipse 3.5 Gallieoのインストール</h2>
<div id="attachment_224" class="wp-caption aligncenter" style="width: 310px"><a href="http://111.68.164.121/develop-spot.com/wp-content/uploads/2009/12/MergeDoc_Project_dl1.jpg"><img class="size-medium wp-image-224" title="MergeDoc_Project_dl" src="http://www.develop-spot.com/wp-content/uploads/2009/12/MergeDoc_Project_dl-300x240.jpg" alt="" width="300" height="240" /></a><p class="wp-caption-text">MergeDoc Project</p></div>
<ol>
<li>「Ultimate版」を上記サイトからダウンロードします。</li>
<li>ダウンロードしたファイルはZIP書庫で圧縮されています。ファイル名が長いため正常に解凍が行えない事がよくあります。まずは、「Cドライブ」直下にダウンロードしたファイルを移動させ、「Eclipse」など短い名前にリネームします。</li>
<li>「<a href="http://www.diana.dti.ne.jp/~winrar/">WinRAR</a>」というソフトを使用して解凍すると、正常に解凍ができるため「<a href="http://www.diana.dti.ne.jp/~winrar/">WinRAR</a>」が入ってない人はダウンロードしましょう。</li>
<li>WinRARから解凍します。</li>
<li>Eclipseのインストールは完了です。</li>
</ol>
<h2>Google Plugin for Eclipseのインストール</h2>
<ol>
<li>先程インストールを完了した、「Eclipse」を起動します。</li>
<li>メニューバーの「ヘルプ」から「新規ソフトウェアのインストール」を選択します。
<p><div id="attachment_230" class="wp-caption aligncenter" style="width: 310px"><a href="http://111.68.164.121/develop-spot.com/wp-content/uploads/2009/12/eclipse_new_software_install1.jpg"><img class="size-medium wp-image-230" title="eclipse_new_software_install" src="http://www.develop-spot.com/wp-content/uploads/2009/12/eclipse_new_software_install-300x241.jpg" alt="" width="300" height="241" /></a><p class="wp-caption-text">使用可能なソフトウェア</p></div></li>
<li>「作業対象」に「http://dl.google.com/eclipse/plugin/3.5」を入力し、「Google Pligin for Eclipse 3.5」「Google App Engine Java SDK 1.3.0」「Google Web Toolkit SDK 2.0.0」のすべてにチェックを入れ、「次へ」を押下します。
<p><div id="attachment_234" class="wp-caption aligncenter" style="width: 310px"><a href="http://111.68.164.121/develop-spot.com/wp-content/uploads/2009/12/eclipse_new_software_install_21.jpg"><img class="size-medium wp-image-234" title="eclipse_new_software_install_2" src="http://www.develop-spot.com/wp-content/uploads/2009/12/eclipse_new_software_install_2-300x232.jpg" alt="" width="300" height="232" /></a><p class="wp-caption-text">使用可能なソフトウェア</p></div></li>
<li>あとはそのままインストールを行えば完了です。</li>
<li>Google Plugin for Eclipseのインストールは完了です。</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.develop-spot.com/2009/12/google-web-toolkit%ef%bc%88gwt%ef%bc%89-%e5%b0%8e%e5%85%a5%e7%b7%a8/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PHP高速化</title>
		<link>http://www.develop-spot.com/2009/12/php%e9%ab%98%e9%80%9f%e5%8c%96/</link>
		<comments>http://www.develop-spot.com/2009/12/php%e9%ab%98%e9%80%9f%e5%8c%96/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 09:44:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[コーディング]]></category>
		<category><![CDATA[高速化]]></category>

		<guid isPermaLink="false">http://developspot.dip.jp/?p=74</guid>
		<description><![CDATA[今回はPHPの高速化について。（コーディング編） 結構有名なお話です。 staticにできるメソッドは staticにする。（4倍速い） __get, __set, __autoloadは使わない。 printよりech [...]]]></description>
			<content:encoded><![CDATA[<p>今回はPHPの高速化について。（コーディング編）</p>
<p>結構有名なお話です。</p>
<ul>
<li>staticにできるメソッドは staticにする。（4倍速い）</li>
<li>__get, __set, __autoloadは使わない。</li>
<li>printよりechoを使う。</li>
<li>ダブルクォートよりシングルクォートを使う。</li>
<li>require_onceは便利だが、requireのほうが早い。</li>
<li>@を使ってエラー制御は遅い。</li>
<li>置換を行う場合は、strtrを使う。</li>
<li>正規表現は必要なければ避ける。</li>
<li>for ($i=0; $i &lt; $this-&gt;getCount(); $i++) のように毎回呼ばれるメソッドは一度変数にセットする。</li>
</ul>
<p>他にも色々あるようですが、自分はこれくらいの事を気をつけてコーディングしています。</p>
<p>詳しくは、下記サイトをご覧ください。<br />
<a href="http://labs.unoh.net/2007/05/phptips.html" target="_blank"></a></p>
<p><a href="http://labs.unoh.net/2007/05/phptips.html" target="_blank">ウノウラボ</a><br />
<a href="http://d.hatena.ne.jp/koto2/20080518/1211070116" target="_blank"></a></p>
<p><a href="http://d.hatena.ne.jp/koto2/20080518/1211070116" target="_blank">カタコト日記</a></p>
<p><script type="text/javascript"> kauli_ad_width = 336; kauli_ad_height = 280; kauli_ad_color_frame = "FFFFFF"; kauli_ad_color_bg = "FFFFFF"; kauli_ad_color_title = "0000FF"; kauli_ad_color_text = "000000"; kauli_ad_color_url = "008000"; kauli_ad_uid = 5793; kauli_ad_channel = null; kauli_ad_width = 336;</script><script type="text/javascript" src="http://js.kau.li/ad.js"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.develop-spot.com/2009/12/php%e9%ab%98%e9%80%9f%e5%8c%96/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPフレームワーク一覧</title>
		<link>http://www.develop-spot.com/2009/12/php%e3%83%95%e3%83%ac%e3%83%bc%e3%83%a0%e3%83%af%e3%83%bc%e3%82%af%e4%b8%80%e8%a6%a7/</link>
		<comments>http://www.develop-spot.com/2009/12/php%e3%83%95%e3%83%ac%e3%83%bc%e3%83%a0%e3%83%af%e3%83%bc%e3%82%af%e4%b8%80%e8%a6%a7/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 08:20:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[フレームワーク]]></category>

		<guid isPermaLink="false">http://developspot.dip.jp/?p=61</guid>
		<description><![CDATA[PHPフレームワークはどれくらい存在しているのか調べてみました。 ◇有名どころ Zend Framework Cake PHP Symfony Ethna MODx ◇その他 Achievo Tool Kit (ATK) [...]]]></description>
			<content:encoded><![CDATA[<p>PHPフレームワークはどれくらい存在しているのか調べてみました。</p>
<p>◇有名どころ</p>
<ul>
<li><a href="http://framework.zend.com/" target="_blank">Zend Framework</a></li>
<li><a href="http://www.cakephp.org/" target="_blank">Cake PHP</a></li>
<li><a href="http://www.symfony-project.com/" target="_blank">Symfony</a></li>
<li><a href="http://ethna.jp/" target="_blank">Ethna</a></li>
<li><a href="http://modxcms.com/" target="_blank">MODx</a></li>
</ul>
<p>◇その他</p>
<ul>
<li><a href="http://www.achievo.org/atk" target="_blank">Achievo Tool Kit (ATK)</a></li>
<li><a href="https://sourceforge.net/projects/awesome-work/" target="_blank">AwesomeFramework</a></li>
<li><a href="http://www.blueshoes.org/" target="_blank">BlueShoes</a></li>
<li><a href="http://epf.molhanec.net/" target="_blank">Easy PHP Framework</a></li>
<li><a href="http://kunit.jp/maple/" target="_blank">Maple</a></li>
<li><a href="http://www.phpopenbiz.org/" target="_blank">OpenBiz</a></li>
<li><a href="http://www.openology.org/" target="_blank">Openology</a></li>
<li><a href="http://pharon.lolipop.jp/" target="_blank">Pharon</a></li>
<li><a href="http://phocoa.com/" target="_blank">PHOCOA</a></li>
<li><a href="http://www.php2go.com.br/" target="_blank">PHP2Go</a></li>
<li><a href="http://phpontrax.com/" target="_blank">PHP on TRAX</a></li>
<li><a href="http://phpwebtk.sourceforge.net/" target="_blank">PHP Web Toolkit</a></li>
<li><a href="https://www.phrame.org/" target="_blank">Phrame</a></li>
<li><a href="http://www.xisc.com/" target="_blank">PRADO</a></li>
<li><a href="http://bennolan.com/biscuit/" target="_blank">Solar</a></li>
<li><a href="http://tonic.sourceforge.net/" target="_blank">Tonic</a></li>
<li><a href="http://www.phpwact.org/" target="_blank">WACT</a></li>
<li><a href="http://phpyawp.com/yawiki/" target="_blank">Yawp</a></li>
<li><a href="http://zoopframework.com/" target="_blank">zoop</a></li>
<li><a href="http://solarphp.com/" target="_blank">ちいたん</a></li>
</ul>
<p>いっぱいありますね、他にもいっぱいあります。</p>
<p>自分がよく使用するのは、「Zend Framework」と「Smarty」ですね。</p>
<p>Zend Frameworkはちょっと重たいですが。。（require_onceしすぎ）</p>
<p><script type="text/javascript"> kauli_ad_width = 336; kauli_ad_height = 280; kauli_ad_color_frame = "FFFFFF"; kauli_ad_color_bg = "FFFFFF"; kauli_ad_color_title = "0000FF"; kauli_ad_color_text = "000000"; kauli_ad_color_url = "008000"; kauli_ad_uid = 5793; kauli_ad_channel = null; kauli_ad_width = 336;</script><script type="text/javascript" src="http://js.kau.li/ad.js"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.develop-spot.com/2009/12/php%e3%83%95%e3%83%ac%e3%83%bc%e3%83%a0%e3%83%af%e3%83%bc%e3%82%af%e4%b8%80%e8%a6%a7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHPでマルチスレッド処理</title>
		<link>http://www.develop-spot.com/2009/12/php%e3%81%a7%e3%83%9e%e3%83%ab%e3%83%81%e3%82%b9%e3%83%ac%e3%83%83%e3%83%89%e5%87%a6%e7%90%86/</link>
		<comments>http://www.develop-spot.com/2009/12/php%e3%81%a7%e3%83%9e%e3%83%ab%e3%83%81%e3%82%b9%e3%83%ac%e3%83%83%e3%83%89%e5%87%a6%e7%90%86/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 07:03:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[コーディング]]></category>
		<category><![CDATA[ソース]]></category>
		<category><![CDATA[マルチスレッド]]></category>
		<category><![CDATA[高速化]]></category>

		<guid isPermaLink="false">http://developspot.dip.jp/?p=49</guid>
		<description><![CDATA[※CGI版のPHPでしか動作しません。 100万件近いRSSをPHPで取得する必要があったので、マルチスレッド処理を使用してみた。 また、pcntlを組み込んでいないと使用できません。 ※下記コンパイルオプション ./c [...]]]></description>
			<content:encoded><![CDATA[<p>※CGI版のPHPでしか動作しません。</p>
<p>100万件近いRSSをPHPで取得する必要があったので、マルチスレッド処理を使用してみた。</p>
<p>また、pcntlを組み込んでいないと使用できません。</p>
<p>※下記コンパイルオプション</p>
<blockquote>
<div class="code">./configure &#8211;prefix=/usr/local/php &#8211;enable-cgi &#8211;enable-pcntl &#8230;</div>
</blockquote>
<pre class="brush: php; gutter: true; first-line: 1; highlight: []; html-script: false">&lt;?php
$maxChild = 10;
$child = 0;
while(1) {
    if ($child &amp;lt;= $maxChild) {
        $pid = pcntl_fork();
        if ($pid == -1) {
            exit();
        } else if ($pid) {
            //親プロセスの処理を書く
            //終了させる条件
            if () {
                break;
            }
            ++$child;
        } else {
            //子プロセスの処理を書く
            exit(0);
        }
    } else {
        $pid = pcntl_waitpid(0, $status, 0);
        --$child;
    }
}
?&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.develop-spot.com/2009/12/php%e3%81%a7%e3%83%9e%e3%83%ab%e3%83%81%e3%82%b9%e3%83%ac%e3%83%83%e3%83%89%e5%87%a6%e7%90%86/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

