¡¡¡¡Apache ThriftÊÇÒ»¿î·þÎñ¿ª·¢¿ò¼Ü£¬¿Í»§Äܹ»ÔÚÈí¼þÉÏÓ¦ÓöàÓïÖÖ¿ª·¢Éè¼ÆÄãµÄ·þÎñÐÂÏîÄ¿£¬ÈÚºÏÔÚÏß±à¼Æ÷¾Í¿ÉÒÔ¼üÈë±àÂëƒÈÈÝ£¬Èÿͻ§Äܹ»Éè¼Æ·½°¸¸÷ÖÖ¸÷Ñù±à³ÌÓïÑÔÊÊÓõĿͻ§¶ËÈí¼þºÍ·þÎñ¶Ë³ÌÐòÁ÷³Ì¡£
¡¡¡¡Apache Thrift×÷Óãº
¡¡¡¡Ò³ÃæÃèÊöÓïÑÔ-Ò»Çж¼ÔÚIDLÎĵµÖÐÌØ¶¨£¬Äܹ»´Ó¸ÃÎļþת»¯³É¶àÓïÖֵĹØÁª¡£
¡¡¡¡ÓïÑÔ±í´ï¹ØÁª-ºÜ¶àÓïÑÔ±í´ïºÍ×ÔÈ»»·¾³¶¼ÊÊÓÃThrift
¡¡¡¡C
¡¡¡¡C#
¡¡¡¡Cocoa
¡¡¡¡D
¡¡¡¡Delphi
¡¡¡¡Erlang
¡¡¡¡Haskell
¡¡¡¡Java
¡¡¡¡OCaml
¡¡¡¡Perl
¡¡¡¡php
¡¡¡¡Python
¡¡¡¡Ruby
¡¡¡¡Smalltalk
¡¡¡¡~Ãû³ÆÊÒÄÚ¿Õ¼ä-ÿһ¸öThriftÎĵµ×øÂäÓÚÆä×ÔÉíµÄÃû³ÆÊÒÄÚ¿Õ¼äÖУ¬ÈÝÐíÄúÔںü¸¸öThriftÎĵµÖÐÓ¦ÓÃͬÑùµÄ±êÖ¾·û
¡¡¡¡ÓïÑÔ±í´ïÃû³ÆÊÒÄÚ¿Õ¼ä-ÿһ¸öThriftÎĵµ£¬ÄúÄܹ»Ìض¨Ã¿Ò»ÖÖ±à³ÌÓïÑÔÓ¦Ó¦ÓõÄÃû³ÆÊÒÄÚ¿Õ¼ä
¡¡¡¡»ù±¾ÉÏÀàÐÍ-ThriftÓÐСÁ¿µÄ»ù±¾ÉÏÀàÐÍ¡£
¡¡¡¡±äÁ¿¶¨ÒåºÍö¾ÙÀàÐÍ-Äܹ»Îª±äÁ¿¶¨ÒåÖµ·ÖÅÉÂß¼ÐÔÃû³Æ
¡¡¡¡½á¹¹-Ó¦Óýṹ¶ÔÓйØÊý¾ÝÐÅÏ¢¿ªÕ¹ÅÅÐò¡£½á¹¹Äܹ»¾ß±¸Ò»ÇÐÀàÐ͵Ä×Ö¶ÎÃû¡£
¡¡¡¡Ï¡Éٽṹ-²¢Î´É趨µÄ¿ÉÑ¡Ôñ»ù±¾ÉÏ×Ö¶ÎÃûºÍΪ¿ÕµÄ²Î¿¼×ֶν«²»ÈÝÒ׸ù¾ÝµçÀÂÏßÍÆËÍ
¡¡¡¡½á¹¹Ñݱä-¸ù¾ÝÓ¦ÓÃ×Ö¶ÎÃûµÄÕûÊý±êÖ¾·ûÀ´½â¾ö×Ö¶ÎÃûµÄ¼ÓÉϺÍɾµô£¬¶ø²»ÈÝÒ×»Ù»µÄ¿Ç°µÄÊÖ»ú¿Í»§¶Ë
¡¡¡¡Æ÷Ãó-ÄúÄܹ»Ó¦ÓÃÒ»ÇÐÀàÐ͵¬Ä¿Â¼ºÍͶÉ䣺»ù±¾ÉÏÀàÐÍ£¬½á¹¹ºÍ±ðµÄÆ÷Ãó¡£
¡¡¡¡ÀàÐͽ綨-Äܹ»¸øÒ»ÇÐÀàÐÍÒ»¸öÄܹ»¸üºÃµØÐðÊöËüµÄÃû³Æ
¡¡¡¡·þÎñ-·þÎñÊÇÒ»×é×÷ÓÃ
¡¡¡¡·þÎñ³Ð¼Ì-×Ó·þÎñÍê³ÉÆä»ù±¾ÉÏ·þÎñµÄÈ«²¿×÷Ó㬶øÇÒÄܹ»¾ß±¸±ðµÄ×÷ÓÃ
¡¡¡¡Òì²½µ÷ÓÃ-Äܹ»Òì²½µ÷Óò»»Øµ½½Y¹ûµÄºÊý£¬Òò¶øÔÚ·þÎñÆ÷½øÐжÔÒªÇóµÄ½â¾öÒÔǰ£¬²»ÈÝÒ×¶ÂÈûÊÖ»ú¿Í»§¶Ë¡£·þÎñÆ÷Äܹ»²¢Ðд¦Àí/»ìÂÒʵÐÐͬһÊÖ»ú¿Í»§¶ËµÄÒì²½µ÷ÓÃ
¡¡¡¡³öÏÖÒì³£-¼ÙÈç²úÉú²»ÕýÈ·£¬ÔòºÊýÄܹ»ÒýÆð¹æ·¶»ò¿Í»§½ç¶¨µÄ³öÏÖÒì³£
¡¡¡¡Ñ»·ÏµÍ³½á¹¹-´Ó0.9.2°æÖð½¥£¬ThriftÊÊÓðüÀ¨±¾ÉíµÄ½á¹¹»òÖ®ºóÒªÉêÃ÷µÄ±ðµÄ½á¹¹¡£
¡¡¡¡·Ç×÷ÓÃ
¡¡¡¡Apache Thrift²»¼æÈÝÏÂÁÐ×÷Óãº
¡¡¡¡struct³Ð¼Ì-¸Ä³Éstruct×é³É
¡¡¡¡¶à̬-ÒòΪ›]Óгм̣¬Òò¶øÒ²²»¼æÈݶà̬
¡¡¡¡ÇáÔØ-·þÎñÖеÄÈ«²¿·½Ê½¶¼Îñ±ØÎ¨Ò»µØÈ¡Ãû
¡¡¡¡¶ÔÓ³Òì¹¹Æ÷Ãó-Æ÷ÃóÖеÄÈ«²¿Îï¼þ¶¼Îñ±ØÊÇͬһÀàÐÍ
¡¡¡¡¿Õ»Øµ½-û·¨Á¢¼´´ÓºÊý»Øµ½¿Õ¡£Ó¦ÓðüÑbÆ÷½á¹¹»ò±êÊ¶ÖµÌæ´ú
¡¡¡¡Apache ThriftÊÇÒ»¸öÏîÄ¿¹ÜÀí£¬Éæ¼°µ½¶àÖÖ¶àÑù±à³ÌÓïÑԺͲâÊÔÓÃÀý¡£´ó¼ÒµÄ×ÜÌåÄ¿±êÊÇʹ¿çÓïÑÔ±í´ïµÄ¿¿Æ×£¬ÐÔÄÜ׿ԽµÄͨѶºÍÊý¾ÝÐÅϢʵÀý»¯¾¡Á¿¸ßЧÂʺÍÎÞ·ìÆ´½Ó¡£ThriftÓÚ2007Äê4Ô¿ªÔ´ÏµÍ³£¬²¢ÓÚ2008Äê5Ô½øµ½Apache´´Òµ·õ»¯Æ÷¡£ThriftÓÚ2010Äê10Ô±ä³ÉApache TLP¡£
¡¡¡¡Apache ThriftÖÂÁ¦ÓÚ·´Ó³ÏÂÁмÛÖµ¹ÛÄ
¡¡¡¡¼òÒ×ÐÔ Thrift±àÂë¼òÒ×ʵÓ㬛]ÓжàÓàµÄÏ໥ÒÀÀµ¡£
¡¡¡¡È«Í¸Ã÷ ÇÚ¼ó½ÚÔ¼ºÏºõÈ«²¿ÓïÑÔ±í´ïÖÐ×îÆÕ±éµÄϰ¹ßÓ÷¨¡£
¡¡¡¡Ò»ÖÂÐÔ Éú̬Òò×Ó£¬ÌØÊâÓÚÓïÑԵŦÄܹéÊôÓÚÍØÕ¹£¬¶ø²»Êǹؼü¿â¡£
¡¡¡¡ÌØÐÔ ÕùÈ¡ÌØÐÔµÚÒ»£¬ÑÅÖµڶþ¡£
¡¾Èí¼þÓŵ㡿
¡¡¡¡1¡¢ÇÚ¼ó½ÚÔ¼µÄÀàÐÍ
¡¡¡¡ThriftÀàÐÍϵͳÈí¼þÖÂÁ¦ÓÚʹ³ÌÐòÔ³²»¹ÜÓ¦ÓÃÄÄÒ»ÖÖ±à³ÌÓïÑÔ£¬¶¼Äܹ»¾¡Á¿¶àµØÓ¦ÓøÃÉ豸ÀàÐÍ¡£´ËÐÅÏ¢ÄÚÈݸù¾Ý¶øÇÒÌæ´úÁËThriftÊг¡Ñо¿±¨¸æÖеÄÐÅÏ¢ÄÚÈÝ¡£µÄÇÚ¼ó½ÚÔ¼IDL³öʾÁËÓÃÒÔÔì³É¶ÔÓÚÿһ¸öÄ¿±êÓïÑÔ±àÂëµÄÀàÐ͵ÄÐðÊö¡£
¡¡¡¡2¡¢»ù±¾ÉÏÀàÐÍ
¡¡¡¡ÌôÑ¡»ù±¾ÉÏÀàÐ͵ÄÄ¿µØÊǼòµ¥»¯ºÍÇåÎú¶ø²»ÊÇ×ÜÊýÖî¶à£¬¹Ø¼ü·Åµ½È«²¿±à³ÌÓïÑÔÖпÉÒÔÓõļüÀàÐÍÉÏ¡£
¡¡¡¡bool£º²¼¶ûÖµ£¨¶Ô»ò´í£©
¡¡¡¡×Ö½ÚÊý£º8λÓбê¼ÇÕûÊý
¡¡¡¡i16£º16λÓбê¼ÇÕûÊý
¡¡¡¡i32£º32λϵͳÓбê¼ÇÕûÊý
¡¡¡¡i64£º64λÓбê¼ÇÕûÊý
¡¡¡¡double£º64λ¸¡µãÐÍ
¡¡¡¡×Ö·û´®Êý×飺ӦÓÃUTF-8±àºÅ±àºÅµÄÎÄ×Ö×Ö·û´®Êý×é
¡¡¡¡3¡¢½á¹¹
¡¡¡¡ÇÚ¼ó½ÚÔ¼½á¹¹½ç¶¨ÁËÒ»¸ö¹«¹²¶ÔÏó
ÈüÂíÊÇÒ»ÖÖÊܵ½Ðí¶àÈËϲ°®µÄÔ˶¯£¬Ðí¶àÍæ¼Ò¶¼Ï£Íû³ÉΪһÃûרҵµÄÈüÂíÊÖ¡£ÓÚÊÇС±à½ñÌì¾Í´øÀ´ÁËÐí¶àÈüÂíÀàÐ͵ÄÓÎÏ·£¬Ï£Íû´ó¼ÒÄܹ»Ï²»¶£¡
¶àÌØÈí¼þվΪÄúÌṩ´«ÆæÀàÐ͵ÄÊÖÓÎ_´«ÆæÀàÊÖÓÎÄĸöºÃרÌâ,ÔÚÕâÀﰲ׿°æÆ»¹û°æµÈÓ¦ÓÃÓ¦Óо¡ÓУ¬ÕÒ´«ÆæÀàÐ͵ÄÊÖÓÎ_´«ÆæÀàÊÖÓÎÄĸöºÃ¾ÍÀ´¶àÌØÈí¼þÕ¾°É¡£
¶àÌØÈí¼þվΪÄúÌṩ×ö×îн¨Öþ½á¹¹ÊÜÁ¦·ÖÎö¼ÆËãÈí¼þרÌâ,ÔÚÕâÀﰲ׿°æÆ»¹û°æµÈÓ¦ÓÃÓ¦Óо¡ÓУ¬ÕÒ×îн¨Öþ½á¹¹ÊÜÁ¦·ÖÎö¼ÆËãÈí¼þ¾ÍÀ´¶àÌØÈí¼þÕ¾¡£
¶àÌØÈí¼þ԰ΪÄúÕûÀíÁ˶à¿î¹È¸è·þÎñ¿ò¼ÜÈí¼þÈí¼þ£¬ÔÚ¶àÌØÄúÄÜÏÂÔØ¶à¿îÕý¹æµÄ¡¢ÎÞ¶¾Èí¼þ£¬ÆäÖÐÓйȸè·þÎñ¿ò¼Ü¡¢»ªÎª¹È¸è·þÎñ¿ò¼Ü¡¢¹È¸è·þÎñ¿ò¼Üoppoר°æµÈApp£¬ÕÒÈí¼þÒ»¶¨ÒªÕÒÕý¹æÆ½Ì¨£¬¶àÌØÃ¿Ò»¿îÈí¼þ¶¼½øÐвéɱ£¬È·±£Èí¼þ°²È«£¬ÏëÒªÕҹȸè·þÎñ¿ò¼ÜÈí¼þÓ¦Ó㬸ϽôÀ´¶àÌØÈí¼þÔ°¿´¿´°É¡£
·¸×ïÀàÐ͵ÄÓÎÏ·ÊÇÐí¶àÍæ¼Ò¶¼Ìرðϲ»¶µÄÓÎÏ·ÀàÐÍ£¬ÔÚÕâÖÖÓÎÏ·ÖÐÍæ¼Ò¿ÉÒÔ×öÈκÎÊÂÇ飬ÄÄÅÂÊDZ»Í¨¼©Ò²ÎÞËùν£¬Ö»Òª×Ô¼ºÍæµÄˬ£¡ÓÚÊÇС±à¾ÍÈ¥ËѼ¯ÁËÐí¶àÕâÖÖÀàÐ͵ÄÓÎÏ·£¬µ«ÊǸ÷Î»Íæ¼ÒǧÍò¼Çס²»ÒªÔÚÏÖʵÉç»áÖÐ¸ãÆÆ»µÅ¶£¡