ÃÑ ÆäÀÌÁö ¼ö : 3224
![]()
|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
![]()
Tweet
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù. »óȲ
Âü°í : http://www.unix.com.ua/orelly/perl/advprog/ch04_02.htm
°³ÀÎÀûÀ¸·Î C¿Í C++ ¾ð¾î¿¡¼ÀÇ ÇÔ¼öÆ÷ÀÎÅÍ´Â ÁÖ·Î Àü¼úÆÐÅÏÀ» Àû¿ëÇϱâ À§ÇÑ ¸ñÀûÀ¸·Î »ç¿ëÀ» ÇØ¿Ô¾ú´Ù. PerlÀÇ °æ¿ì¿¡´Â ÇÔ¼ö¿¡ ´ëÇÑ ·¹ÆÛ·±½º°¡ °¡´ÉÇÏ´Ù´Â »ç½ÇÀº ¾Ë°í ÀÖ¾úÁö¸¸, ½Ã½ºÅÛ °ü¸®¸¦ À§ÇÑ º¸Á¶¾ð¾î·Î »ç¿ëÇØ¿Ô±â ¶§¹®¿¡, ±»ÀÌ ÇÔ¼ö·¹ÆÛ·±½º¸¦ »ç¿ëÇÒ Çʿ伺À» ´À³¢Áö ¸øÇß¾ú´Ù.
±×·¯´Ù°¡ ¼º´ÉÃøÁ¤½Ã½ºÅÛÀ» ±¸ÃàÇÏ´ø Áß, ´Ù¾çÇÑ ¼º´ÉÃøÁ¤ ¸ðµâÀ» ÀÛµ¿½Ã۱â À§Çؼ´Â ¿ª½Ã ÇÔ¼ö·¹ÆÛ·±½º¸¦ »ç¿ëÇÏ´Â°Ô ÁÁ°Ú±¸³ª¶ó´Â »ý°¢À» ÇÏ°Ô µÇ¾ú°í, À̸¦ °³¹ßÇÏ°Ô µÇ¾ú´Ù.
Àͼ÷ÇÑ C¾ð¾î¿Í ÇÔ¼öÆ÷ÀÎÅ͸¦ ÀÌ¿ëÇØ¼ ¸ðµâÀ» ¸¸µé ¼öµµ ÀÖ¾ú°ÚÁö¸¸, ¹èÆ÷»óÀÇ ¹®Á¦ ¶§¹®¿¡ perlÀ» »ç¿ëÇϱâ·Î Çß´Ù.
ÀÌ ¼º´ÉÃøÁ¤ ½Ã½ºÅÛÀº ´ÙÀ½°ú °°ÀÌ ±¸¼ºÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ![]()
Master´Â ¼º´ÉÃøÁ¤À» À§ÇÑ Job FunctionÀ» ¹èÆ÷Çϰí, Slave´Â Job FunctionÀ» ½ÇÇàÇÏ°í ±× °á°ú¸¦ Master·Î º¸³½´Ù. Master´Â °ü¸®ÇϱⰡ ¿ëÀÌÇϰÚÁö¸¸, Slave´Â ¿©·¯´ëÀÇ »óÀÌÇÑ ¿î¿µÃ¼Á¦°¡ ¼³Ä¡µÈ ½Ã½ºÅÛÀÌ µÉ ¼ö ÀÖÀ¸¹Ç·Î, ÄÄÆÄÀÏµÈ ¾ð¾îº¸´Ù´Â Perl, python°ú °°Àº ¾ð¾î¸¦ »ç¿ëÇÏ´Â°Ô ÁÁÀ» °ÍÀÌ´Ù.
Slave´Â ´Ù¾çÇÑ Job FunctionÀÌ µî·ÏµÇ¾î ÀÖÀ¸¸ç, MasterÀÇ ¿ä±¸¿¡ µû¶ó¼ Àû´çÇÑ Job FunctionÀ» ¼±ÅÃÇØ¼ ½ÇÇà½Ãų ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ¶ÇÇÑ »õ·Î ¹èÆ÷µÇ´Â Job Functionµµ µî·Ï/½ÇÇà µÉ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ °æ¿ì¿¡ ÀÖ¾î¼ Àü¼úÆÐÅÏÀ» À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ·¹ÆÛ·±½º¸¦ ÀÌ¿ëÇÑ Àü¼úÆÐÅÏ ±¸Çö
CÀÇ ÇÔ¼öÆ÷ÀÎÅÍ ¹öÀü°ú ±×´Ú Â÷ÀÌ´Â ¾ø´Ù. °£´ÜÇÑ ÄÚµå´Ù.
#!/usr/bin/perl
use Getopt::Std;
// °öÇÏ±â ¾Ë°í¸®ÁòÀÌ Àû¿ëµÈ ÇÔ¼ö
sub mul
{
my($arg1, $arg2) = @_;
print "Function Mul\n";
print "$arg1 * $arg2 = ", $arg1 * $arg2,"\n";
}
// ´õÇÏ±â ¾Ë°í¸®ÁòÀÌ Àû¿ëµÈ ÇÔ¼ö
sub sum
{
my($arg1, $arg2) = @_;
print "Function Sum\n";
print "$arg1 + $arg2 = ", $arg1 + $arg2,"\n";
}
#######################################
# MAIN
# »ç¿ë¹ý : ./myprg.pl -t [sum|mul]
#######################################
my %SubRoutine = (
"mul" => \&mul,
"sum" => \&sum,
);
my %opts = ();
my $algorithms;
getopt("t:", \%opts);
if (defined $opts{t})
{
if (exists $SubRoutine{$opts{t}})
{
$algorithms = $SubRoutine{$opts{t}};
print "Algorithm $opts{t}";
}
else
{
print "Algorithm Failure : [send|receive]\n";
}
}
## ¾Ë¸ÂÀº ¾Ë°í¸®ÁòÀ» ¼±ÅÃÇÑ´Ù.
&{$algorithms}(5, 10);
print "Close\n";
½ÇÁ¦ ¿ì¸®°¡ ¿øÇÏ´Â ¼º´ÉÃøÁ¤ ½Ã½ºÅÛ¿¡ Àû¿ëÇϱâ À§Çؼ´Â ·¹ÆÛ·±½ºÇÒ ÇÔ¼öÀÇ Á¤º¸¸¦ ´ãÀº ¼³Á¤ÆÄÀϰú ÇÔ¼ö¸¦ ´ãÀº perl ÆÐŰÁöÆÄÀÏÀ» ¹èÆ÷ÇÒ ¹èÆ÷½Ã½ºÅÛÀÌ ÇÊ¿äÇÒ °ÍÀÌ´Ù.
¹èÆ÷½Ã½ºÅÛÀº sshÀÇ rsa °ø°³Å°¸¦ ÀÌ¿ëÇϸé, ½±°Ô ±¸ÃàÇÒ ¼ö ÀÖ´Ù. Hadoop¹®¼¸¦ Âü°íÇϱ⠹ٶõ´Ù. ÀÌ ¹®¼´Â ¹èÆ÷½Ã½ºÅÛÀ» À§ÇÑ ¾ÆÀ̵ð¾óÇÑ Á¤º¸¸¦ Á¦°øÇϴµ¥, Á¦´ë·Î ¹èÆ÷½Ã½ºÅÛÀ» ¸¸µé·Á¸é, °ü¸®¿Í ¹èÆ÷¸¦ À§ÇÑ °ü¸®ÀÚ ÀÎÅÍÆäÀ̽º¸¦ ¸¸µé¾î¾ß ÇÒ °ÍÀÌ´Ù. °³ÀÎÀûÀ¸·Î´Â À§Å°¸¦ ÀÌ¿ëÇØ¼ ¹èÆ÷½Ã½ºÅÛÀ» ¸¸µé¾ú´Âµ¥, ½Ã°£ÀÌ µÇ¸é ÀÚ¼¼È÷ ´Ù·ç¾îº¸µµ·Ï ÇϰڴÙ.
|
|
|
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù. |
|