<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>myRuby.net: &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#51032; &#49457;&#45733;</title>
    <link>http://myruby.net/articles/2007/07/04/%EC%9D%B4%EB%B2%A4%ED%8A%B8-%EA%B8%B0%EB%B0%98-%EB%AA%BD%EA%B7%B8%EB%A0%90%EC%9D%98-%EC%84%B1%EB%8A%A5</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Blog.authored_by :deepblue</description>
    <item>
      <title>&#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#51032; &#49457;&#45733;</title>
      <description>&lt;p&gt;&#47336;&#48708;&#45716; &#51088;&#52404;&#51201;&#51064; &#49828;&#47112;&#46377; &#49884;&#49828;&#53596;(green thread)&#51012; &#44032;&#51648;&#44256; &#51080;&#45796;. &#44536;&#47088;&#45936; &#51060; &#44536;&#47536; &#49828;&#47112;&#46300;&#44032; &#48712;&#50557;&#54620; &#44592;&#45733;&#44284; &#49457;&#45733;, &#47680;&#54000; &#53076;&#50612;&#50640; &#45824;&#51025;&#46104;&#51648; &#47803;&#54616;&#45716; &#46321; &#50668;&#47084; &#47928;&#51228;&#47484; &#44032;&#51648;&#44256; &#51080;&#50612;&#49436; &#47566;&#51008; &#51060;&#49800;&#47484; &#47564;&#46308;&#44256; &#51080;&#45796;. &#44536;&#47536; &#49828;&#47112;&#46300;&#47484; &#47336;&#48708;&#51032; &#51109;&#51216;&#51004;&#47196; &#48372;&#45716; &#49884;&#44033;&#46020; &#51080;&#51648;&#47564;, &#47336;&#48708; 2.0&#50640;&#49436;&#45716; &#44536;&#47536; &#49828;&#47112;&#46300;&#44032; &#48736;&#51652;&#45796;, &#44228;&#49549; &#45224;&#45716;&#45796; &#46321;&#46321; &#50500;&#51649;&#46020; &#47568;&#51060; &#47566;&#51008; &#49345;&#53468;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&#47112;&#51068;&#49828;&#50640;&#49436; &#45328;&#47532; &#49324;&#50857;&#46104;&#45716; &#50528;&#54540;&#47532;&#52992;&#51060;&#49496; &#49436;&#48260;&#51064; &#47805;&#44536;&#47120;&#46020; &#44536;&#47536; &#49828;&#47112;&#46300;&#47484; &#51060;&#50857;&#54644; &#46041;&#49884; &#50836;&#52397;&#51012; &#52376;&#47532;&#54620;&#45796;. &#54616;&#51648;&#47564; &#51648;&#45212; RailsConf&#50640;&#49436; &#47336;&#48708;&#51032; Mutual Lock&#51032; &#49457;&#45733;&#51060; &#51339;&#51648; &#50506;&#44256;, &#46104;&#47140; &#49828;&#47112;&#46300;&#44036;&#51032; &#47928;&#47589; &#51204;&#54872;&#50640;&#49436; &#49345;&#53468; &#51221;&#48372;&#47484; &#48373;&#49324;&#54616;&#45712;&#46972; &#50724;&#48260;&#54756;&#46300;&#44032; &#47566;&#45796;&#45716; &#51452;&#51109;&#51060; &#51080;&#50632;&#45796;. &#44536;&#47000;&#49436; &#47680;&#54000; &#49828;&#47112;&#46300; &#47805;&#44536;&#47120;&#51012; &#51060;&#48292;&#53944; &#44592;&#48152;&#51032; &#49905;&#44544; &#49828;&#47112;&#46300;&#47196; &#45796;&#49884; &#51089;&#49457;&#54616;&#47732; &#49457;&#45733;&#47732;&#50640;&#49436; &#50619;&#45716; &#51060;&#46301;&#51060; &#51080;&#45796;&#45716; &#44163;&#51060;&#45796;. &amp;nbsp;&#47700;&#47784;&#47532; &#49324;&#50857;&#47049;, IO &#49828;&#47336;&#54411;&#46020; &#45208;&#50500;&#51652;&#45796;&#44256; &#54620;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://swiftiply.swiftcore.org/" class="external" title="Swifitply"&gt;Swifitply&lt;/a&gt;&#50640; &#54252;&#54632;&#46108; evented_mongrel.rb&#44032; &#48148;&#47196; &#47805;&#44536;&#47120;&#51012; &#51060;&#48292;&#53944; &#44592;&#48152; &#49905;&#44544; &#49828;&#47112;&#46300;&#47196; &#48148;&#45012;&#51452;&#45716; Hotfix&#51060;&#45796;. &#50668;&#44592;&#50640;&#45716; &lt;a href="http://rubyforge.org/projects/eventmachine" class="external" title="EventMachine"&gt;EventMachine&lt;/a&gt;&#51060;&#46972;&#45716; &#45348;&#51060;&#54000;&#48652; &#46972;&#51060;&#48652;&#47084;&#47532;&#44032; &#49324;&#50857;&#46104;&#50632;&#45796;. &#51060; fix&#47484;&amp;nbsp; &#51201;&#50857;&#54616;&#47140;&#47732; gem&#51004;&#47196; EventMachine&#44284; Swiftiply&#47484; &#47784;&#46160; &#49444;&#52824;&#54616;&#44256; &#47805;&#44536;&#47120;&#51012; &#49884;&#51089;&#54624; &#46412; &#54872;&#44221;&#48320;&#49688; EVENT&#47484; 1&#47196; &#49444;&#51221;&#54644;&#51452;&#44592;&#47564; &#54616;&#47732; &#46108;&#45796;. Swiftiply&#44032; mongrel_rails&#47484; &#51116;&#51221;&#51032;&#54616;&#45716;&#45936;, &#54872;&#44221;&#48320;&#49688;&#50640; &#46384;&#46972; &#47805;&#44536;&#47120;&#51060; &#46041;&#51089;&#54616;&#45716; &#47784;&#46300;&#47484; &#48148;&#45012;&#51456;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;ol class="code"&gt;
&lt;li&gt;gem install eventmachine&lt;/li&gt;
&lt;li&gt;gem install swiftiply&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;env EVENT=1 mongrel_rails start -e production -d&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&#49892;&#51228; &#50528;&#54540;&#47532;&#52992;&#51060;&#49496;&#51060; &#46041;&#51089;&#54616;&#45716;&#45936; &#50689;&#54693;&#51012; &#51452;&#45716; &#48512;&#48516;&#51012; &#48148;&#44984;&#45716; &#44163;&#51060; &#50630;&#44592; &#46412;&#47928;&#50640; &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#51012; &#49324;&#50857;&#54620;&#45796;&#44256; &#54644;&#49436; &#44592;&#51316; &#50528;&#54540;&#47532;&#52992;&#51060;&#49496;&#51060; &#46041;&#51089;&#54616;&#51648; &#50506;&#45716;&#45796;&#44144;&#45208; &#54616;&#45716; &#51068;&#51008; &#51068;&#50612;&#45208;&#51648; &#50506;&#51012; &#44163; &#44057;&#45796;. &#44536;&#47088;&#45936; &#51221;&#47568; &#48736;&#47484;&#44620;? &#48736;&#47476;&#45796;&#47732; &#50620;&#47560;&#45208; &#48736;&#47484;&#44620;? &#49828;&#54532;&#47553;&#45432;&#53944;&#50640; &#51201;&#50857;&#54616;&#44592; &#51204;&#50640; &#44036;&#45800;&#54620; &#48292;&#52824;&#47560;&#53356; &#53580;&#49828;&#53944;&#47484; &#54644;&#48372;&#50520;&#45796;. &#44208;&#47200;&#48512;&#53552; &#51060;&#50556;&#44592;&#54616;&#51088;&#47732;, &#51221;&#47568; &#45908; &#48736;&#47476;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;h3&gt;&#48292;&#52824;&#47560;&#53356;&lt;/h3&gt;

&lt;p&gt;&#53580;&#49828;&#53944;&#47484; &#49688;&#54665;&#54620; &#51109;&#48708;&#45716; &#49324;&#50577;&#51008; &#51060;&#47111;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CPU: AMD64 2CPU&lt;/li&gt;
&lt;li&gt;MEMORY 8G&lt;/li&gt;
&lt;li&gt;&#50868;&#50689;&#52404;&#51228;: RHEL4&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&#48292;&#52824;&#47560;&#53356;&#50640; &#49324;&#50857;&#54620; &#49548;&#54532;&#53944;&#50920;&#45716; &#47805;&#44536;&#47120; 1.0.1, Swiftiply 0.5.1, EventMachine 0.7.2&#51060;&#44256;, &#47112;&#51068;&#49828;&#51032; &#48260;&#51204;&#51008; EdgeRails &#47532;&#48708;&#51204; 7161&#51060;&#45796;. &#44536;&#47532;&#44256; &#53580;&#49828;&#53944;&#47484; &#50948;&#54644; &#44036;&#45800;&#54616;&#44172; Hello World&#47484; &#52636;&#47141;&#54616;&#45716; &#50528;&#54540;&#47532;&#52992;&#51060;&#49496;&#51012; &#51089;&#49457;&#54664;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;ol class="code"&gt;
&lt;li&gt;class TestsController &amp;lt; ApplicationController&lt;br /&gt;
&amp;nbsp; def show&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; render :text =&amp;gt; &amp;#8216;Hello, Rails&amp;#8217;&lt;br /&gt;
&amp;nbsp; end&lt;br /&gt;
end&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&#50948; &#50528;&#54540;&#47532;&#52992;&#51060;&#49496;&#51012; &#49828;&#47112;&#46300; &#47784;&#46300;&#50752; &#51060;&#48292;&#53944; &#47784;&#46300;&#47196; &#44033;&#44033; &#44396;&#46041;&#54616;&#44256; &#46041;&#49884; &#50836;&#52397; &#49688;&#47484; 1&#50640;&#49436; 1000&#44620;&#51648; &#45720;&#47532;&#47732;&#49436; &#53580;&#49828;&#53944;&#47484; &#54644;&#48372;&#50520;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;h3&gt;&#44208;&#44284;&lt;/h3&gt;

&lt;p&gt;&#50500;&#54028;&#52824; &#48292;&#52824;&#47560;&#53356; &#53812;(ab)&#47196; &#44160;&#49324;&#54620; &#44208;&#44284;&#45716; &#45796;&#51020;&#44284; &#44057;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://deepblue.springnote.com/pages/344683/attachments/142240" title="threaded_mongrel_result.txt" class="attachment"&gt;threaded_mongrel_result.txt&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://deepblue.springnote.com/pages/344683/attachments/142242" title="evented_mongrel_result.txt" class="attachment"&gt;evented_mongrel_result.txt&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&#44208;&#44284; &#51473; &#52488;&#45817; &#52376;&#47532;&#54620; &#50836;&#52397; &#49688;&#47564;&#51012; &#54364;&#47196; &#51221;&#47532;&#54616;&#47732; &#50500;&#47000;&#50752; &#44057;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&lt;img class="attachment" title="data.png" src="http://deepblue.springnote.com/pages/344683/attachments/141788" alt="data.png" /&gt;&lt;/p&gt;

&lt;p&gt;&#46041;&#49884; &#50836;&#52397; &#49688;&#50640; &#49345;&#44288;&#50630;&#51060; &#54637;&#49345; &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#51060; &#45908; &#45208;&#51008; &#49457;&#45733;&#51012; &#48372;&#50668;&#51468;&#51012; &#50508; &#49688; &#51080;&#45796;. &#53945;&#55176; &#51452;&#47785;&#54624;&#47564;&#54620; &#51216;&#51008; &#46041;&#49884; &#50836;&#52397;&#51060; &#45720;&#50612;&#45212; &#51593;, &#45908; &#44032;&#54841;&#54620; &#49345;&#54889;&#50640;&#49436; &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#51060; &#49892;&#47141;&#51012; &#48156;&#55064;&#54620;&#45796;&#45716; &#49324;&#49892;&#51060;&#45796;. &#44592;&#51316; &#47805;&#44536;&#47120;&#51008; &#46041;&#49884; &#50836;&#52397;&#51060; &#45720;&#50612;&#45224;&#50640; &#46384;&#46972; &#44228;&#49549; &#49457;&#45733;&#51060; &#46504;&#50612;&#51648;&#45716; &#47784;&#49845;&#51012; &#48372;&#51060;&#51648;&#47564;, &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#51008; &#45908; &#45208;&#51008; &#49457;&#45733;&#51012; &#48372;&#51060;&#44592;&#46020; &#54616;&#44256;, &#51204;&#52404;&#51201;&#51004;&#47196; &#48708;&#49847;&#54620; &#49688;&#51456;&#51012; &#50976;&#51648;&#54632;&#51012; &#50508; &#49688; &#51080;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&lt;img class="attachment" title="evented_mongrel.png" src="http://deepblue.springnote.com/pages/344683/attachments/141787" alt="evented_mongrel.png" /&gt;&lt;/p&gt;

&lt;p&gt;&#44536;&#47000;&#54532;&#47196; &#44536;&#47140;&#48372;&#45768; &#44536; &#52264;&#51060;&#44032; &#45908; &#47749;&#54869;&#54616;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&#49324;&#49892; &#49828;&#54532;&#47553;&#45432;&#53944;&#50640;&#49436;&#45716; 2&#51452;&#51704; &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#51012; &#49324;&#50857;&#54616;&#44256; &#51080;&#45796;.&amp;nbsp; &#44536;&#44036; &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#46412;&#47928;&#50640; &#47928;&#51228;&#44032; &#48156;&#49373;&#54620; &#51201;&#51008; &#54620; &#52264;&#47168;&#46020; &#50630;&#45796;. &#50504;&#51221;&#51201;&#51004;&#47196; &#49436;&#48708;&#49828;&#54616;&#45716;&#45936; &#47928;&#51228;&#44032; &#50630;&#45796;&#45716; &#51060;&#50556;&#44592;&#45796;. &#47112;&#51068;&#49828; &#49436;&#48708;&#49828;&#47484; &#44256;&#47140;&#54620;&#45796;&#47732;, &#44845; &#51060;&#48292;&#53944; &#44592;&#48152; &#47805;&#44536;&#47120;&#47196; &#48148;&#45012;&#49436; &#49457;&#45733; &#53580;&#49828;&#53944;&#47484; &#54620;&#48264; &#54644;&#48372;&#44592;&#47484; &#44428;&#54620;&#45796;. &#44277;&#51676;&#47196; &#50619;&#51012; &#49688; &#51080;&#45716; &#49457;&#45733; &#54693;&#49345;&#51060;&#45768;&#44620;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&#45796;&#51020;&#50640;&#45716; Swiftiply &#54532;&#47197;&#49884;&#47484; &#53580;&#49828;&#54644;&#48380; &#49373;&#44033;&#51060;&#45796;.&amp;nbsp; &#50500;&#51649; &#47751; &#44032;&#51648; &#48260;&#44536;&#44032; &#51080;&#45716; &#46319; &#48372;&#50668; &#48376;&#44201;&#51201;&#51064; &#49324;&#50857;&#51008; &#48120;&#47336;&#44256; &#51080;&#51648;&#47564;, &#51060;&#45716; &#49457;&#45733;&#48372;&#45796;&#45716; &amp;#8216;&#50504;&#51221;&#49457;&amp;#8217;&#50640; &#46020;&#50880;&#51060; &#46112; &#49688; &#51080;&#45716; &#48169;&#48277;&#51060;&#45768;&#47564;&#53372; &#44845; &#53580;&#49828;&#53944;&#54644;&#48400;&#50556;&#44192;&#45796;.&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;

&lt;p align="right"&gt;&#51060; &#44544;&#51008; &lt;a href="http://deepblue.springnote.com/pages/344683"&gt;&#49828;&#54532;&#47553;&#45432;&#53944;&lt;/a&gt;&#50640;&#49436; &#51089;&#49457;&#46104;&#50632;&#49845;&#45768;&#45796;.&lt;/p&gt;</description>
      <pubDate>Wed, 04 Jul 2007 01:08:01 -0700</pubDate>
      <guid isPermaLink="false">urn:uuid:1b13b8b7-09a5-4858-9ed4-11f376fde9d6</guid>
      <author>deepblue</author>
      <link>http://myruby.net/articles/2007/07/04/%EC%9D%B4%EB%B2%A4%ED%8A%B8-%EA%B8%B0%EB%B0%98-%EB%AA%BD%EA%B7%B8%EB%A0%90%EC%9D%98-%EC%84%B1%EB%8A%A5</link>
      <category>development</category>
    </item>
  </channel>
</rss>
