±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚ²©¿ÍÔ°£¬±¾ÎÄÊ×ÏȽéÉÜÁËStormµÄ»ù±¾¸ÅÄîºÍÊý¾ÝÁ÷Ä£ÐÍ£¬È»ºó½áºÏÒ»¸öµäÐÍÓ¦Óó¡¾°À´ËµÃ÷StormÖ§³ÖTopologyÖ®¼äÊý¾ÝÁ÷¶©ÔĵıØÒªÐÔ£¬×îºó¶Ô±ÈÁËStormÓëÁíÒ»¸öÁ÷´¦ÀíϵͳÔÚÊý¾ÝÁ÷Ä£ÐÍÉϵÄÇø±ðÖ®´¦¡£
|
|
Storm»ù±¾¸ÅÄî
StormÊÇÒ»¸ö¿ªÔ´µÄʵʱ¼ÆËãϵͳ£¬ËüÌṩÁËһϵÁеĻù±¾ÔªËØÓÃÓÚ½øÐмÆË㣺Topology¡¢Stream¡¢Spout¡¢BoltµÈµÈ¡£
ÔÚStormÖУ¬Ò»¸öʵʱӦÓõļÆËãÈÎÎñ±»´ò°ü×÷ΪTopology·¢²¼£¬ÕâͬHadoopµÄMapReduceÈÎÎñÏàËÆ¡£µ«ÊÇÓÐÒ»µã²»Í¬µÄÊÇ£ºÔÚHadoopÖУ¬MapReduceÈÎÎñ×îÖÕ»áÖ´ÐÐÍê³Éºó½áÊø£»¶øÔÚStormÖУ¬TopologyÈÎÎñÒ»µ©Ìá½»ºóÓÀÔ¶²»»á½áÊø£¬³ý·ÇÄãÏÔʾȥֹͣÈÎÎñ¡£
¼ÆËãÈÎÎñTopologyÊÇÓɲ»Í¬µÄSpoutsºÍBolts£¬Í¨¹ýÊý¾ÝÁ÷£¨Stream£©Á¬½ÓÆðÀ´µÄͼ¡£ÏÂÃæÊÇÒ»¸öTopologyµÄ½á¹¹Ê¾Òâͼ£º

ÆäÖаüº¬ÓУº
Spout£ºStormÖеÄÏûÏ¢Ô´£¬ÓÃÓÚΪTopologyÉú²úÏûÏ¢£¨Êý¾Ý£©£¬Ò»°ãÊÇ´ÓÍⲿÊý¾ÝÔ´£¨ÈçMessage
Queue¡¢RDBMS¡¢NoSQL¡¢Realtime Log£©²»¼ä¶ÏµØ¶ÁÈ¡Êý¾Ý²¢·¢Ë͸øTopologyÏûÏ¢£¨tupleÔª×飩¡£
Bolt£ºStormÖеÄÏûÏ¢´¦ÀíÕߣ¬ÓÃÓÚΪTopology½øÐÐÏûÏ¢µÄ´¦Àí£¬Bolt¿ÉÒÔÖ´ÐйýÂË£¬ ¾ÛºÏ£¬
²éѯÊý¾Ý¿âµÈ²Ù×÷£¬¶øÇÒ¿ÉÒÔÒ»¼¶Ò»¼¶µÄ½øÐд¦Àí¡£
×îÖÕ£¬Topology»á±»Ìá½»µ½storm¼¯ÈºÖÐÔËÐУ»Ò²¿ÉÒÔͨ¹ýÃüÁîÍ£Ö¹TopologyµÄÔËÐУ¬½«TopologyÕ¼ÓõļÆËã×ÊÔ´¹é»¹¸øStorm¼¯Èº¡£
StormÊý¾ÝÁ÷Ä£ÐÍ
Êý¾ÝÁ÷£¨Stream£©ÊÇStormÖжÔÊý¾Ý½øÐеijéÏó£¬ËüÊÇʱ¼äÉÏÎÞ½çµÄtupleÔª×éÐòÁС£ÔÚTopologyÖУ¬SpoutÊÇStreamµÄÔ´Í·£¬¸ºÔðΪTopology´ÓÌØ¶¨Êý¾ÝÔ´·¢ÉäStream£»Bolt¿ÉÒÔ½ÓÊÕÈÎÒâ¶à¸öStream×÷ΪÊäÈ룬Ȼºó½øÐÐÊý¾ÝµÄ¼Ó¹¤´¦Àí¹ý³Ì£¬Èç¹ûÐèÒª£¬Bolt»¹¿ÉÒÔ·¢Éä³öеÄStream¸øÏ¼¶Bolt½øÐд¦Àí¡£
ÏÂÃæÊÇÒ»¸öTopologyÄÚ²¿SpoutºÍBoltÖ®¼äµÄÊý¾ÝÁ÷¹ØÏµ£º

TopologyÖÐÿһ¸ö¼ÆËã×é¼þ£¨SpoutºÍBolt£©¶¼ÓÐÒ»¸ö²¢ÐÐÖ´Ðжȣ¬ÔÚ´´½¨Topologyʱ¿ÉÒÔ½øÐÐÖ¸¶¨£¬Storm»áÔÚ¼¯ÈºÄÚ·ÖÅä¶ÔÓ¦²¢ÐжȸöÊýµÄÏß³ÌÀ´Í¬Ê±Ö´ÐÐÕâÒ»×é¼þ¡£
ÄÇô£¬ÓÐÒ»¸öÎÊÌ⣺¼ÈÈ»¶ÔÓÚÒ»¸öSpout»òBolt£¬¶¼»áÓжà¸ötaskÏß³ÌÀ´ÔËÐУ¬ÄÇôÈçºÎÔÚÁ½¸ö×é¼þ£¨SpoutºÍBolt£©Ö®¼ä·¢ËÍtupleÔª×éÄØ£¿
StormÌṩÁËÈô¸ÉÖÖÊý¾ÝÁ÷·Ö·¢£¨Stream Grouping£©²ßÂÔÓÃÀ´½â¾öÕâÒ»ÎÊÌâ¡£ÔÚTopology¶¨Òåʱ£¬ÐèҪΪÿ¸öBoltÖ¸¶¨½ÓÊÕʲôÑùµÄStream×÷ΪÆäÊäÈ루ע£ºSpout²¢²»ÐèÒª½ÓÊÕStream£¬Ö»»á·¢ÉäStream£©¡£
ĿǰStormÖÐÌṩÁËÒÔÏÂ7ÖÖStream Grouping²ßÂÔ£ºShuffle Grouping¡¢Fields
Grouping¡¢All Grouping¡¢Global Grouping¡¢Non Grouping¡¢Direct
Grouping¡¢Local or shuffle grouping£¬¾ßÌå²ßÂÔ¿ÉÒԲο¼ÕâÀï¡£
Ò»ÖÖStorm²»ÄÜÖ§³ÖµÄ³¡¾°
ÒÔÉϽéÉÜÁËһЩStormÖеĻù±¾¸ÅÄ¿ÉÒÔ¿´³ö£¬StormÖÐStreamµÄ¸ÅÄîÊÇTopologyÄÚΨһµÄ£¬Ö»ÄÜÔÚTopologyÄÚ°´ÕÕ¡°·¢²¼-¶©ÔÄ¡±·½Ê½ÔÚ²»Í¬µÄ¼ÆËã×é¼þ£¨SpoutºÍBolt£©Ö®¼ä½øÐÐÊý¾ÝµÄÁ÷¶¯£¬¶øStreamÔÚTopologyÖ®¼äÊÇÎÞ·¨Á÷¶¯µÄ¡£

ÕâÒ»µãÏÞÖÆÁËStormÔÚһЩ³¡¾°ÏµÄÓ¦Óã¬ÏÂÃæÍ¨¹ýÒ»¸ö¼òµ¥µÄʵÀýÀ´ËµÃ÷¡£
¼ÙÉèÏÖÔÚÓÐÒ»¸öTopology1µÄ½á¹¹ÈçÏ£ºÍ¨¹ýSpout²úÉúÊý¾ÝÁ÷ºó£¬ÒÀ´ÎÐèÒª¾¹ýFilter
Bolt£¬Join Bolt£¬Business1 Bolt¡£ÆäÖУ¬Filter BoltÓÃÓÚ¶ÔÊý¾Ý½øÐйýÂË£¬Join
BoltÓÃÓÚÊý¾ÝÁ÷µÄ¾ÛºÏ£¬Business1 BoltÓÃÓÚ½øÐÐÒ»¸öʵ¼ÊÒµÎñµÄ¼ÆËãÂß¼¡£

ĿǰÕâ¸öTopology1ÒѾ±»Ìá½»µ½Storm¼¯ÈºÔËÐУ¬¶øÏÖÔÚÎÒÃÇÓÖÓÐÁËеÄÐèÇó£¬ÐèÒª¼ÆËãÒ»¸öеÄÒµÎñÂß¼£¬¶øÕâ¸öTopologyµÄÌØµãÊǺÍTopology1¹«ÓÃͬÑùµÄÊý¾ÝÔ´£¬¶øÇÒǰÆÚµÄÔ¤´¦Àí¹ý³ÌÍêȫһÑù£¨ÒÀ´Î¾ÀúFilter
BoltºÍJoin Bolt£©£¬ÄÇôÕâʱºòStormÔõôÀ´Âú×ãÕâÒ»ÐèÇ󣿾ݸöÈËÁ˽⣬ÓÐÒÔϼ¸ÖÖ¡°ÇúÕÛ¡±µÄʵÏÖ·½Ê½£º
1£© µÚÒ»ÖÖ·½Ê½£ºÊ×ÏÈkillµôÒѾÔÚ¼¯ÈºÖÐÔËÐеÄTopology1¼ÆËãÈÎÎñ£¬È»ºóʵÏÖBusiness2
BoltµÄ¼ÆËãÂß¼£¬²¢ÖØÐ´ò°üÐγÉÒ»¸öеÄTopology¼ÆËãÈÎÎñjar°üºó£¬Ìá½»µ½Storm¼¯ÈºÖÐÖØÐÂÔËÐУ¬ÕâʱºòStormÄÚµÄÕûÌåTopology½á¹¹ÈçÏ£º

ÕâÖÖ·½Ê½µÄȱµãÔÚÓÚ£ºÓÉÓÚÒªÖØÆôTopology£¬ËùÒÔÈç¹ûSpout»òBoltÓÐ״̬Ôò»á¶ªÊ§µô£»Í¬Ê±ÓÉÓÚTopology½á¹¹·¢ÉúÁ˱仯£¬Òò´ËÖØÐÂÔËÐÐTopologyǰÐèÒª¶Ô³ÌÐòµÄÎȶ¨ÐÔ¡¢ÕýÈ·ÐÔ½øÐÐÑéÖ¤£»ÁíÍâTopology½á¹¹µÄ±ä»¯Ò²»á´øÀ´¶îÍâµÄÔËά¿ªÏú¡£
2£© µÚ¶þÖÖ·½Ê½£ºÍêÈ«¿ª·¢²¿ÊðÒ»Ì×еÄTopology£¬ÆäÖÐÇ°ÃæµÄ¹«¹²²¿·ÖµÄSpoutºÍBolt¿ÉÒÔÖ±½Ó¸´Óã¬Ö»ÐèÒªÖØÐ¿ª·¢ÐµļÆËãÂß¼Business2
BoltÀ´Ìæ»»ÔÓеÄBusiness1 Bolt¼´¿É¡£È»ºóÖØÐÂÌύеÄTopologyÔËÐС£ÕâʱºòStormÄÚµÄÕûÌåTopology½á¹¹ÈçÏ£º

ÕâÖÖ·½Ê½µÄȱµãÔÚÓÚ£ºÓÉÓÚÁ½¸öTopology¶¼»á´ÓExternal Data Source¶Áȡͬһ·ÝÊý¾Ý£¬ÎÞÒÉÔö¼ÓÁËExternal
Data SourceµÄ¸ºÔØÑ¹Á¦£»¶øÇһᵼÖÂͬÑùµÄÊý¾ÝÔÚStorm¼¯ÈºÄÚ±»´«ÊäÏàͬµÄÁ½·Ý£¬±»Í¬ÑùµÄ¼ÆËãµ¥ÔªBolt½øÐд¦Àí£¬ÀË·ÑÁËStormµÄ¼ÆËã×ÊÔ´ºÍÍøÂç´«Êä´ø¿í¡£¼ÙÉèÏÖÔÚ²»Ö¹ÓÐÁ½¸öÕâÑùµÄTopology¼ÆËãÈÎÎñ£¬¶øÊÇÓÐN¸ö£¬ÄÇô¶ÔStormµÄ¼ÆËãSlotµÄÀ˷ѺÜÑÏÖØ¡£
×¢Ò⣺ÉÏÊöÁ½ÖÖ·½Ê½»¹ÓÐÒ»¸ö¹«¹²µÄȱµã¡ª¡ªÏµÍ³¿ÉÀ©Õ¹ÐÔ²»ºÃ£¬ÕâÒâζ×Ų»¹ÜÄÄÖÖ·½Ê½£¬Ö»ÒªÒÔºóÓÐÕâÖÖÐÂÔöÒµÎñÂß¼µÄÐèÇ󣬶¼ÐèÒª½øÐи´ÔÓµÄÈ˹¤²Ù×÷»òÏßÐÔµÄ×ÊÔ´ÀË·ÑÏÖÏó¡£
3£© µÚÈýÖÖ·½Ê½£ºOK£¬¿´ÁËÒÔÉÏÁ½ÖÖ·½Ê½ºó£¬Ò²ÐíÄã»áÌá³öÏÂÃæµÄ½â¾ö·½°¸£ºÍ¨¹ýKafkaÕâÑùµÄÏûÏ¢Öмä¼þ£¬ÊµÏÖ²»Í¬TopologyµÄSpout¹²ÏíÊý¾ÝÔ´£¬¶øÇÒÕâÑù¿ÉÒÔ×öµ½ÏûÏ¢¿É¿¿´«Êä¡¢ÏûÏ¢rewind»Ø´«µÈ£¬ºÃ´¦ÊǶÔÓÚStormÀ´Ëµ£¬ÒѾÓÐÁËstorm-kafka²å¼þµÄÖ§³Ö¡£ÕâʱºòStormÄÚµÄÕûÌåTopology½á¹¹ÈçÏ£º

ÕâÖÖʵÏÖ·½Ê½¿ÉÒÔͨ¹ýÒýÈëÒ»²ãÏûÏ¢Öмä¼þ¼õÉÙ¶ÔExternal Data SourceµÄÖØ¸´·ÃÎʵÄѹÁ¦£¬¶øÇÒ¿ÉÒÔͨ¹ýÏûÏ¢Öмä¼þ²ã£¬ÆÁ±ÎµôExternal
Data SourceµÄϸ½Ú£¬Èç¹ûÐèÒªÀ©Õ¹ÐµÄÒµÎñÂß¼£¬Ö»ÐèÒªÖØÐ²¿ÊðÔËÐÐеÄTopology£¬Ó¦¸Ã˵ÊÇÏÖÓÐStorm°æ±¾ÏºܺõÄʵÏÖ·½Ê½ÁË¡£²»¹ýÏûÏ¢Öмä¼þµÄÒýÈ룬ÎÞÒɽ«¸øÏµÍ³´øÀ´ÁËÒ»¶¨µÄ¸´ÔÓÐÔ£¬Õâ¶ÔÓÚStormÉϵÄÓ¦Óÿª·¢À´ËµÌá¸ßÁËÃż÷¡£
ÖµµÃ×¢ÒâµÄÊÇ£¬·½°¸ÈýÖÐÈÔÒÅÁôÓÐÒ»µãÎÊÌâûÓнâ¾ö£º¶ÔÓÚStorm¼¯ÈºÀ´Ëµ£¬ÕâÖÖ·½Ê½»¹ÊÇûÓÐÄܹ»´Ó¸ù±¾ÉϱÜÃâÊý¾ÝÔÚStorm²»Í¬TopologyÄÚµÄÖØ¸´·¢ËÍÓë´¦Àí¡£ÕâÊÇÓÉÓÚStormµÄÊý¾ÝÁ÷Ä£ÐÍÉϵÄÏÞÖÆËùµ¼Öµģ¬Èç¹ûStormʵÏÖÁ˲»Í¬TopologyÖ®¼äStreamµÄ¹²Ïí£¬ÄÇôÕâÒ»ÎÊÌâÒ²¾ÍÓÈжø½âÁË¡£
Ò»¸öÁ÷´¦ÀíϵͳµÄÊý¾ÝÁ÷Ä£ÐÍ
¸öÈ˹¤×÷ÖÐÓÐÐÒ²ÎÓë¹ýÒ»¸öÁ÷´¦Àí¿ò¼ÜµÄ¿ª·¢ÓëÓ¦Óá£ÏÂÃæÎÒÃÇÀ´¼òµ¥¿´¿´ÆäÖÐËù²ÉÓõÄÊý¾ÝÁ÷Ä£ÐÍ¡£
Ê×ÏÈ£¬ÏÈÀ´¿´Ò»Ï¸ÃÁ÷´¦ÀíϵͳÄڵö»ù±¾¸ÅÄ
1£©Êý¾ÝÁ÷£¨data stream£©£ºÊ±¼ä·Ö²¼ºÍÊýÁ¿ÉÏÎÞÏÞµÄһϵÁÐÊý¾Ý¼Ç¼µÄ¼¯ºÏÌ壻
2£©Êý¾Ý¼Ç¼£¨data record£©£ºÊý¾ÝÁ÷µÄ×îС×é³Éµ¥Ôª£¬Ã¿ÌõÊý¾Ý¼Ç¼°üÀ¨ 3 ÀàÊý¾Ý£ºËùÊôÊý¾ÝÁ÷Ãû³Æ£¨stream
name£©¡¢ÓÃÓÚ·ÓɵÄÊý¾Ý£¨keys£©ºÍ¾ßÌåÊý¾Ý´¦ÀíÂß¼ËùÐèµÄÊý¾Ý£¨value£©£»
3£©Êý¾Ý´¦ÀíÈÎÎñ¶¨Ò壨task definition£©£º¶¨ÒåÒ»¸öÊý¾Ý´¦ÀíÈÎÎñµÄ»ù±¾ÊôÐÔ£¬ÎÞ·¨Ö±½Ó±»Ö´ÐУ¬±ØÐëÌØ»¯Îª¾ßÌåµÄÈÎÎñʵÀý¡£Æä»ù±¾ÊôÐÔ°üÀ¨£º
£¨¿ÉÑ¡£©ÊäÈëÁ÷£¨input stream£©£ºÃèÊö¸ÃÈÎÎñÒÀÀµÄÄЩÊý¾ÝÁ÷×÷ΪÊäÈ룬ÊÇÒ»¸öÊý¾ÝÁ÷Ãû³ÆÁÐ±í£»Êý¾ÝÁ÷²úÉúÔ´²»»áÒÀÀµÆäËûÊý¾ÝÁ÷£¬¿ÉºöÂÔ¸ÃÅäÖã»
Êý¾Ý´¦ÀíÂß¼£¨process logic£©£ºÃèÊö¸ÃÈÎÎñ¾ßÌåµÄ´¦ÀíÂß¼£¬ÀýÈçÓɶÀÁ¢½ø³Ì½øÐеÄÍⲿ´¦ÀíÂß¼£»
£¨¿ÉÑ¡£©Êä³öÁ÷£¨output stream£©£ºÃèÊö¸ÃÈÎÎñ²úÉúÄĸöÊý¾ÝÁ÷£¬ÊÇÒ»¸öÊý¾ÝÁ÷Ãû³Æ£»Êý¾ÝÁ÷´¦ÀíÁ´Ä©¼¶ÈÎÎñ²»»á²úÉúеÄÊý¾ÝÁ÷£¬¿ÉºöÂÔ¸ÃÅäÖã»
4£©Êý¾Ý´¦ÀíÈÎÎñʵÀý£¨task instance£©£º¶ÔÒ»¸öÊý¾Ý´¦ÀíÈÎÎñ¶¨Òå½øÐоßÌåÔ¼Êøºó£¬¿ÉÍÆË͵½Ä³¸ö´¦Àí½áµãÉÏÔËÐеÄÂ߼ʵÌå¡£¸½¼ÓÏÂÁÐÊôÐÔ£º
Êý¾Ý´¦ÀíÈÎÎñ¶¨Ò壺ָÏò¸ÃÈÎÎñʵÀý¶ÔÓ¦µÄÊý¾Ý´¦ÀíÈÎÎñ¶¨ÒåʵÌ壻
ÊäÈëÁ÷¹ýÂËÌõ¼þ£¨input filting condition£©£ºÒ»¸ö boolean ±í´ïʽÁÐ±í£¬ÃèÊöÿ¸öÊäÈëÁ÷ÖзûºÏʲôÌõ¼þµÄÊý¾Ý¼Ç¼¿ÉÒÔ×÷ΪÓÐЧÊý¾Ý½»¸ø´¦ÀíÂß¼£»Èôij¸öÊäÈëÁ÷ÖÐËùÓÐÊý¾Ý¼Ç¼¶¼ÊÇÓÐЧÊý¾Ý£¬Ôò¿ÉÖ±½ÓÓÃ
true ±íʾ£»
£¨¿ÉÑ¡£©Ç¿ÖÆÊä³öÖÜÆÚ£¨output interval£©£ºÃèÊöÒÔʲôƵÂÊÇ¿ÖÆ¸ÃÈÎÎñʵÀý²úÉúÊä³öÁ÷¼Ç¼£¬¿ÉÒÔÓÃÊäÈëÁ÷¼Ç¼¸öÊý»ò¼ä¸ôʱ¼ä×÷ΪÖÜÆÚ£»ºöÂÔ¸ÃÅäÖÃʱ£¬Êä³öÁ÷¼Ç¼²úÉúÖÜÆÚÍêÈ«ÓÉ´¦ÀíÂß¼×ÔÉí¾ö¶¨£¬²»ÊÜ¿ò¼ÜÔ¼Êø£»
5£©Êý¾Ý´¦Àí½áµã£¨node£©£º¿ÉÈÝÄɶà¸öÊý¾Ý´¦ÀíÈÎÎñʵÀýÔËÐеÄʵÌå»úÆ÷£¬Ã¿¸öÊý¾Ý´¦Àí½áµãµÄIPv4µØÖ·±ØÐ뱣֤Ψһ¡£
¸ÃÁ÷´¦Àíϵͳ£¬²ÉÓ÷ֲ¼Ê½²ßÂÔ£¬Óɶà¸öÊý¾Ý´¦Àí½áµã½øÐÐÊý¾ÝµÄ´¦Àí¹ý³Ì£»½«Á÷ʽÊý¾ÝµÄ´¦Àí¹ý³Ì»®·ÖΪ²»Í¬µÄ½×¶Î£¬Ã¿¸ö½×¶Î°éËæÊý¾ÝÁ÷µÄÁ÷Èë¡¢ÈÎÎñµÄ´¦Àí¼°Êý¾ÝÁ÷µÄÁ÷³ö£»¸÷¸ö½×¶Î»áÓÐÈô¸É¸ö´¦Àí½áµã²ÎÓëÍê³É£¬ÆäÖУ¬Ã¿¸ö´¦Àí½áµãÉÏ»áÓÐÈô¸É¸öÊý¾Ý´¦ÀíÈÎÎñʵÀýÔËÐУ¬Ã¿¸öÊý¾Ý´¦ÀíÈÎÎñʵÀýÔòÊǶÔÒ»¸öÊý¾Ý´¦ÀíÈÎÎñ¶¨Òå½øÐоßÌåÔ¼Êøºó£¬¿ÉÍÆË͵½Ä³¸ö´¦Àí½áµãÉÏÔËÐеÄÂ߼ʵÌå¡£ÔÚ²»Í¬µÄ´¦Àí½áµãÖ®¼ä£¬Êý¾ÝÁ÷¸ù¾ÝÅäÖÃÐÅÏ¢½øÐд«Ê䣻ÔÚ´¦Àí½áµãÄÚ²¿£¬½áµã¸ù¾ÝÅäÖÃÐÅÏ¢¶ÔÁ÷¾¸Ã½áµãµÄÊý¾Ý½øÐд¦Àí¡£
ÏÂͼΪϵͳ¶ÔÓÚÁ÷ʽÊý¾ÝµÄ»ù±¾´¦ÀíÁ÷³Ì£º

1£©¶¨ÒåÊý¾ÝÁ÷£º½«Á÷ʽÊý¾ÝµÄ´¦Àí¹ý³Ì»®·Ö³É²»Í¬µÄ½×¶Î£¬¶¨Òå³ö²»Í¬µÄÊý¾ÝÁ÷Ãû³Æ£»
2£©¶¨ÒåÊý¾Ý´¦ÀíÈÎÎñ£ºÎªÊý¾ÝÁ÷µÄ´¦Àí¹ý³Ì¶¨ÒåÏàÓ¦µÄÊý¾Ý´¦ÀíÈÎÎñ£¬ÆäÖУ¬¸÷¸ö´¦ÀíÈÎÎñ¶¨ÒåÁËÍⲿ´¦ÀíÂß¼£¬ÇÒÆäÊäÈë/Êä³öÊý¾ÝÁ÷Ðë´Ó1£©ÖÐÔ¤¶¨ÒåµÄÊý¾ÝÁ÷ÁбíÖÐѡȡ£»
3£©¶¨ÒåÊý¾Ý´¦Àí½áµã£º¶¨Òå¸÷¸öÊý¾Ý´¦Àí½áµãµÄÃû³Æ¼°ÆäIPv4µØÖ·ÐÅÏ¢£»
4£©¶¨ÒåÊý¾Ý´¦ÀíÈÎÎñʵÀý£ºÎª3£©Öж¨ÒåºÃµÄÿ¸ö´¦Àí½áµã£¬·Ö±ð¶¨ÒåÔËÐÐÔÚÆäÉϵÄÊý¾Ý´¦ÀíÈÎÎñʵÀý£¬ÆäÖУ¬Ã¿¸öÈÎÎñʵÀýËù¶ÔÓ¦µÄÊý¾Ý´¦ÀíÈÎÎñʵÌåÐë´Ó2£©ÖÐÔ¤¶¨ÒåµÄ´¦ÀíÈÎÎñÁбíÖÐѡȡ£»
5£©¼ÓÔØÊý¾ÝÁ÷µÄÏà¹ØÅäÖÃÐÅÏ¢¼°¶©ÔÄÐÅÏ¢£¨¾ßÌå¸ñʽ¼û¡°¸½Â¼£ºÅäÖÃÐÅÏ¢¸ñʽ¡±£©£¬È»ºó¿ªÊ¼´ÓÊý¾ÝÁ÷²úÉúÔ´¶ÁÈ¡Êý¾Ý£»
6£©ÔËÐÐÊý¾ÝÁ÷Ô´½áµãÉϵÄÈÎÎñʵÀý£ºÊý¾ÝÁ÷´¦ÀíÁ´Ô´½áµãÉϵĴ¦ÀíÈÎÎñʵÀýÖ±½Ó¶ÔÊý¾ÝÁ÷²úÉúÔ´µÄÊý¾Ý½øÐд¦Àí£¬È»ºó²úÉúеÄÊä³öÊý¾ÝÁ÷£»
7£©ÔËÐÐÏÂÒ»¼¶½áµãÉϵÄÈÎÎñʵÀý£ºÖмäµÄ´¦Àí½áµãÉϵĴ¦ÀíÈÎÎñʵÀýÒÀÀµÓÚÉÏÒ»¼¶´¦Àí½áµãµÄÊä³öÊý¾ÝÁ÷×÷ΪÊäÈëÊý¾ÝÁ÷£¬´ÓÖжÁÈ¡Êý¾Ý£¬½øÐд¦Àí£¬²úÉúÊä³öÊý¾ÝÁ÷£¬²¢´«µÝµ½ÏÂÒ»¼¶´¦Àí½áµã£»
8£©ÅжÏÊÇ·ñµ½´ïÊý¾ÝÁ÷Ä©¼¶½áµã£º
Èç¹û²»ÊÇ£¬Ôò¼ÌÐø·µ»Ø²½Öè7£©£¬°´ÕÕÊý¾ÝÁ÷µÄÁ÷¶¯¹ØÏµ£¬¼ÌÐøÔËÐÐÏÂÒ»¼¶½áµãÉϵÄÈÎÎñʵÀý£»
·ñÔòΪÊý¾ÝÁ÷Ä©¼¶½áµã£¬Ôò½øÐв½Öè9£©¡£
9£©Êä³ö½á¹û£ºÊý¾ÝÁ÷´¦ÀíÁ´Ä©¼¶½áµãÉϵĴ¦ÀíÈÎÎñ²»»á²úÉúеÄÊý¾ÝÁ÷£¬Íê³É×îÖÕµÄÊý¾Ý´¦ÀíÈÎÎñºó½«½á¹û½øÐÐÊä³ö¡£
ÒÔÉÏÊÇÊý¾ÝÁ÷ÔÚ²»Í¬´¦Àí½áµãÖ®¼äµÄ´¦ÀíÁ÷³Ì¡£Ã¿¸ö´¦Àí½áµã×÷ΪÁ÷´¦ÀíµÄÒ»¸ö»·½Ú£¬Æä½áµãÄÚ²¿µÄ´¦ÀíÁ÷³ÌÈçÏÂͼËùʾ£º

1£©Ã¿¸ö´¦Àí½áµãÆô¶¯Á÷´¦Àí¹ý³Ìºó£¬¿ªÆôÍøÂç·þÎñ£¬¼àÌý´ÓÉÏÒ»¼¶´¦Àí½áµã·¢³öµÄTCPÁ¬½ÓÇëÇ󣬽ÓÊÕ´ÓÉÏÒ»¼¶½áµã·¢À´µÄÊý¾Ý£»
2£©´¦Àí½áµã²»¼ä¶ÏµØ½ÓÊÕ´ÓÉÏÒ»¼¶´¦Àí½áµã·¢À´µÄÊý¾Ý£¬¶ÔÓÚÿÌõÊý¾Ý¼Ç¼£¬¸ù¾ÝÊý¾ÝÁ÷Ãû½øÐÐɸѡ£¬½«Æä·Ö·¢µ½¸ÃÊý¾ÝÁ÷Ëù¶ÔÓ¦µÄ´¦Àí½ø³ÌÖУ»
3£©½«´Óÿ¸öÌØ¶¨Êý¾ÝÁ÷·¢À´µÄÊý¾Ý£¬¹ã²¥µ½ËùÓÐÒÔ¸ÃÊý¾ÝÁ÷×÷ΪÊäÈëÊý¾ÝÁ÷µÄÊý¾Ý´¦ÀíÈÎÎñʵÀýÖУ»
4£©Êý¾Ý´¦ÀíÈÎÎñʵÀý´ÓÆäÊäÈëÊý¾ÝÁ÷ÖнÓÊÕÊý¾Ý£¬°´ÕÕ¹ýÂËÌõ¼þ½øÐÐɸѡ£¬È»ºó½«·ûºÏ¹ýÂËÌõ¼þµÄÊý¾Ý¼Ç¼·¢Ë͸øÍⲿӦÓóÌÐò½øÐд¦Àí£»
5£©ÍⲿӦÓóÌÐòÆô¶¯Íⲿ´¦Àí½ø³Ì£¬¶ÔÊý¾Ý½øÐÐʵ¼Ê´¦Àí¹ý³Ì£¬²¢½«Ã¿ÌõÊý¾Ý¼Ç¼µÄ´¦Àí½á¹û·µ»Ø¸øÏàÓ¦µÄÊý¾Ý´¦ÀíÈÎÎñʵÀý£»
6£©Êý¾Ý´¦ÀíÈÎÎñʵÀý´ÓÍⲿӦÓóÌÐòÊÕ¼¯´¦ÀíºóµÄ½á¹ûÊý¾Ý£¬²¢ÒÀ´Î½«Æäת·¢µ½¶ÔÓ¦µÄÊä³öÊý¾ÝÁ÷ÖУ»
7£©Êä³öÊý¾ÝÁ÷½ø³Ì½ÓÊÕ·¢Ïò¸ÃÊý¾ÝÁ÷µÄÊý¾Ý£¬È»ºó°´ÕÕÊý¾ÝÁ÷µÄ¶©ÔĹØÏµ£¬½«Êý¾Ý·¢Ë͵½ËùÓж©ÔÄÁ˸ÃÊý¾ÝÁ÷µÄÏÂÒ»¼¶´¦Àí½áµã£»
8£©¸ù¾ÝÏÂÒ»¼¶´¦Àí½áµãµÄIPµØÖ·ºÍ¶Ë¿ÚºÅ£¬Í¨¹ýTCPÇëÇóÓëÏÂÒ»¼¶´¦Àí½áµã½¨Á¢ÍøÂçÁ¬½Ó£¬È»ºó½«Êý¾Ý°´Ðò´«Êäµ½ÏÂÒ»¼¶´¦Àí½áµã¡£
¶þÕßÔÚÊý¾ÝÁ÷Ä£ÐÍÉϵIJ»Í¬Ö®´¦
ÖÁÓÚÁ½¸öϵͳµÄʵÏÖϸ½Ú£¬ÎÒÃÇÏȲ»È¥×ö¾ßÌå±È½Ï£¬ÏÂÃæ½öÁгö¶þÕßÔÚÊý¾ÝÁ÷Ä£ÐÍÉϵÄһЩ²»Í¬Ö®´¦£¨ÕâÀï²¢²»ÊÇΪÁËÈ«Ãæ¶Ô±È¶þÕߵIJ»Í¬Ö®´¦£¬Ö»ÊÇÁгöÆäÖеĹؼü²¿·Ö£©£º
1£© ÔÚStormÖУ¬Êý¾ÝÁ÷StreamÊÇÔÚTopologyÄÚ½øÐж¨Ò壬²¢ÔÚTopologyÄÚ½øÐд«ÊäµÄ£»¶øÔÚÉÏÃæÌáµ½µÄÁ÷´¦ÀíϵͳÖУ¬Êý¾ÝÁ÷StreamÊÇÔÚÕû¸öϵͳÄÚÈ«¾ÖΨһµÄ£¬¿ÉÒÔÔÚÕû¸ö¼¯ÈºÄÚ±»¶©ÔÄ¡£
2£© ÔÚStormÖУ¬Êý¾ÝÁ÷StreamµÄ·¢²¼ºÍ¶©ÔͼÊǾ²Ì¬µÄ£¬Ëùν¾²Ì¬ÊÇÖ¸Êý¾ÝÁ÷µÄ·¢²¼Óë¶©ÔĹØÏµÔÚÏòStorm¼¯ÈºÌá½»Topology¼ÆËãÈÎÎñʱ£¬±»Ò»´ÎÐÔÉú³ÉµÄ£¬ÕâÒ»¹ØÏµÔÚTopologyµÄÔËÐйý³ÌÖÐÊDz»Äܱ»¸Ä±äµÄ£»¶øÔÚÉÏÃæÌáµ½µÄÁ÷´¦ÀíϵͳÖУ¬Êý¾ÝÁ÷StreamµÄ·¢²¼ºÍ¶©ÔͼÊǶ¯Ì¬µÄ£¬¼´Êý¾Ý´¦ÀíÈÎÎñtask¿ÉÒÔ¶¯Ì¬µÄ·¢²¼Stream£¬Ò²¿ÉÒÔ¶¯Ì¬µÄ¶©ÔÄϵͳÄÚÒѾÉú³ÉµÄÈÎÒâStream£¬Êý¾ÝÁ÷µÄ¶©ÔĹØÓÚͨ¹ý·Ö²¼Ê½Ó¦ÓóÌÐòе÷·þÎñZooKeeper¼¯ÈºµÄ¶¯Ì¬½ÚµãÀ´Î¬»¤¹ÜÀí¡£
ºÃÁË£¬ÓÐÁËÒÔÉϵĶԱȣ¬ÎÒÃDz»ÄÑ·¢ÏÖ£¬¶ÔÓÚ±¾ÎÄËù¾ÙµÄÓ¦Ó󡾰ʵÀý£¬StormµÄÊý¾ÝÁ÷ģʽÉв»Äܷܺ½±ãµÄÖ§³Ö£¬¶øÔÚÕâÀïÌáµ½µÄÕâ¸öÁ÷´¦ÀíϵͳµÄÈ«¾ÖÊý¾ÝÁ÷Ä£ÐÍÏ£¬ÕâÒ»Ó¦Óó¡¾°µÄÐèÇó¿ÉÒԺܷ½±ãµÄÂú×ã¡£
×ܽáµÄ»°
¸öÈ˾õµÃ£¬StormÓбØÒªÊµÏÖ²»Í¬TopologyÖ®¼äStreamµÄ¹²Ïí£¬Õâ¸öÖÁÉÙ¿ÉÒÔÔÚ²»ËðʧStormÏÖÓй¦ÄܵÄǰÌáÏ£¬Ê¹µÃStormÔÚ´¦Àíʵ¼ÊÉú²ú»·¾³ÏµÄһЩӦÓ󡾰ʱ¸ü¼Ó´ÓÈÝÓ¦¶Ô¡£
ÖÁÓÚÈçºÎÔÚÏÖÓÐStormµÄ»ù´¡ÉÏʵÏÖÕâÒ»ÐèÇ󣬿ÉÄܵķ½Ê½ºÜ¶à¡£Ò»ÖÖ¼òµ¥µÄ·½Ê½ÊÇͨ¹ýZookeeperÀ´¼¯Öд洢¡¢¶¯Ì¬¸ÐÖªTopologyÖ®¼äStreamµÄ¡°·¢²¼-¶©ÔÄ¡±¹ØÏµ£¬Í¬Ê±ÔÚStormµÄÏûÏ¢·Ö·¢¹ý³ÌÖжÔÕâÖÖÇé¿ö¼ÓÒÔ´¦Àí¡£
|