Ò»¸öÉç½»AppÐèʵÏֵŦÄÜ
Óû§¹Ø×¢µÄ³£¹æÉç½»¹¦ÄÜ¡¢»î¶¯¡¢µØÀíλÖá¢Ì½Ë÷¹¦ÄÜ¡¢ÐÂÏÊÊ¡¢ÊÓÆµÕÕÆ¬·ÖÏíµÈµÈ£¬ÐèÒªÌṩµÄ¹¦Äܲ»Ê¤Ã¶¾Ù£¬ËùÒÔ´Ó¼¼Êõ½Ç¶ÈÀ´Ëµ£¬¿ª·¢ÕßÐèÒª½â¾öµÄÎÊÌâÒ²ÊÇÒì³£¸´Ôӵġ£
µ±Ò»¿îÉç½»App·¢²¼Ö®³õ£¬Óû§·ÃÎÊÁ¿±È½ÏС£¬Ê¹ÓÃһ̨·þÎñÆ÷¾ÍÄܹ»Ö§³ÅÈ«²¿µÄ·ÃÎÊѹÁ¦ºÍÊý¾Ý´æ´¢ÐèÇ󣬵«ÊÇ»¥ÁªÍøÓ¦ÓþßÓв¡¶¾Ê½µÄ´«²¥Ìص㡣һ¿îAppºÜ¿ÉÄÜ»áÃæÁÙÒ»Ò¹±¬ºìµÄÏÖÏ󣬷ÃÎÊÁ¿ºÍÊý¾ÝÁ¿ÔÚ¶Ìʱ¼äÄÚ³ÊÏÖ±¬·¢Ê½Ôö³¤£¬Õâʱºò»áÃæÁٵľÖÃæÊÇÿÌìÉÏÒÚPV¡¢Êý°ÙÍòÐÂÔöÓû§ºÍ»îÔ¾Óû§¡¢Á÷Á¿ìÉýÖÁÿÃëÊý°ÙÕס£ÕâЩ¶ÔÓÚÒ»¸öÖ»²¿ÊðÁ˼òµ¥ºó¶Ë¼Ü¹¹µÄÓ¦ÓÃÀ´½²ÊÇÎÞ·¨Ö§³ÅµÄ£¬»áÖ±½Óµ¼Ö·þÎñÆ÷ÏìÓ¦»ºÂýÉõÖÁ³¬Ê±£¬ÒÔ¼°Ôڸ߷åÆÚʱ·þÎñ³ÊÏÖ̱»¾×´Ì¬£¬Ê¹µÃºó¶ËµÄ·þÎñÍêÈ«ÎÞ·¨Ê¹Óã¬Óû§ÌåÑé¼±¾çϽµ¡£±¾ÎĽ«»áͨ¹ýÒ»¸öÕæÊµµÄ°¸ÀýÀ´·ÖÏíÒ»¸öÉç½»Ó¦ÓÃÈçºÎ¹¹½¨Ò»¸ö¾ß±¸¸ßÉìËõÐԵĺó¶Ëϵͳ¡£
Éç½»App×î³õ²¿ÊðµÄºó¶Ë¼Ü¹¹½âÎö
Éç½»AppÔÚ×î³õµÄʱºò£¬ºó¶Ë¼Ü¹¹Ïà¶Ô±È½Ï¼òµ¥£¬×î³õÊDz¿ÊðÔÚ»ù´¡ÍøÂçÖ®ÉÏ¡£×îÇ°Ãæ·ÅÖÃһ̨°ó¶¨Á˹«ÍøIPµÄnginx·þÎñÆ÷×÷¸ºÔؾùºâ£¬ºóÃæ·ÅÖÃ3̨ӦÓ÷þÎñÆ÷À´¸ºÔð´¦ÀíËùÓÐÒµÎñÉϵÄÇëÇó£¬×îºóÃæ´î½¨Ò»Ì¨MySQL DatabaseÊý¾Ý¿â¡£

¹¹½¨Ë½ÓÐÍøÂç
Ëæ×ŲúÆ·µÄ²»¶Ïµü´ú¡¢Óû§ÊýµÄ³ÖÐøÔö³¤¡¢Êý¾ÝÁ¿µÄ»ýÀÛ£¬App¾ÍÐèÒª¸Ä½ø×Ô¼ºµÄºó¶Ë¼Ü¹¹£¬¼´¿ªÊ¼¹¹½¨Ë½ÓÐÍøÂç¡£Óû§¿ÉÒÔʹÓÃ˽ÓÐÍøÂç¹¹½¨×Ô¼ºµÄÍøÂçÍØÆË¡ª¡ª´´½¨Â·ÓÉÆ÷ºÍ˽ÓÐÍøÂ磬½«ºóÐø¼ÓÈëµÄÓÃÓÚÔËÐÐÄÚ²¿·þÎñµÄÖ÷»ú·ÅÖÃÔÚ˽ÓÃÍøÂçÖУ¬¿ÉÒÔÓÐЧµØºÍÔÆÆ½Ì¨ÆäËûÓû§Ö÷»ú£¬ÔÚÍøÂçÉÏʵÏÖ100%¶þ²ã¸ôÀë¡£Ö÷»ú¶ÔÍ⿪·ÅµÄ½ö½öÖ»ÓÐ80¶Ë¿Ú£¬ÕâÑùϵͳ°²È«ÐÔÉ϶àÁËÒ»²ã±£ÕÏ¡£

ÔÚÉÏÃæµÄ¼Ü¹¹Í¼ÖУ¬×îÇ°ÃæµÄÊÇ·À»ðǽ£¬ºóÃæ½Ó¸ºÔؾùºâÆ÷£¬È»ºó½Ó·ÓÉÆ÷ºÍ˽ÓÐÍøÂ磬ºÜ¶à»¥ÁªÍøÓ¦Óö¼´æÔÚ¶Á¶àдÉÙµÄÇé¿ö£¬Õâ¸ö±ÈÀýÓÐʱ¿ÉÒÔ´ïµ½8:2£¬ËùÒÔÎÒÃÇÊ×ÏÈͨ¹ýÒýÈ뻺´æ·Ö̯Êý¾Ý¿â¶ÁѹÁ¦¡£Æä´Î£¬ÒýÈë¸ºÔØ¾ùºâÆ÷£¬Ìæ»»×î³õ¼Ü¹¹ÖеÄnginx proxy£¬¸ºÔð¾ùºâÆ÷ÔÚÕâÀïÆäÖ÷ÒªÓÃÓÚ·Ö·¢ÇëÇ󵽺ó¶Ë¶ą̀ӦÓ÷þÎñÆ÷£¬£¬µ±ÆäÖÐһ̨ӦÓ÷þÎñÆ÷¹Òµô£¬¸ºÔؾùºâÆ÷¿ÉÒÔ½øÐÐ×Ô¶¯¸ôÀë¡£
ÒµÎñ·ÖÇøÓëÀ©Õ¹
AppËæ×Ų¢·¢·ÃÎÊÁ¿ºÍÊý¾ÝÁ¿²»¶ÏÔö´ó£¬Ê×ÏÈÏëµ½ºáÏòÀ©ÈÝWeb·þÎñ¡£Ë®Æ½À©ÈÝÒµÎñ·þÎñÆ÷µÄǰÌáÊÇÒª±£Ö¤Ã¿Ì¨·þÎñÆ÷¶¼ÊÇÎÞ״̬µÄ£¬½«sessionÐÅϢϷŵ½»º´æ»òÊý¾Ý¿âÖд洢£¬±£Ö¤ÇëÇ󱻸ºÔص½ÈκÎһ̨·þÎñÆ÷¿ÉÒÔÕý³£´¦Àí¡£

´ÓÉÏͼÖп´µ½£¬ÔÚǰһ²½¡¸¹¹½¨Ë½ÓÐÍøÂ硹֮ºó£¬Ôö¼ÓÁËÒ»¸öеÄ˽ÓÐÍøÂçÀ´À©Õ¹ÍøÂç²ã£¬ÕâÀï¿ÉÒÔÀûÓÃ×ÔÓÐÓ³Ïñ¹¦ÄÜ£¬½«ÔÓеÄÓ¦Ó÷þÎñÆ÷ÖÆ×÷³ÉÄ£°å£¬ºóÐø¾Í¿ÉÒÔ»ùÓÚÕâ¸öÄ£°å¿ìËÙÆô¶¯ÐµÄÖ÷»ú¡£ÁíÍâ¿ÉÒÔÀûÓÃAuto-scaling£¨×Ô¶¯ºáÏòÀ©Õ¹£©¹¦ÄÜ£¬¸ù¾Ýºó¶Ë·þÎñÆ÷µÄ¸ºÔØÇëÇ󣬶¯Ì¬µ÷Õû·þÎñÆ÷µÄÊýÁ¿¡£
Ò»¸öÉç½»Ó¦Óõĺó¶Ë»áÌṩºÜ¶à·þÎñÇëÇó½Ó¿Ú£¬±ÈÈçÌí¼ÓºÃÓÑ¡¢Ë¢ÐÂÐÂÏÊÊ¡¢ä¯ÀÀÒ³ÃæµÈ£¬¿ÉÒÔͨ¹ýÈÕÖ¾·ÖÎöÿһ¸ö½Ó¿ÚµÄºÄʱ£¬½«ºÄʱ³¤µ«·ÇÖØÒªÒµÎñµÄÇëÇó·Öµ½µ¥¶ÀµÄWeb·þÎñÆ÷ÉϽøÐд¦Àí£¬´Ó¶ø¸øÖ÷Web·þÎñÆ÷Áô³ö¸ü¶à×ÊÔ´È¥´¦Àí¹Ø¼üÒµÎñµÄÇëÇó¡£
ÃæÏò·þÎñµÄ¼Ü¹¹
Ëæ×ŲúÆ·¹¦ÄܵIJ»¶Ïµü´ú£¬ÒµÎñ´úÂë»áÔ½À´Ô½¸´ÔÓ£¬³öÏÖ¹ÊÕϵĿÉÄÜÐÔÒ²ÔڼӴ󣬵±Ò»¸ö¾Ö²¿¹¦ÄܳöÏÖÎÊÌâʱ£¬¶¼»áÓ°ÏìÕû¸ö·þÎñµÄ¿ÉÓÃÐÔ¡£´Ëʱ¿ÉÒÔ¹¹½¨ÃæÏò·þÎñµÄ¼Ü¹¹£¬½«Ò»¸öÍêÕûÇÒÅÓ´óµÄ·þÎñ²ð·ÖΪһ¸ö¸öµÄ×Ó·þÎñ£¬·þÎñÖ®¼äͨ¹ý½Ó¿Ú½»»¥¡£ÈçÏÂͼËùʾ£º

Éç½»AppµÄ·þÎñ±»²ð·Ö³ÉÁËËĸö×Ó·þÎñ¡ª¡ªÐÂÏÊÊ£¨News Feed£©¡¢Óû§×ÊÁÏ£¨Profile£©¡¢¹ã¸æ£¨Ads£©ºÍ̽Ë÷£¨Explore£©£¬²»Í¬µÄ·þÎñÖ®¼äͨ¹ýÏûϢͨÐÅ¿ò¼Ü£¨ÀýÈçZeroMQ£©À´½øÐн»»¥¡£°ÑÒ»¸ö´ó·þÎñ²ð·ÖΪ¼¸¸öСµÄ×Ó·þÎñµÄºÃ´¦²»ÑÔ¶øÓ÷£¬Ö÷ÒªÊÇ£º
¹ÊÕϸôÀ룺×Ó·þÎñ³öÏÖ¹ÊÕϲ»»áÓ°ÏìÈ«¾Ö£¬±ÈÈç¹ã¸æÒµÎñ³öÏÖÎÊÌâ²¢²»»áÈÃÕû¸öApp²»ÄÜʹÓã¬ÒÀÈ»¿ÉÒԲ鿴ÐÂÏÊʵȣ»
¶ÀÁ¢À©Õ¹£ºÃ¿Ò»¸ö±»²ð·Ö³öµÄ×Ó·þÎñÓÐ×Ų»Í¬µÄ·ÃÎÊѹÁ¦£¬±ÈÈçÐÂÏÊʵĵ÷ÓÃÏà±ÈһЩ¶þ¼¶Ò³ÃæµÄÓû§×ÊÁÏÒª¸ßºÜ¶à£¬ËùÒÔǰÕ߻ᱻ·ÖÅä¸ü¶àµÄWeb ·þÎñÆ÷£»
¶ÀÁ¢²¿Êð£ºÒ»¸ö´ó·þÎñµÄÅäÖÃÒò¹¦Äܹý¶à»áÒì³£¸´ÔÓ£¬Ò»µ©±»²ð·Ö¾Í¿É¸ù¾Ý²»Í¬µÄÌØÐÔÐèÇó¶¨ÖÆÅäÖÃÏ´Ó¶øÌá¸ß¿É¹ÜÀíÐÔ£»
ÍŶÓÐ×÷¿ª·¢£º¿ª·¢Õß¶¼ÓÐ×Å×Ô¼º¾«Í¨µÄ·½Ïò£¬´Ó¶øÌá¸ß¿ª·¢Ð§ÂÊ£»
³éÏó³öÊý¾Ý·ÃÎÊ£ºÔÚºóÐø½øÐÐÊý¾Ý²ãÃæ£¨Êý¾Ý¿â¡¢»º´æ£©À©Õ¹Ê±£¬¿Éͨ¹ýÐÞ¸Ä×Ó·þÎñµÄData Service£¬ÊµÏÖ¶ÔϲãÊý¾ÝµÄ͸Ã÷¡£
Êý¾Ý¿âReplication
ÒµÎñÔö³¤Ò²»á¸øÊý¾Ý¿â´øÀ´Öî¶àÎÊÌ⣬µ±×î³õ¼Ü¹¹Öе¥Ì¨Êý¾Ý¿â£¨Êý¾Ý¿âͬʱÌṩ¶ÁºÍд£©²»×ãÒÑÖ§³ÅÆðApp·ÃÎÊѹÁ¦Ê±£¬Ê×ÏÈÐèÒª×öÊý¾Ý¸±±¾Replication¡£ÊÐÃæÉϳ£¼ûµÄMySQL¡¢MongoDBµÈÊý¾Ý¿â¶¼ÌṩReplication¹¦ÄÜ£¬ÒÔMySQLΪÀý£¬´Ó¸ß²ãÀ´¿´£¬Replication¿É·Ö³ÉÈý²½£º
- Master½«¸Ä±ä¼Ç¼µ½¶þ½øÖÆÈÕÖ¾£¨binary log£©ÖУ¨ÕâЩ¼Ç¼½Ð×ö¶þ½øÖÆÈÕ־ʼþ£¬binary log events£©£»
- Slave½«MasterµÄbinary log events¿½±´µ½ËüµÄÖмÌÈÕÖ¾£¨relay log£©£»
- SlaveÖØ×öÖмÌÈÕÖ¾ÖеÄʼþ£¬½«¸Ä±ä·´Ó³Ëü×Ô¼ºµÄÊý¾Ý¡£
¾ßÌåʵÏָùý³ÌµÄµÚÒ»²¿·Ö¾ÍÊÇMaster¼Ç¼¶þ½øÖÆÈÕÖ¾¡£ÔÚÿ¸öÊÂÎñ¸üÐÂÊý¾ÝÍê³É֮ǰ£¬MasterÔÚ¶þ½øÖÆÈÕÖ¾¼Ç¼ÕâЩ¸Ä±ä¡£MySQL½«ÊÂÎñ´®ÐеÄдÈë¶þ½øÖÆÈÕÖ¾£¬¼´Ê¹ÊÂÎñÖеÄÓï¾ä¶¼Êǽ»²æÖ´Ðеġ£ÔÚʼþдÈë¶þ½øÖÆÈÕÖ¾Íê³Éºó£¬Master֪ͨ´æ´¢ÒýÇæÌá½»ÊÂÎñ¡£
ÏÂÒ»²½¾ÍÊÇSlave½«MasterµÄbinary log¿½±´µ½Ëü×Ô¼ºµÄÖмÌÈÕÖ¾¡£Ê×ÏÈ£¬Slave¿ªÊ¼Ò»¸ö¹¤×÷Ï̡߳ª¡ªI/OÏ̡߳£I/OÏß³ÌÔÚMasterÉÏ´ò¿ªÒ»¸öÆÕͨµÄÁ¬½Ó£¬È»ºó¿ªÊ¼binlog dump process¡£Binlog dump process´ÓMasterµÄ¶þ½øÖÆÈÕÖ¾ÖжÁȡʼþ£¬Èç¹ûÒѾ¸úÉÏMaster£¬Ëü»á˯Ãß²¢µÈ´ýMaster²úÉúеÄʼþ¡£I/OÏ߳̽«ÕâЩʼþдÈëÖмÌÈÕÖ¾¡£
SQL slave thread´¦Àí¸Ã¹ý³ÌµÄ×îºóÒ»²½¡£SQLÏ̴߳ÓÖмÌÈÕÖ¾¶Áȡʼþ£¬¸üÐÂSlaveµÄÊý¾Ý£¬Ê¹ÆäÓëMasterÖеÄÊý¾ÝÒ»Ö¡£Ö»Òª¸ÃÏß³ÌÓëI/OÏ̱߳£³ÖÒ»Ö£¬ÖмÌÈÕ־ͨ³£»áλÓÚOSµÄ»º´æÖУ¬ËùÒÔÖмÌÈÕÖ¾µÄ¿ªÏúºÜС¡£
´ËÍ⣬ÔÚMasterÖÐÒ²ÓÐÒ»¸ö¹¤×÷Ị̈߳ººÍÆäËüMySQLµÄÁ¬½ÓÒ»Ñù£¬SlaveÔÚMasterÖдò¿ªÒ»¸öÁ¬½ÓÒ²»áʹµÃMaster¿ªÊ¼Ò»¸öÏ̡߳£¸´Öƹý³ÌÓÐÒ»¸öºÜÖØÒªµÄÏÞÖÆ¡ª¡ª¸´ÖÆÔÚSlaveÉÏÊÇ´®Ðл¯µÄ£¬Ò²¾ÍÊÇ˵MasterÉϵIJ¢ÐиüвÙ×÷²»ÄÜÔÚSlaveÉϲ¢ÐвÙ×÷¡£
¶ÔÓÚÔÆ¼ÆËãʹÓÃÕßÀ´Ëµ£¬Ö»ÐèÒªÖªµÀÊý¾Ý¿âµÄIPºÍ¶Ë¿Ú¼´¿É½øÐÐʹÓ᣾ßÌåʵÏÖ¼ûÏÂͼ£º

µÚÒ»²½Òª×öµÄÊÇÀ©³äSlave£¬½«µ¥»úMaster±ä³ÉMaster+3̨SlaveµÄ¼Ü¹¹£¬¶øÔÚÆäÖеÄSlaveÉϴһ¸öÄÚÍøµÄ¸ºÔؾùºâÆ÷£¨Load Balancer£©£¬¶ÔÓÚ×îÉϲãµÄData ServiceÀ´Ëµ£¬Ö»ÒªÅäÖÃÒ»¸öMySQL Master½ÚµãºÍÒ»¸öLB½Úµã¼´¿É£¬½ñºóÒòÒµÎñ±ä»¯½øÐÐÔö¼õSlave¶ÔÉϲãÀ´ËµÍêÈ«ÊÇ͸Ã÷µÄ¡£
´Ë×ö·¨¿ÉÒÔ´øÀ´Á½¸öºÃ´¦£¬µÚÒ»ÊÇÌá¸ß¿ÉÓÃÐÔ£¬ÈôÊÇһ̨Master³öÏÖ´íÎó£¬Ôò¿ÉÒÔÌáÉýijһ̨µÄSlave×÷ΪMaster¼ÌÐøÌṩ·þÎñ£¬´Ó¶ø±£Ö¤Êý¾Ý¿ÉÓÃÐÔ£»µÚ¶þ¸öÊÇ·Ö̯¶ÁѹÁ¦£¬¶ÔÓÚÒ»¸öÉç½»AppÀ´Ëµ£¬¶Áд·ÖÀëÊÇÔÚÊý¾Ý²ãÓÅ»¯µÚÒ»²½Òª×öµÄÊÂÇ飬ÀûÓÃÉÏÃæµÄ¼Ü¹¹¿ÉÒÔºÜÇáÒ×µØ×öµ½½«¶ÁµÄÇëÇó·Öµ£µ½MySQL SlaveÉϽøÐвéѯ£¬¶øÐ´Áô¸øMaster¡£µ«ÊǶÁд·ÖÀëʱ»áÓÐÊý¾Ý¿âÒ»ÖÂÐÔµÄÎÊÌ⣬¼´ÔÚÊý¾ÝдÖÁMasterÖ®ºóͬ²½µ½SlaveÓÐÒ»¸öÑÓ³ÙµÄʱ¼ä£¬¶ÔÓÚÉç½»Ó¦ÓÃÀ´Ëµ£¬ÕâÊÇ¿ÉÒÔ½ÓÊܵģ¬Ö»Òª±£Ö¤Êý¾ÝµÄ×îÖÕÒ»ÖÂÐÔ¼´¿É¡£
ÔÚÉÏͼµÄ×îÏÂÃæÓÐÒ»¸öSnapshot£¬¼´¶¨ÆÚ¶ÔÊý¾Ý½øÐÐÀ䱸·Ý£¬ÕⲻͬÓÚµ¥´¿¶ÔMySQL Master½øÐи´ÖƵÄSlave£¬ÒòΪÏßÉÏbug»òÎó²Ù×÷»áɾ³ýMasterÉϵÄÊý¾Ý£¬Õâʱ»áÁ¢¼´Í¬²½µ½slaveÉÏÔì³ÉÊý¾Ý¶ªÊ§ÕâʱÀ䱸·ÝSnapshot¾Í»áÆðµ½Êý¾Ý±£»¤×÷Óá£
ÔËÐйý³ÌÖп϶¨ÐèÒª¼à¿Ø£¬Óû§¿ÉÒÔÀûÓÃLinuxÉϵŤ¾ß½øÐÐͳ¼Æ·ÖÎötop / iotop / df / free / netstatµÈ¹¤¾ßÈ¥¼à¿ØÏµÍ³ÀïµÄ¸÷¸ö·þÎñºÍ×é¼þÊÇ·ñÕý³£ÔËÐУ¬ÒÔ¼°Í¨¹ýÈÕÖ¾µÄÐÅÏ¢£¨http access log / application log / database slow log £©·ÖÎö¸÷¸ö·þÎñµÄÐÔÄÜÆ¿¾±¡£
Êý¾Ý·ÖÇøÓëÀ©ÈÝ
ÏÂÒ»²½ÒµÎñµÄµ÷ÕûÒª½øÐÐÊý¾Ý¿âµÄ·ÖÇøºÍÀ©ÈÝ¡£µÚÒ»£¬¹¹½¨»º´æ¼¯Èº£¬ÔÚ¿ªÊ¼µÄ¼Ü¹¹ÖÐÒýÓÃÁËMemcached»º´æ£¬Êǵ¥»úÊý¾Ý¿â»º´æ¡£µ±Êý¾ÝÁ¿Ôö³¤£¬£¬ÐèÒª°ÑÊý¾Ý·ÖÉ¢µ½¶ą̀»º´æ·þÎñÆ÷ÉÏ£¬³£ÓõÄÊÇHashRingËã·¨£¬ºÃ´¦ÔÚÓÚ²»¹ÜÊÇÌí¼Ó½áµã»¹ÊÇɾ³ý½áµãʱ£¬Ö»»áʹµÃÉÙ²¿·ÖÊý¾ÝʧЧ¡£»¹¿ÉÒÔÒýÓÃNoSQLÊý¾Ý¿â£¬ÕâÀïÓõ½ÁËRedis°ÑÉç½»Êý¾ÝÀï¶ÔÓÚ¹ØÏµÒªÇó²»Ç¿µ«¶Ô²éѯЧÂÊÒªÇóºÜ¸ßµÄÊý¾Ý´ÓMySQLÀïÄõ½RedisÀï´æ¡£RedisÓÈÆäÊʺϴ洢ÁбíÀàÊý¾Ý£¬±ÈÈçºÃÓѹØÏµÁÐ±í¡¢ÅÅÐаñÊý¾ÝµÈ¡£

³ý´ËÒÔÍâ¿ÉÒÔ¿¼ÂÇ×öÊý¾Ý·ÖÇø¶ÔÓÚMySQLµÚÒ»²½ÊÇ´¹Ö±²ð·Ö£¬°ÑÔÀ´µ¥¶ÀµÄÊý¾Ý¿â°´ÕÕ¹¦ÄÜÄ£¿é·Ö±ð²ð·Ö³É£ººÃÓÑÐÂÏÊÊ¡¢Óû§×ÊÁÏ¡¢¹ã¸æÊý¾ÝÒÔ¼°Ì½Ë÷Êý¾Ý¡£¶ÔÓÚRedisҲͬÑù£¬½«ÔÀ´µÄµ¥Ì¨Redis°´ÕÕ¹¦ÄÜÄ£¿é²ð³ÉËĸö£¬·Ö±ðΪ£ºÅÅÐаñÊý¾Ý¡¢ºÃÓÑ¡¢¹ã¸æÊý¾Ý¡¢Ì½Ë÷Êý¾Ý¡£
½ÓÏÂÀ´»áÓöµ½µÄÆ¿¾±Êǵ¥±í¹ý´óµÄÎÊÌ⣬ÕâʱºòÎÒÃÇÐèÒª×öˮƽ²ð·Ö¡ª¡ª°ÑÒ»¸ö±í²ð·Ö³É¶à¸ö±í£¬ÐèҪѡȡһ¸ö·ÖÇøKey£¬±ÈÈç¶ÔÓû§±í×ö²ð·Öʱ£¬Í¨³£Ñ¡È¡User ID¡£·ÖÇøkeyµÄÑ¡ÔñÖ÷ÒªÊÇ¿´ËùÓеIJéѯÓï¾äƵ·±Ê¹ÓÃÄĸö²éѯ×ֶΣ¬¾ÍÑ¡ÔñÄǸö×Ö¶Î×÷Ϊ·ÖÇøkeyÕâÑùÄܱ£Ö¤´ó²¿·ÖµÄ²éѯ¿ÉÒÔÂäÔÚµ¥¸öÊý¾Ý±íÉÏ£¬ÉÙÁ¿Ã»Óдø·ÖÇøKeyµÄ²éѯÓï¾ä£¬¿ÉÄÜÒª±éÀúÒ»±éËùÓÐÇзֺóµÄÊý¾Ý±í¡£
¹¹½¨ÍêÕûµÄ²âÊÔ»·¾³
¹¹½¨ÍêÕû²âÊÔ·þÎñÆ÷ʱÐèÒª´´½¨ÐµÄ·ÓÉÆ÷ºÍ˽ÓÐÍøÂç¡¢¶ÀÁ¢µÄÍøÂç»·¾³ºÍ´ø¿í×ÊÔ´¡¢ÄÚÍøGREËíµÀ´òͨ·ÓÉÆ÷¡¢VPN²¦ÈëÍøÂçºÍSSHÃÜÔ¿¹ÜÀí¡£

Õâ¸ö¹ý³ÌÄã¿ÉÒÔ´´½¨Ò»¸ö°üº¬ËùÓÐϵͳ·þÎñµÄall-in-oneµÄ»·¾³£¬½«ÆäÖÆ×÷³É×ÔÓÐÓ³Ïñ¡£Èç¹ûºóÐøÄãµÄÍŶÓÀ´ÐµÄÈË£¬ÐèÒª¶ÀÁ¢µÄÍêÕû¿ª·¢»·¾³£¬Ö»Ðè»ùÓÚ×ÔÓоµÏñ¿ìËÙ´´½¨Ö÷»ú¼´¿É£»»¹¿ÉÒÔÀûÓÃUser Data¶¨ÖÆ»¯¹¦ÄÜ£¬ÔÚÖ÷»úÆô¶¯Ö´ÐÐÒ»¶ÎÄãÉÏ´«µÄ½Å±¾£¬À´³õʼ»¯»·¾³¡£Äã¿ÉÒÔ½«ÕâÁ½¸ö¹¦ÄܽáºÏÆðÀ´Ó㬰ÑËùÓÐÄãËùÐèÒªÓõķþÎñÈ«²¿°²×°²¿ÊðÍê±Ïºó×ö³ÉÓ³Ïñ£¬²¢ÓÃUser Data½Å±¾´Ó´úÂë¿âÀï¸üдúÂë¡£ÒòΪ´úÂëµÄ±ä¶¯Ïà¶ÔÓÚ»·¾³µÄ¸üиü¼ÓƵ·±£¬²»¿ÉÄÜÿ´Î´úÂëµÄ¸üж¼Òª¹¹½¨Ò»¸öеÄ×ÔÓоµÏñ¡£Í¨¹ýÕâÖÖ·½Ê½¹¹½¨ÆðÒ»¸öÍêÕûµÄ²âÊÔ·þÎñÆ÷£¬ÈÃÿ¸ö¹¤³Ìʦ¶¼¿ÉÒÔÓÐ×Ô¼º¶ÀÁ¢µÄ²âÊÔ·þÎñÆ÷¡£
ÔÚApp·¢²¼ÉÏÏßʱÐèÒªÁ¬µ½ÏßÉÏ»·¾³Ôõô°ì£¿ÕâÁ½¸öÍøÂç±¾ÉíÍêÈ«100%¸ôÀ룬¿ÉÀûÓÃGREËíµÀµÄ¹¦ÄÜ£¬°ÑÁ½¸ö·ÓÉÆ÷´òͨ£¬ÊµÏÖ²âÊÔ»·¾³ÍøÂçºÍÏßÉÏÉú²ú»·¾³ÍøÂçµÄÍêÈ«Á¬Í¨¡£
¶à»ú·¿²¿ÊðÓë»ìºÏ×é
ΪÁËÈúó¶Ë¼Ü¹¹¸ü¿É¿¿ºÍÒµÎñ¸üÎȶ¨£¬¾ÍÐèҪʵʩ¶à»ú·¿²¿ÊðºÍ»ìºÏ×éÍø¡£¾ßÌåÔÒòÓÐÒÔÏÂÈýµã£º
ÒìµØÈÝÔÖ£ºÔÚ¸´ÔÓµÄÍøÂç»·¾³Ï£¬»ú·¿¿ÉÄÜ»á³öÏÖÍøÂç×´¿ö£¬µ¼ÖÂһЩ±È½Ï¹Ø¼üÐÔµÄÒµÎñµÄ¿ÉÓÃÐÔ½µµÍ£¬±¸·Ý»ú·¿ºó¿É±£Ö¤·þÎñ²»»á³öÏÖÃ÷ÏԵij¤Ê±¼äÖжϣ»
¸ºÔØ·Ö̯£ºµ¥¶ÀÒ»¸ö»ú·¿¿ÉÄܲ»×ãÒÔÖ§³ÅÈ«²¿µÄÇëÇó£¬Õâʱ¿ÉÒÔ°ÑÒ»²¿·ÖµÄÇëÇóѹÁ¦·Öµ£µ½ÁíÒ»¸ö»ú·¿£»
¼ÓËÙÇøÓò·ÃÎÊ£ºÔÚ¹úÄÚÍøÂç»·¾³Ï£¬ÄÏ·½ºÍ±±·½Ï໥֮¼äÍøÂç·ÃÎÊʱÓнϸߵÄÑÓ³Ù¡£Í¨¹ý×ö¶à»ú·¿²¿ÊðʵÏÖ¼ÓËÙÇøÓòÓû§µÄ·ÃÎÊ¡£

ÈçÉÏËùʾ£¬ÓÐÈý¸ö»ú·¿£¬ÖмäÊÇQingCloud±±¾©1Çø»ú·¿£¬¸ºÔðÖ÷ÓªÒµÎñ¡£×ó±ßÊÇÑÇÌ«1Çø»ú·¿£¬Ö÷Òª·þÎñÑÇÌ«ºÍº£ÍâµÄ¿Í»§¡£ÕâÁ½¸ö»ú·¿¶¼Ê¹ÓÃÁËQingCloud˽ÓÐÍøÂ粿Êð£¬ÀûÓ÷ÓÉÆ÷£¬Í¨¹ýGREËíµÀ»òÕßIPsec¼ÓÃÜËíµÀµÄ·½Ê½½øÐл¥Í¨¡£Èç¹û¶ÔÊý¾Ý´«Êä¹ý³ÌµÄ°²È«ÐÔÒªÇó½Ï¸ß£¬¿ÉÒÔÓÃIPsecµÄ·½Ê½°ÑÁ½¸ö»ú·¿Ï໥´òͨ£¬ÕâʱµÄ·ÃÎÊÖ»ÄÜͨ¹ýÄÚÍøIP½øÐзÃÎÊ¡£ÓÒ±ßÊǰ칫ÊÒ»ú·¿£¬¹¤³ÌʦÔÚÕâ¸ö»·¾³Ï½øÐпª·¢¡£
ÔÚʵÏÖ»ìºÏ×éÍøÊ±£¬Ö»Òª»ú·¿Â·ÓÉÆ÷»òÕßÍø¿íÉ豸֧³Ö±ê×¼µÄGREËíµÀÐÒé¡¢IPËíµÀÐÒ飬¾Í¿ÉÒÔ½«´«Í³ÎïÀíÊÀ½çµÄ»ú·¿Óë·ÓÉÆ÷Á¬Í¨£¬²¢×îÖÕ´òͨ¹«ÓÐÔÆ»·¾³¡£¶à»ú·¿²¿Êðͨ³£¼ûµÄ·½°¸ÓÐÕâЩ£º
ÒìµØÀ䱸·Ý
°ÑÖ÷»ú·¿È«Ì×ÒµÎñÔÚÒìµØÖØÐ¹¹½¨Ò»±é£¬ÇÒ²»ÐèÒªÌṩÏßÉÏ·þÎñ£¬Ö»ÓÐÔÚÖ÷»ú·¿³öÏÖ¹ÊÕϵÄʱºò²ÅÇл»µ½±¸Óûú·¿£¬²¿ÊðÏà¶ÔÒª¼òµ¥Ò»Ð©¡£µ«ÓÐÁ½·½ÃæÈ±µã£¬Ò»Êdzɱ¾±È½Ï¸ß£¬ÐèҪ˫±¶µÄ·ÑÓÃÇÒÖ»ÊÇÓÃÀ´×öÀ䱸·Ý£¬Æ½Ê±ÍêÈ«Óò»ÉÏ£»ÁíÍ⣬µ±Ö÷»ú·¿Í»È»¹Òµôʱ£¬±¸Óûú·¿ÔÙÆð¶¯ÆðÀ´Ìṩ·þÎñ£¬Êý¾ÝÐèÒªÔ¤ÈÈ£¬ÕâÊǷdz£»ºÂýµÄ¹ý³Ì£¬¿ÉÄÜ»á³öÏÖ·þÎñÏìÓ¦Âý£¬ÉõÖÁ²»ÄÜÕý³£Ìṩ·þÎñ¡£
ÒìµØ¶à»î
´ÓÒ×µ½ÄÑÓÐÈý½×¶Î£ºµÚÒ»£¬·´Ïò´úÀí£¬Óû§ÇëÇóµ½µÚ¶þ¸ö»ú·¿£¬µ«²»×öÈκδ¦Àí±»×ªÏòµÚÒ»¸ö»ú·¿ÕâÑù»á¶ÔÁ½µØµÄÑÓʱÓÐÒ»¶¨µÄÒªÇó¡£µÚ¶þ£¬ÔÚµÚ¶þ¸ö»ú·¿²¿ÊðÓ¦Ó÷þÎñÆ÷ºÍ»º´æ£¬´ó²¿·ÖµÄÊý¾ÝÇëÇó¿ÉÒÔ´Ó»º´æÖжÁÈ¡£¬²»ÓýøÐпç»ú·¿ÇëÇ󣬵«µ±»º´æÊ§Ð§Ê±£¬ÒÀÈ»Âäµ½µÚÒ»¸ö»ú·¿µÄÊý¾Ý¿âÈ¥²éѯ¡£ËùÒÔ£¬Õâ¸ö·½Ê½²»Ì«³¹µ×£»µÚÈý£¬È«Ì×·þÎñµÄ²¿Ê𣬰üÀ¨HTTP·þÎñÆ÷¡¢ÒµÎñ·þÎñÆ÷¡¢»º´æºÍÊý¾Ý¿âµÄ slave¡£´Ë·½Ê½Ê¹µÃ½øÈëµÚ¶þ¸ö»ú·¿µÄÇëÇó£¬Ö»ÐèÒªÔÚ»ú·¿ÄھͿÉÒÔÍê³ÉÇëÇó´¦Àí£¬Ëٶȸü¿ì£¬µ«»áÓöµ½Êý¾ÝÒ»ÖÂÐԺͻº´æÒ»ÖÂÐÔµÄÎÊÌ⣬Õë¶ÔÕâµãÒ²»áÓÐһЩ½â¾ö·½·¨¡£³ýÁËÊý¾Ýͬ²½¹ý³ÌÖеIJ»Ò»ÖÂÎÊÌ⣬»¹ÐèÒªÃæ¶Ô»º´æ¡£
ºÃµÄϵͳ¼Ü¹¹²»ÊÇÉè¼Æ³öÀ´µÄ£¬¶øÊǽø»¯¶øÀ´µÄ
¹¹½¨Îȶ¨¿É¿¿µÄÒµÎñϵͳÐèҪעÒâÒÔÏÂÕâЩ£º
·ÖÎöÓû§ÐÐΪ£¬Àí½âÄãµÄÒµÎñ£¬ÈçÉç½»¡¢µçÉÌ¡¢ÊÓÆµ£»
²»Í¬µÄÒµÎñÓв»Í¬µÄÐÐÒµÊôÐÔºÍÌØµã£¬¶ÔÓÚÉç½»À´½²£¬±È½ÏµäÐ͵ÄÌØµãÊÇÊý¾ÝÁ¿ÅÓ´ó¡¢Êý¾Ý²éѯά¶È¶à£¬±ÈÈç²éѯ6ÔÂ11ÈÕ-7ÔÂ15ÈÕÔÚxx¿§·ÈÌüÎÒËùÓкÃÓÑÀïÅĹýÕÕÆ¬µÄÈË£¬²éѯÌõ¼þ°üÀ¨ºÃÓÑά¶È¡¢ÕÕÆ¬Î¬¶È¡¢µØµãά¶È¡¢Òþ˽״̬ά¶ÈµÈ£¬Õâʱ¾ÍÐèÒªºÏÀíµÄ×öÊý¾Ý²ãÃæµÄÀ©Õ¹¡£
µçÉ̵ÄÌØµãÊǶ¨ÆÚ¾Ù°ì´ó´ÙÏú»î¶¯£¬½ìʱ»áÐèÒª´óÁ¿µÄ¼ÆËã×ÊÔ´¡¢Ó¦Ó÷þÎñÆ÷À´¿¸Á÷Á¿·åÖµ£¬´Ëʱ¿ÉÀûÓÃÔÆ¼ÆËãÆ½Ì¨µÄµ¯ÐÔʵÏÖ¿ìËÙÀ©Õ¹ÒµÎñ£¬¶øÔÚ×Ô¼ºÒµÎñѹÁ¦¡¢´ÙÏúÀ´ÁÙʱµ÷ÓÃAPI½Ó¿Ú£¬¼°AutoScalingÀ©Õ¹ºó¶Ë¼ÆËã×ÊÔ´¡£ÊÓÆµÒµÎñÓзdz£Ã÷ÏÔµÄÁ÷Á¿¸ß·åÆÚºÍµÍ·åÆÚ£¬Á÷Á¿¸ß·åÆÚͨ³£Êǰ×Ìì»òÕß´ó¼ÒÍíÉÏÏ塈ȯ¼ÒÄǶÎʱ¼ä£¬ÍíÉÏ2µãµ½ÔçÉÏ6µãÊÇÁ÷Á¿·Ç³£µÍµÄʱºò£¬¿ÉÀûÓÃÔÆ¼ÆË㵯ÐÔÓÅÊÆ£¬À´µ÷ÓÃAPI·½Ê½µ÷ÕûÒµÎñ´ø¿í×ÊÔ´£¬´Ó¶ø´ïµ½½ÚÊ¡³É±¾Ä¿µÄ¡£
ºÏÀí¹æ»®ÏµÍ³£¬Ô¤¹ÀϵͳÈÝÁ¿£¬Èç 10w / 100w / 1000w PV£¨DAU£©£º²»Í¬µÄϵͳÈÝÁ¿ÓпÉÄܶÔÓ¦²»Í¬¼Ü¹¹µÄ²¿Êð·½Ê½£¬ÕÒµ½×îÊʺÏ×Ô¼ºµÄÄÇÒ»¸ö£»
ϵͳÊǿɺáÏòÀ©Õ¹µÄ scalable£»
²»ÒÅÓàÁ¦µØ½â¾öµ¥µãÎÊÌ⣻
Ϊ³ö´í¶øÉè¼Ædesign for failure£ºAppµÄºó¶Ë¼Ü¹¹ÔÚ¿ª·¢Ö§³ö¾ÍҪΪ¿ÉÄܳöÏֵĸ÷ÖÖÎÊÌâ½øÐÐ×¼±¸£¬±ÈÈçÒìµØ±¸·ÝµÈ£»
Éè¼ÆÃæÏò·þÎñµÄ¼Ü¹¹£¬²ð·Ö×Óϵͳ£¬API½»»¥£¬Òì²½´¦Àí£»
¹¹½¨ÎÞ´¦²»ÔڵĻº´æ£ºÒ³Ã滺´æ¡¢½Ó¿Ú»º´æ¡¢¶ÔÏ󻺴桢Êý¾Ý¿â»º´æ£»
±ÜÃâ¹ý¶ÈÉè¼Æ£¬ºÃµÄϵͳ¼Ü¹¹²»ÊÇÉè¼Æ³öÀ´µÄ£¬¶øÊǽø»¯¶øÀ´µÄ¡£
|