Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
΢ÐÅ¡¢Ä°Ä°µÈÖøÃûIMÈí¼þÉè¼Æ¼Ü¹¹Ïê½â
 
×÷Õߣº°®¿ª¾í360  À´Ô´£ºcnblogs ·¢²¼ÓÚ£º 2016-5-24
  6452  次浏览      32
 

¶Ô΢ÐÅ¡¢Ä°Ä°µÈ½øÐÐÁË·ÖÎö£¬·¢³öÀ´·ÖÏíһϣ¨Ê±¼äÓÐЩ¾ÃÁË£©

µçÁ¿£º¶ÔÓÚÒÆ¶¯É豸×î´óµÄÆ¿¾±¾ÍÊǵçÁ¿ÁË¡£ÒòΪÓû§²»¿ÉÄÜËæÊ±Ð¯´øµçÔ´£¬³äµç±¦¡£ËùÒÔ±ØÐ뿼Âǵ½µçÁ¿ÎÊÌâ¡£ÄǾÍÒª¼ì²éÎÒÃǹ¤³ÌÊDz»ÊÇÓкǫ́ÔËÐУ¬ÐÄÌø°ü·¢ËÍʱ¼äÊDz»ÊǺÏÀí¡£

Á÷Á¿£º¶ÔÓںöà¹úÄڴ󲿷֌ÅË¿Óû§À´Ëµ¿ÉÄÜ»¹ÊǰüÔÂ30M£¬ÄÇôÎÒÃDZØÐëÕ¾ÔÚ¹ã´óÓû§½Ç¶ÈÀ´¿¼ÂÇÎÊÌâÁË¡£Ò»¸ö°ü¿ÉÒÔ½â¾öµÄ¾ÍÒ»¸ö°ü¡£

ÍøÂ磺

Õâ¸öÒ²ÊÇIM×îºËÐĵÄÄÚÈÝÁË£¬ÎÒÃÇÒª×öµ½ÔÚÈκÎÍøÂçϵÈ˳³©ÁÄÌìÄǾͲ»ÈÝÒ×ÁË£¬ºÃ¶à¹«Ë¾¶¼ÓõÄxmpp¿ò¼Ü£¬Èç¹ûÔÚÇ¿ÍøÂç»·¾³Ï£¬xmppÍêȫûÓÐÎÊÌâ¡£µ«ÊÇÄÇÖÖÈõÍøÂç»·¾³ÏÂxmpp¾ÍÊøÊÖÎÞ²ßÀ²£¬Óû§ÌåÑé¾ÍºÜÀ¬»øÁË¡£

¸öÈ˾õµÃxmpp ¿ÉÒÔÍæÍæ£¨²Î¿¼¿´Õâ¸öRFC3920ºÍRFC3921£©£¬ µ«ÊÇÓÃÀ´ÕæÕýµÄ²úÆ·¾Í²îÔ¶ÁË¡£Èç¹ûÓöµ½Ò»¸ö×öIM µÄÅóÓÑÕſڱտڶ¼Ëµxmpp µÄ»°£¬ÄÇô²»ÓùµÍ¨ÁË£¬¿Ï¶¨²»ÊÇʲôºÃ²úÆ·¡£Î¢ÐÅ¡¢QQÒÔÇ°Ò²ÔøÓùýxmpp£¬µ«ÊÇ×îºóÒ²·ÅÆúÁËxmpp£¬¾ÍÖªµÀxmppÓкܶà±×¶ËÁË£¬»¹ÓоÍÊDZ¨ÎÄÌ«´ó£¬ºÃÓ·Ö×£¬ÀË·ÑÁ÷Á¿¡£ÎªÁ˱£Ö¤Îȶ¨£¬Î¢ÐÅÓÃÁ˳¤Á´½ÓºÍ¶ÌÁ´½ÓÏà½áºÏ£¬ÀýÈ磺

1 ¡¢Á½¸öÓòÃû

΢ÐÅ»®·ÖÁËhttpģʽ£¨shortÁ´½Ó£©ºÍ tcp Ä£Ê½£¨long Á´½Ó£©£¬·Ö±ðÓ¦¶Ô״̬ЭÒéºÍÊý¾Ý´«ÊäЭÒé

long.weixin.qq.com  dns check £¨112.64.237.188 112.64.200.218£©

short.weixin.qq.com  dns check  ( 112.64.237.186 112.64.200.240)

2 ËµÃ÷

2.1 short.weixin.qq.com  

 ÊÇHTTPЭÒéÀ©Õ¹£¬ÔËÐÐ8080 ¶Ë¿Ú£¬http bodyΪ¶þ½øÖÆ£¨protobuf£©¡£

 Ö÷ÒªÓÃ;£¨½Ó¿Ú£©£º

Óû§µÇ¼ÑéÖ¤;

ºÃÓѹØÏµ£¨»ñÈ¡£¬Ìí¼Ó£©£»

ÏûÏ¢sync (newsync)£¬×ÔÓÐsync»úÖÆ£»

»ñÈ¡Óû§Í¼Ïñ£»

Óû§×¢Ïú£»

ÐÐΪÈÕÖ¾Éϱ¨¡£

ÅóÓÑȦ·¢±íË¢ÐÂ

 2.2  long.weixin.qq.com  

  tcp ³¤Á¬½Ó£¬ ¶Ë¿ÚΪ8080£¬ÀàËÆÎ¢ÈíactivesyncµÄ¶þ½øÖÆÐ­Òé¡£

 Ö÷ÒªÓÃ;£¨½Ó¿Ú£©£º

½ÓÊÜ/·¢ËÍÎı¾ÏûÏ¢£»

½ÓÊÜ/·¢ËÍÓïÒô£»

½ÓÊÜ/·¢ËÍͼƬ£»

½ÓÊÜ/·¢ËÍÊÓÆµÎļþµÈ¡£

 

 ËùÓÐÉÏÃæÇëÇó¶¼ÊÇ»ùÓÚtcp³¤Á¬½Ó¡£ÔÚ·¢ËÍͼƬºÍÊÓÆµÎļþµÈʱ£¬·ÖΪÁ½¸öÇëÇó£»µÚÒ»¸öÇëÇóÊÇËõÂÔͼµÄ·½Ê½£¬µÚ¶þ¸öÇëÇóÊÇÈ«Êý¾ÝµÄ·½Ê½¡£

2.2.1 Êý¾Ý±¨ÎÄ·½Ãæ

ÔöÁ¿ÉÏ´«²ßÂÔ£º

ÿ´Î8k×óÓÒ´óСÊý¾ÝÉÏ´«£¬·þÎñÆ÷È·ÈÏ£»ÔÚ¼ÌÐø´«Êä¡£

ͼƬÉÏ´«£º

ÏÈ´«ËõÂÔͼ£¬´«Îı¾ÏûÏ¢£¬ÔÙ´«¾ßÌåÎļþ

ÏÂÔØ£º

ÏÈÏÂÔØËõÂÔͼ£¬ ÔÚÏÂÔØÔ­Í¼

ÏÂÔØµÄʱºò£¬È«²¿Ò»´ÎÍÆËÍ¡£

3 ¸½Â¼

3.1  Óû§µÇ¼ÑéÖ¤

POST /cgi-bin/micromsg-bin/auth HTTP/1.1

Accept: **

User-Agent: Mozilla/4.0

Content-Type: application/x-www-form-urlencoded<

Host: short.weixin.qq.com

Content-Length: 174

 

3.3 ÏûÏ¢sync (newsync)

POST /cgi-bin/micromsg-bin/newsync HTTP/1.1>

Host: short.weixin.qq.com

User-Agent: Android QQMail HTTP Client

Cache-Control: no-cache

Connection: Keep-Alive

Content-Type: application/octet-stream

accept: **

Content-Length:  206

 

3.5 Óû§×¢Ïú

POST /cgi-bin/micromsg-bin/iphoneunreg HTTP/1.1

Accept: */*

User-Agent: Mozilla/4.0

Cotent-Type: application/x-www-form-urlencoded

Host: >short.weixin.qq.com

Content-Length: 271

 

3.6 ÐÐΪÈÕÖ¾Éϱ¨

POST /cgi-bin/stackreport?version=240000a7&filelength=1258&sum=7eda777ee26a76a5c93b233eed504c7d&reporttype=1&username=jolestar HTTP/1.1

Content-Length: 736

Content-Type: binary/octet-stream

Host: weixin.qq.com

Connection: Keep-Alive

User-Agent: Apache-HttpClient/UNAVAILABLE (java 1.4)

´ÓÏÖÔÚ»¥ÁªÍøµÄ·¢Õ¹¶øÑÔ£¬IMºÍÊÓÆµ£¨°üÀ¨IMÀïÃæÊÓÆµÍ¨»°£©ÊÇÒ»¸ö·½Ïò£¬ÕâЩ¶¼Ó¦¸Ã³ÉΪ»¥ÁªÍøµÄ»ù´¡ÉèÊ©£¬¾ÍÏñä¯ÀÀÆ÷Ò»Ñù¡£ÏÖÔÚIM»¹Ã»ÓÐÒ»¸öºÜºÃµÄ½â¾ö·½°¸£¬XMPP²¢²»ÄܺܺõØ×öµ½ÒµÎñÂß¼­¶ÀÁ¢¿ªÀ´¡£´ÓIMµÄ±¾ÖÊÀ´¿´£¬IMÆäʵ¾ÍÊǽ«Ò»ÌõÏûÏ¢´ÓÒ»¸öµØ·½´«Êäµ½ÁíÍâÒ»¸öµØ·½£¬Õâ¸öºÍTCPºÜÏñ£¬ÎªÊ²Ã´²»ÊµÏÖÒ»¸ö¸ß¼¶µãµÄTCPЭÒéÁË£¬Ö»Êǽ«TCP/IPÀïÃæµÄIPµØÖ·»»³ÉÁËÒ»¸öÀàËÆXMPPµÄΨһID¶øÒÑ£¬ÆäËûµÄºÜ¶àϸ½Ú¶¼¿ÉÒÔÕÕ°áTCPЭÒé¡£ÓÐÁËÕâ¸öЭÒéÖ®ºó£¬½«ÒµÎñÂß¼­ÔÚÏÖÓÐHTTP serverµÄ»ù´¡ÉÏ×ö£¬ÀýÈç·¢ËÍÓïÒôºÍͼƬ¾ÍÏ൱ÓÚÉÏ´«Ò»¸öÎļþ£¬·þÎñÆ÷ÔÚ´¦ÀíÍêÕâ¸öÎļþºó¾Í·¢Ò»ÌõÌØÊâµÄIMÏûÏ¢¡£¿Í»§¶ËÊÕµ½Õâ¸öIMÏûÏ¢ºó£¬°´ÕÕIMÏûÏ¢ÀïÃæurlÈ¥HTTP serverÈ¡ÓïÒôÎļþºÍͼƬÎļþ¡£½«HTTP serverºÍIM server´ò֮ͨºó£¬¿ÉÒÔ×öºÜ¶àÊÂÇé¡£µ«½«Õâ¸öÁ½¸öserverºÏ²¢ÔÚÒ»¿é²¢²»ÊÇÒ»¸öºÃÊ£¬²»È»ÌÚѶҲ²»»áÓÐ2005ÄêµÄÕ½ÂÔתÐÍÁË¡£´ÓÏÖÔÚµÄÇé¿öÀ´¿´£¬Ó¦ÓóýÁËÓÎÏ·£¬¶¼Ã»Ôõô׬Ǯ£¬ÏÖÔÚÄܹ»³ÐÔØ×¬Ç®ÒµÎñµÄ»¹ÊÇÒÔwebΪÖ÷¡£IM²»¿ÉÒÔ׬Ǯ£¬µ«Ã»ÓÐÈ´ÊDz»Ðе쬾ÍÏñÒ»¸öµØ·½ÒªÖ¸»£¬²»ÐÞ·ÊDz»ÐеĵÀÀíÒ»Ñù¡£

 

ÉÏÃæËµµ½ÁËprotobuf £¬¾Í¼òµ¥½éÉÜÏ£º

          JSONÏàÐÅ´ó¼Ò¶¼ÖªµÀÊÇʲô¶«Î÷£¬Èç¹û²»ÖªµÀ£¬ÄǿɾÍÕæµÄOUTÁË£¬GOOGLEÒ»ÏÂÈ¥¡£ÕâÀï¾Í²»½éÉÜɶµÄÁË¡£

Protobuffer´ó¼Ò¹À¼Æ¾ÍºÜÉÙÌý˵ÁË£¬µ«Èç¹û˵µ½ÊÇGOOGLE¸ãµÄ£¬ÏàÐÅ´ó¼Ò¶¼»áÓÐÐËȤȥÊÔһϣ¬±Ï¾¹GOOGLE³ö¿Ú£¬¶àÊô¾«Æ·¡£

ProtobufferÊÇÒ»¸öÀàËÆJSONµÄÒ»¸ö´«ÊäЭÒ飬ÆäʵҲ²»ÄÜ˵ÊÇЭÒ飬ֻÊÇÒ»¸öÊý¾Ý´«ÊäµÄ¶«Î÷°ÕÁË¡£

ÄÇËü¸úJSONÓÐÊ²Ã´Çø±ðÄØ£¿

        ¿çÓïÑÔ£¬ÕâÊÇËüµÄÒ»¸öÓŵ㡣Ëü×Ô´øÁËÒ»¸ö±àÒëÆ÷£¬protoc£¬Ö»ÐèÒªÓÃËü½øÐбàÒ룬¿ÉÒÔ±àÒë³ÉJAVA¡¢python¡¢C++´úÂ룬ÔÝʱֻÓÐÕâÈý¸ö£¬ÆäËû¾ÍÔÝʱ²»ÒªÏëÁË£¬È»ºó¾Í¿ÉÒÔÖ±½ÓʹÓ㬲»ÐèÒªÔÙдÈÎºÎÆäËû´úÂë¡£Á¬½âÎöµÄÄÇЩ¶¼ÒѾ­×Ô´øÓеġ£JSONµ±È»Ò²ÊÇ¿çÓïÑԵ쬵«Õâ¸ö¿çÓïÑÔÊǽ¨Á¢ÔÚ±àд´úÂëµÄ»ù´¡ÉÏ¡£

 

İİÉè¼Æ£º

İİ·¢Õ¹¸Õ¿ªÊ¼ÓÉÓÚ¹æÄ£Ð¡£¬30-40WµÄÁ¬½ÓÊý£¨°üÀ¨Androidºǫ́³¤Á¬½ÓÓû§£©£¬Ò²Ê¹ÓÃXMPP£»ÓÉÓÚXMPPµÄȱµã£ºÁ÷Á¿´ó£¨»ùÓÚXML£©£¬²»¿É¿¿£¨Îª´«Í³¹Ì¶¨ÍøÂçÉè¼Æ£¬Ã»Óп¼ÂÇWIFI/2G/3G/µØÌú/µçÌݵȸ´ÔÓÍøÂ糡¾°£©£¬½»»¥¸´ÔÓ£¨µÇ½Ðè5-6´Î£¬ÓÈÆäÊÇTLSÎÕÊÖ£©£»XMPP¶ªÏûÏ¢µÄ¸ù±¾Ô­Òò£º·þÎñ¶ËºÍ¿Í»§¶Ë´¦ÓÚ“°ë¹Ø±Õ”״̬£¬¿Í»§¶Ë¼ÙÁ¬½Ó״̬£¬·þÎñ¶ËÓÐÊÕ²»µ½»ØÖ´£»Server¶ËÁ¬½Ó²ãºÍÂß¼­²ã´úÂëûÓнâñî·ÖÀ룬³£³£ÖØÆôµ¼Ö²»¿ÉÓã»

 

ÏûÏ¢ÖÐת£º

Á´½Ó²ã£º

Âß¼­²ã£º

ͨѶЭÒéÉè¼Æ£º

¸ßЧ£ºÈõÍøÂç¿ìËÙµÄÊÕ·¢

¿É¿¿£º²»»á¶ªÏûÏ¢

Ò×ÓÚÀ©Õ¹

ЭÒé¸ñʽ£º

RedisЭÒ飺

 

 

 

<

 

 

 

 

 

 

Êǰ¡·¢

 

 

 

 

 

 

 

 

 

°¢ÈøµÂ·¢°¢·¢a

 

 

 

 

ÓÅ»¯

   Á¬½Ó²ã£¨²Î¼ûͨѶ·þÎñÆ÷×é³É£©£ºÖ»×öÏûϢת·¢£¬ÔÊÐíËæÊ±ÖØÆô¸üУ¬Éè¼ÆÔ­Ôò¼òµ¥/Òì²½£»µ¥Ì¨Ñ¹²âÊÔÁ¬½ÓÊý70W£»ÏÖ×´£º1.5ÒÚÓû§£¬Ô»î5000W+£¬Á¬½ÓÊý1200W+£»

Âß¼­²ã£¨²Î¼ûͨѶ·þÎñÆ÷×é³É£©£ºÓû§»á»°ÑéÖ¤¼´µÇ½¡¢ÏûÏ¢´æÈ¡¡¢Òì²½¶ÓÁÐ

²ÉÓÃ˽ÓÐͨѶЭÒ飬Ŀ±ê£º¸ßЧ£¬ÈõÍøÂç¿ìËÙÊÕ·¢£»¿É¿¿£º²»»á¶ªÏûÏ¢£»Ò×ÓÚÀ©Õ¹£»²Î¿¼Ð­Òé¸ñʽ£ºREDISЭÒ飻²Î¼ûЭÒé¸ñʽ¡¢»ùÓÚ¶ÓÁеÄÏûϢЭÒé¡¢»ùÓÚ¶ÓÁеĽ»»¥¡¢»ùÓÚ°æ±¾ºÅµÄÏûϢЭÒé¡¢»ùÓÚ°æ±¾ºÅµÄ½»»¥µÈ£»

;ºËÐĵij¤Á¬½ÓÖ»ÓÃÓÚ´«ÊäÇáÁ¿µÄʵʱÊý¾Ý£¬Í¼Æ¬¡¢ÓïÒôµÈ¶¼¿ªÐµÄTCP»òHTTPÁ¬½Ó£»

Ò»ÇоÍÐ÷ºó£¬×îÖØÒªµÄ¾ÍÊÇ¼à¿Ø£¬Ð´Ò»¸öAPP²é¿´ËùÓеÄÔËӪ״̬£¬Ã¿Ìì¹Û²ì£»

ÈçºÎÑ¡Ôñ×îÓÅ·Ïߣ¬¼´ÖÇÄÜ·ÓÉ£»

¶þ¡¢ÖÇÄÜ·ÓÉ¡¢Á¬½Ó²ßÂÔ£º

¶à¶Ë¿Ú¡¢Ë«Ð­ÒéÖ§³Ö<

Ó¦¶ÔÒÆ¶¯Íø¹Ø´úÀíµÄ¶Ë¿ÚÏÞÖÆ

Ö§³ÖTCP¡¢HTTPÁ½ÖÖЭÒé

¸ù¾Ý±¸Ñ¡IPÁÐ±í½øÐв¢·¢²âËÙ£¨IP+¶Ë¿Ú+ЭÒ飩

ºó¶Ë¸ù¾ÝÖÕ¶ËÁ¬½ÓÇé¿ö£¬¶¨Ê±¸üÐÂÖն˵ı¸Ñ¡IPÁбí

ÖÕ¶ËÔÚÁ¬½Ó¿ÕÏÐʱÉϱ¨²âËÙÊý¾Ý£¬±ãÓÚºó¶Ë¾ö²ß

TCPЭÒ鲻ͨ£¬×Ô¶¯Çл»µ½http

ÓÅÏÈʹÓÃ×î½ü¿ÉÓÃIP

²¢·¢²âËÙ£¬¸ù¾ÝÖÕ¶ËËù´¦µÄλÖÃÏ·¢¶à×éIP¡¢PORT£¬Ö»ÓÃIP£¬²»ÓÃÓòÃû£¬ÊÖ»úÉϵÄDNS50%²»×¼

¸ºÔؾùºâÆ÷(LVS...)µÄÎÊÌâ– µ¥µãʧЧ

µ¥µãÐÔÄÜÆ¿¾±

¸ºÔؾùºâ´Ó¿Í»§¶Ë¿ªÊ¼×öÆð• ÓòÃû¸ºÔصÄÎÊÌâ

ÓòÃûϵͳ²»¿É¿¿– ¸üÐÂÑÓ³Ù´ó  

WNS£¨wireless network services£©

1½â¾öÒÆ¶¯»¥ÁªÍø¿ª·¢³£¼ûÎÊÌ⣺

ͨµÀ£ºÊý¾Ý½»»¥¡¢´óÊý¾ÝÉÏ´«¡¢push

ÍøÂçÁ¬½Ó£º´óÁ¿³¤Á´½Ó¹ÜÀí¡¢Á´½Ó²»ÉÏ¡¢Âý¡¢¶àµØ·Ö²¼

ÔËÓªÖ§³Å£ºº£Á¿¼à¿Ø¡¢¼ò»¯ÎÊÌⶨλ

µÇ¼&°²È«£ºµÇ¼¼øÈ¨¡¢ÆµÂÊ¿ØÖÆ

 

ÒÆ¶¯»¥ÁªÍøÌص㣺

1¡¢¸ßÑÓʱ£º  ÐŵÀ½¨Á¢ºÄʱ£¨ ¸ßRTT£©

2¡¢µÍ¿í´ø¡¢¸ß¶ª°ü

3¡¢¶àÔËÓªÉÌ£¨µçÐÅ£¬Òƶ¯£¬ÁªÍ¨µÈ£©

4¡¢¸´ÔÓÍøÂç  

    £­2G£¬3G£¬4G£¬wifi¡£cmwap£¬cmnet¡£¡£

    £­Íø¹ØÏÞÖÆ£ºÐ­Ò飬¶Ë¿Ú

5¡¢Óû§Á÷¶¯ÐÔ´ó£¬ÉÏÍø»·¾³¸´ÔÓ

WNS ÐÔÄÜÖ¸±ê£º

 

1¡¢¿ª·¢Ê±¼ä£ºÀúÊ·Ò»Äê°ë

2¡¢Á´½Ó³É¹¦ÂÊ£­99.9%

3¡¢¼«¶ËÍøÂç»·¾³Ï³ɹ¦ÂÊ£­ÓÉÓÚ³£¼ûapp

4¡¢crashÂÊ £­0.02%£¨crash´ÎÊý£¯µÇ¼Óû§Êý£©

 

΢Ðźǫ́ϵͳ¼Ü¹¹

±³¾°£º

A¡¢·Ö²¼Ê½ÎÊÌâÊÕÁ²

  ºǫ́Âß¼­Ä£¿éרעÂß¼­£¬¿ìËÙ¿ª·¢

¿ÉÄܶÁÈ¡µ½¹ýʱµÄÊý¾ÝÊǸöÍ´µã

ÐèÒª¿´µ½Ò»ÖµÄÊý¾Ý

B¡¢ÄÚ²¿¶¨Òå

  Êý¾ÝÓµÓÐÁ½¸öÒÔÉϵĸ±±¾

Èç¹û³É¹¦Ìá½»Á˱ä¸ü£¬ÄÇô²»»áÔÙ·µ»Ø¾ÉÊý¾Ý

ÍÆÑÝ£º

1Ôö¼ÓÒ»¸öÊý¾Ý

2 ÐòÁкŷ¢ÉúÆ÷£¬Æ«Ðò

 Ô¼Êø£ºÖ»ÄÜÓÐÒ»¸öclient²Ù×÷

clientÓнâ¾ö³åÍ»µÄÄÜÁ¦

ÎÊÌâ×ªÒÆ£ºclientÈçºÎ·Ö²¼£¿

3 Ð޸ļ¯ÈºÖÐÒ»¸öÖÆ¶¨µÄkeyµÄvalue

1£©¸²¸ÇËû

2£©¸ù¾ÝvalueµÄÄÚÈÝ×öÐÞ¸Ä

if value £½ 1 then value £º£½2 

ͨÓýⷨ£º

1£©paxosËã·¨

 ¹¤³ÌÄѶÈ

Ò»ÇпɿØ

 

·Ö²¼Ê½Ëã·¨Éè¼Æ£º

 2£©quorumËã·¨£¨2011£©

ÔÙµ¥¸ökeyÉÏÃæÔËËã

ÕæÊÇÏµÍ³Ô¼Êø

Ààpaxos·½°¸£¬¼ò»¯

Ϊÿ´Î±ä¸üÑ¡¾Ù£¨by key£©

Ëã·¨¹ý³Ì

 ÌáÒ飯±ä¸ü£¯Í¬²½£¯¹ã²¥

 

ϵͳ¼Ü¹¹

дÁ÷³Ì

 

Replication & Sharding 

 È¨ºâµã

  ×ÔÖΣ¬¸ºÔؾùºâ£¬À©É¢¿ØÖÆ

 replication£­>relation

 

ÈÝÔÖµÖÏû

ͬ³Ç£¨ÉϺ££©¶àÊýÅÉ´æ»î

ÈýÔ°Çø£¨¶ÀÁ¢¹©µç£¬¶ÀÁ¢£©

 

 

Sharding

 

Ò»×éKV6 Ϊһ¸öµ¥Î»

 

1¡¢È˹¤½×¶Î

 ¾Ö²¿À©ÈÝ£¬Ó°ÏìÊÕÁ²9

2¾ùÔÈ·Ö²¼ ÖÆ¶¨·Ö¶Îhash32 £¨string£©

 ·­±¶À©ÈÝ

 

3Ò»ÖÂÐÔ¹þÏ£

¾ßÌåʵÏÖ£¿

1¡¢ÒµÎñ²à¿ìËÙ¿ª·¢

 ´æ´¢ÐèÒªÌṩǿһÖÂÐÔ

·á¸»µÄÊý¾ÝÄ£ÐÍÖ§³Ö£¨½á¹¹»¯¡¢ÀàSQL£¯KV£©

Ìõ¼þ¶Á£¬Ìõ¼þд

 

2 ÒµÎñÔö³¤Ñ¸ËÙ£¬ÏµÍ³ÒªÄܹ»·½±ãµÄºáÏòÀ©ÈÝ

3É豸¹ÊÕÏ£¯¶Ìʱ½ÚµãʵЧ±ã³ÉΪ³£Ì¬£¬ÈÝÔÖ×Ô¶¯»¯£¬Ö÷±®¿ÉдÎÞÐèÈ˹¤½éÈë

4СÊý¾Ý

´æ´¢Ä£ÐÍ

 ´¿ÄÚ´æ

Bitcask

С±íϵͳ

LSM£­tree

 

 

С±íϵͳ

1¡¢½â¾ö·Å´óÎÊÌâ

2¡¢Êý¾Ý°´±ä¸ü¾Û¼¯´æ´¢

3¡¢Affected1

   ChangeTable

£¨1£«2+¡£¡£¡£¡££«n£­1+total£©£¯n

4¡¢·ÖÁÑÓëºÏ²¢

Êý¾ÝÁ÷¶¯

1¡¢×Ô¶¯»¯Ç¨ÒÆ

2¡¢½Úµãͬʱ×ö´úÀí

3¡¢ºÏ²¢´ÅÅÌio

 

ͬ²½Á÷Á¿

1¡¢Êý¾Ývs ²Ù×÷

2¡¢ÃݵÈ

3¡¢±£µ×²ßÂÔ

 

ͨÐŰüÁ¿

 1¡¢¶¯Ì¬ºÏ²¢

    100K qps

    200% £­10%

3¡¢È¨ºâÓë¹ÀËã

Éè¼ÆÒªµã

1¡¢ÍÌÍÂÁ¿

2¡¢Òì²½»¯

3¡¢¸´ÔÓ¶È

4¡¢libco

×Ô¶¯ÐÞ¸´ÏµÍ³

1¡¢²»ÒªÈôíÎóÀÛ¼Æ

2¡¢È«Á¿É¨Ãè

bitcask µÄһЩ±ä»¯

1¡¢ÄÚ´æÏÞÖÆ

2¡¢È«ÄÚ´æ

 

   
6452 ´Îä¯ÀÀ       32
Ïà¹ØÎÄÕÂ

ÆóÒµ¼Ü¹¹¡¢TOGAFÓëArchiMate¸ÅÀÀ
¼Ü¹¹Ê¦Ö®Â·-ÈçºÎ×öºÃÒµÎñ½¨Ä££¿
´óÐÍÍøÕ¾µçÉÌÍøÕ¾¼Ü¹¹°¸ÀýºÍ¼¼Êõ¼Ü¹¹µÄʾÀý
ÍêÕûµÄArchimateÊÓµãÖ¸ÄÏ£¨°üÀ¨Ê¾Àý£©
Ïà¹ØÎĵµ

Êý¾ÝÖÐ̨¼¼Êõ¼Ü¹¹·½·¨ÂÛÓëʵ¼ù
ÊÊÓÃArchiMate¡¢EA ºÍ iSpace½øÐÐÆóÒµ¼Ü¹¹½¨Ä£
ZachmanÆóÒµ¼Ü¹¹¿ò¼Ü¼ò½é
ÆóÒµ¼Ü¹¹ÈÃSOAÂ䵨
Ïà¹Ø¿Î³Ì

ÔÆÆ½Ì¨Óë΢·þÎñ¼Ü¹¹Éè¼Æ
ÖÐ̨սÂÔ¡¢ÖÐ̨½¨ÉèÓëÊý×ÖÉÌÒµ
ÒÚ¼¶Óû§¸ß²¢·¢¡¢¸ß¿ÉÓÃϵͳ¼Ü¹¹
¸ß¿ÉÓ÷ֲ¼Ê½¼Ü¹¹Éè¼ÆÓëʵ¼ù

×îл¼Æ»®
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢ 6-12[ÏÃÃÅ]
È˹¤ÖÇÄÜ.»úÆ÷ѧϰTensorFlow 6-22[Ö±²¥]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 6-30[±±¾©]
ǶÈëʽÈí¼þ¼Ü¹¹-¸ß¼¶Êµ¼ù 7-9[±±¾©]
Óû§ÌåÑé¡¢Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À 7-25[Î÷°²]
ͼÊý¾Ý¿âÓë֪ʶͼÆ× 8-23[±±¾©]

Ïà¹ØÎÄÕÂ


ר¼ÒÊӽǿ´ITÓë¼Ü¹¹
Èí¼þ¼Ü¹¹Éè¼Æ
ÃæÏò·þÎñÌåϵ¼Ü¹¹ºÍÒµÎñ×é¼þ
ÈËÈËÍøÒÆ¶¯¿ª·¢¼Ü¹¹
¼Ü¹¹¸¯»¯Ö®ÃÕ
̸ƽ̨¼´·þÎñPaaS

Ïà¹ØÅàѵ¿Î³Ì


ÃæÏòÓ¦Óõļܹ¹Éè¼ÆÊµ¼ù
µ¥Ôª²âÊÔ+ÖØ¹¹+Éè¼ÆÄ£Ê½
Èí¼þ¼Ü¹¹Ê¦¡ª¸ß¼¶Êµ¼ù
Èí¼þ¼Ü¹¹Éè¼Æ·½·¨¡¢°¸ÀýÓëʵ¼ù
ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ¡ª¸ß¼¶Êµ¼ù
SOAÌåϵ½á¹¹Êµ¼ù

³É¹¦°¸Àý


Èñ°²¿Æ¼¼ Èí¼þ¼Ü¹¹Éè¼Æ·½·¨
³É¶¼ ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ
ÉϺ£Æû³µ ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ
±±¾© Èí¼þ¼Ü¹¹Éè¼Æ
ÉϺ£ Èí¼þ¼Ü¹¹Éè¼Æ°¸ÀýÓëʵ¼ù
±±¾© ¼Ü¹¹Éè¼Æ·½·¨°¸ÀýÓëʵ¼ù
ÉîÛÚ ¼Ü¹¹Éè¼Æ·½·¨°¸ÀýÓëʵ¼ù
ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ¡ª¸ß¼¶Êµ¼ù