±³¾°
µ±ÏÂ10ºó¶¼ÄÜÔÚÊÖ»ú¼üÅÌÉÏÇÃ×ÖÈç·É£¬60ºóµÄ¶¼¿ÉÒÔ̹ȻµÄҡ΢ÐÅ£¬Òƶ¯»¥ÁªÍø¿ÉνÖËÊÖ¿ÉÈÈ¡£Ëæ×ÅÖÇÄÜÊÖ»úµÄ¿ìËÙ·¢Õ¹£¬Òƶ¯APP×÷ΪµÇÈëÒÆ¶¯»¥ÁªÍø×î±ã½ÝµÄ·½Ê½£¬¶óÊØ×ÅÒÆ¶¯»¥ÁªÍøµÄÈë¿Ú¡£ÏÖÔÚÕâÀàÈí¼þ±»Ô½À´Ô½¶àµÄÈËËùÇàíù£¬ÔÚûÓдóÁ¿×ʽðµÄÇé¿öÏ£¬ÊÖ»úAPPÊÇÖÐСÆóÒµ·¢Õ¹·½ÏòµÄÒ»¸öºÜºÃÑ¡Ôñ¡£¶ÔÓÚ¸öÈËºÍÆóÒµÒÆ¶¯APP ÒѾÊÇ´´ÒµºÍ·¢Õ¹µÄ±Ø±¸¹¤¾ß¡£Òƶ¯»¥ÁªÍøAPP¿ª·¢£¬¶ÔÓÚÆóÒµÀ´ËµÃæÁÙ×ÅÏîÄ¿ÖÜÆÚ£¬×ÊԴͶÈë£¬ÍÆ¹ãµÈÖî¶àÎÊÌ⣬¶ø¶ÔÓÚ¸öÈ˸üÊÇÍû¶øÈ´²½¡£
´«Í³Òƶ¯¿ª·¢¼¼Êõ·½°¸£º

ÄÑÌâ
1.ÖÕ¶ËÒÆ¶¯Æ½Ì¨Ì«¶à£ºAndroid,IOS,Windows Phone,΢ÐÅ …. ¶øÇÒ²»Í¬Æ½Ì¨»¹Óа汾²îÒ죬¶ÔÓÚ¿ª·¢µ÷ÊÔ¼òÖ±ÊÇÒ»³¡Ø¬ÃΣ¬ÒªÏëʵÏÖͳһ¸²¸ÇûÓÐÐÛºñµÄ×ʱ¾Ö§³ÖÊǷdz£À§Äѵġ£
2.¿ª·¢³É±¾£ºÕÐÈËÄÑ£¬ÕÒµ½ºÏÊʵĸüÄÑ£¬³É±¾¸ß£¬Òƶ¯¿ª·¢Ãż÷Õϰ
3.¼ñÁËÖ¥Â鶪ÁËÎ÷¹Ï£ºÆóÒµ°Ñ¾«Á¦Í¶Èëµ½×Ô¼º²»Éó¤µÄÁìÓò´ó¶àʱºò²¢²»ÊÇÒ»¼þºÃÊÂÇ飬¶ÔÓÚ¸öÈËÀ´Ëµ¸üÊÇÈç´Ë¡£
4.ȫվ½â¾ö·½°¸£ºÒ»¸öÓÅÐãµÄAPP³ýÁ˺ËÐÄÒµÎñͬʱҲÐèÒªÆäËûÓÅÐãµÄ×é¼þ£¬Èç:ÍÆËÍ£¬Óû§ÐÐΪ·ÖÎö£¬Êг¡»î¶¯£¬Êý¾Ýͳ¼ÆµÈµÈ¡£
5.ÔËάÀ§ÄÑ£ºÒª±£Ö¤APPµÄÎȶ¨¿É¿¿ÔËÐУ¬ÔËάÊDZز»¿ÉÉÙµÄÒ»²¿·Ö£¬ÕâЩ¹¤×÷ÐèҪרҵµÄÔËάÍŶÓÀ´×ö¡£ÕâÑùÒ²¼ÓÖØÁËÆóÒµµÄ¸ºµ£¡£
ÏÖÔÚÊÇÒ»¸öŒÅË¿ÄæÏ®µÄʱ´ú£¬ÎªÁ˰ïÖúÆóÒµºÍ¸öÈËÎÞÃż÷ÓµÓÐÊôÓÚ×Ô¼ºµÄAPP£¬ÔÆÓ¦ÓÃÆ½Ì¨Ó¦Ô˶øÉú¡£
ÔÆÓ¦ÓÃÆ½Ì¨ÊÇ»ùÓÚ¹«Ë¾ÒÑÓеĹ²ÓÐÔÆ·þÎñ£¬¼¯³É²»Í¬ÐÐҵģ¿é£¬¼¯ APP Éú³É£¬ÔËÓª£¬·ÖÎö£¬×Ô¶¯»¯ÔËάÓëÒ»ÌåµÄ·þÎñ£¬Óû§Ö»ÐèÒª¹ØÐÄ×Ô¼ºµÄÒµÎñ£¬ÍêÈ«°ÚÍÑÉÏÃæµÄ¸÷ÖÖÄÑÌâ¡£

Óû§×éºÏ×Ô¼ºÏëÒªµÄÄ£¿é£¬µã»÷Éú³ÉAPP£¬¾Í¿ÉÒÔÉú³É×Ô¼ºÏëÒªµÄ²»Í¬Æ½Ì¨µÄAPP£¬°üÀ¨Android£¬IOS,΢¹ÙÍø£¬PC¹ÙÍø¡£
ÐèÒª½â¾öµÄµÄÎÊÌâ
1.²îÒ컯·þÎñ¡£ÓÉÓÚÊÇÃæÏò¶à×â»§µÄ·þÎñ£¬²»Í¬µÄAPP²úÉúµÄÁ÷Á¿¿ÉÄܲîÒìºÜ´ó£¬ÏµÍ³ÒªÄÜ×öµ½·þÎñ¸ôÀëºÍˮƽÀ©Õ¹¡£
2.Êý¾Ý¸ôÀëÓëÀ©Õ¹¡£ÎªÁ˱£Ö¤Êý¾Ý°²È«£¬Ã¿Ò»¸öAPP ¶¼»áÓÐÒ»¸ö¶ÀÁ¢µÄDB£¬Êý¾ÝÖ»Äܱ»×Ô¼ºµÄAPP·ÃÎÊ£¬·ÀÖ¹Êý¾Ýhack£¬±£Ö¤Êý¾Ý°²È«¡£¶ÔÓÚ´óÊý¾ÝÁ¿µÄAPP£¬DB Äܹ»Ö§³ÖÎÞÏÞÀ©Õ¹¡£
3.¿ìËÙ²¿ÊðÓë×Ô¶¯»¯ÔËά¡£
4.·þÎñµÄ¼à¿Ø¡£ÓÉÓÚ·þÎñ±é²¼ÔÚ¼¯ÈºµÄ²»Í¬»úÆ÷ÉÏ£¬ÐèÒªÄܹ»¼à¿ØËùÓÐ×â»§·þÎñµÄ½¡¿µ×´Ì¬£¬±£Ö¤·þÎñµÄ¸ß¿ÉÓÃÐУ¬²¢ÇÒÄܹ»Ë®Æ½À©Õ¹¡£
5.Ö§³Ö·þÎñºÍÊý¾ÝµÄÇ¨ÒÆ
ÄܶÀÁ¢ÔËÐеÄ1.0
ÓÉÓÚÔÆÓ¦ÓÃÆ½Ì¨ÐèÒªÖ§³Ö²»Í¬ÐÐÒµ£¬ÒµÎñ¾Í»á±È¸´ÔÓ£¬±È½Ï¶à¡£ÏîĿҵÎñ²ãÊǰ´Ä£¿éÀ´»®·Ö£¬Í¨¹ý²»Í¬Ä£¿éµÄ×éºÏÀ´²»Í¬Âú×ãÐÐÒµµÄÐèÇó¡£

µÚÒ»°æ¼Ü¹¹×ñÑÁ½¸öÔÔò£ºµÚÒ»£¬ ÒÔÒµÎñʵÏÖΪĿ±ê£¬¾¡¿ì×ö³ö²úÆ·ÔÐÍ¡£ÓÉÓÚ¹«Ë¾ÔÆÆ½Ì¨ÒѾÓкܶà»ù´¡µÄÖмä¼þ¿ÉÒÔÖ±½ÓÄÃÀ´Ê¹Óã¬Èç:ÍÆËÍ£¬FAQ&Issue£¬Ö§¸¶£¬IM&Éç½»µÈ¡£ÏÖÔÚÖ»ÐèÒª°Ñ¾«Á¦·ÅÔÚÔÆÓ¦ÓÃ×Ô¼ºµÄÒµÎñÖÐÈ¥¡£µÚ¶þ£¬¿ìËÙÏìÓ¦²úÆ·µÄÐèÇ󣬲úÆ·Ö¸µ¼Ñз¢£¬ºÜ¶à³¡¾°¡¢ºÜ¶àµÄÍæ·¨±ØÐë°ïÖú²úƷʵÏÖ£¬¶øÇÒËÙ¶ÈÒª·Ç³£¿ì£¬Òª¿ìËÙµü´ú¡£
Ö÷Òª¼¼ÊõÕ»

¶ÔÓڴ󲿷ÖÈËÀ´Ëµ Vert.x¿ÉÄÜ»áÓеãİÉú,ËüÊÇ»ùÓÚnettyʵÏÖµÄÒì²½¼Ü¹¹£¬ºÍnode.js ¼«ÆäÏàËÆ¡£Ò»Ö±ÔÚÓÃVert.x×öΪ»ù´¡¼Ü¹¹£¬Õû¸öÍŶӶÔVert.x Ò²ºÜÊìϤ£¬¸Ã²ÈµÃ¿ÓÒ²¶¼²È¹ýÁË£¬Í¨¹ýVerx-Rpc ¿ÉÒÔÖ±½Ó·ÃÎÊÒÑÓеÄ΢·þÎñ¡£ÔÚʹÓÃVert.x ʱ×î´óµÄ¸ÐÊܾÍÊDz»ÄÜдͬ²½´úÂ룬·ñÔò¾Í»á×èÈû£¬µ¼Öµ¼Ö·þÎñ²»¿ÉÓã¬ËùÒÔÎÒÃǵķþÎñÈ«ÊÇ»ùÓÚÒì²½µÄ·½Ê½À´Ð´µÄ¡£ÓÉÓÚËüÊÇÒ»¸öÇáÁ¿¼¶¸ßÐÔÄÜJVMÓ¦ÓÃÆ½Ì¨£¬Ö§³Ö¶àÓïÑÔ¿ª·¢£¬ËüµÄ¼òµ¥actor-like »úÖÆÄܰïÖúÍÑÀëÖ±½Ó»ùÓÚ¶àÏ̱߳à³Ì£¬ÌìÉúÖ§³Ö·Ö²¼Ê½£¬ÒÔºó¶ÔÓÚ·þÎñÀ©Õ¹Ò²ÊÇË®µ½Çþ³ÉµÄÊÂÇé¡£
¶ÔÓÚORM ²¢Ã»ÓÐʹÓÃÖ÷Á÷µÄ Hibernate»òÕßIBATIS,¶øÊÇʹÓÃСÖÚµÄJOOQ¡£JOOQ Ïà¶ÔÓÚÆäËûORMËãÊǺÜÇáÁ¿£¬ÌṩÁËÇ¿´óµÄDSL À´·ÃÎÊÊý¾Ý¿â£¬Áé»î£¬ÉÏÊÖºÜÈÝÒ×£¬´úÂë·Ç³£½Ó½üsql¡£
JOOQ runtime schema mapping ¶ÔÓÚ¶à×â»§Ó¦ÓóÌÐòÓкܺõÄÖ§³Ö£¬¿ÉÒÔºÜÈÝÒ×µÄʵÏÖΪÿ¸ö×â»§·ÖÅä¶ÀÁ¢µÄDB¡£
»¹ÓÐÒ»¸öÖØÒªµÄÔÒò¾ÍÊÇ JOOQ ÒѾºÍJava8 µÄStream API ÍêÈ«ÈÚºÏ,cool!!¡£º¯Êýʽ±à³Ì±í´ïÐÔÇ¿£¬²¢Çҷdz£Í¨Óá£ËüÊÇÊý¾Ý¼°Êý¾ÝÁ÷´¦ÀíµÄºËÐÄ¡£Java¿ª·¢ÈËÔ±ÏÖÔÚÒ²¶¼ÖªµÀº¯Êýʽ±à³Ì£¬¶øÇÒ´ó¼ÒÓÖ¶¼ÓùýSQL¡£ÏëÏóһϣ¬ÄãÓÃSQLÀ´ÉùÃ÷±íÀ´Ô´£¬°ÑÊý¾Ýת»¯³ÉеÄÔª×éÁ÷£¬È»ºóҪô½«ËüÃÇ×÷ΪÅÉÉú±íÌṩ¸øÆäËü¸ü¸ß¼¶µÄSQLÓï¾äÀ´Ê¹Óã¬ÒªÃ´½«ËüÃǽ»¸øÄãµÄÓ¦ÓóÌÐòÀ´´¦Àí¡£
ÏÂÃæ¾ÍÊÇÒ»¶ÎµäÐ͵ÄJava´úÂë
DSLContext create = DSL.using(connection, dialect);
create.select(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME, count())
.from(AUTHOR)
.join(BOOK).on(BOOK.AUTHOR_ID.equal(AUTHOR.ID))
.where(BOOK.LANGUAGE.equal("DE"))
.and(BOOK.PUBLISHED.greaterThan("20017-01-01"))
.limit(2)
.offset(1)
.fetch(record -> transfer(record))
.stream()
.filter(ele -> null != ele)
.collect(Collectors.toList()); |
ÓÐÁËJOOQ£¬Java 8ÒÔ¼°Streams API£¬Äã¿ÉÒÔд³öÇ¿´óµÄÊý¾Ýת»¯µÄAPI£¬¶øÇÒ¼òµ¥Ò×¶®¡£

¼Ü¹¹Ìصã
½«¼Ü¹¹Ìص㻮·ÖΪÓŵãºÍȱµã½øÐÐÃèÊö¡£ÄÇôÓŵãÊÇ£º
1.¼òµ¥£¬Ò×ÓÚʵÏÖ£¬²»ÐèÒª¶îÍâµÄ»ù´¡Ö§³Å
2.ÀûÓÚÒµÎñµÄ¹¦ÄÜ¿ìËÙʵÏÖ
3.·þÎñ¶¼ÊÇÒÔDocker Container Æô¶¯£¬¿ÉÒÔʵÏÖ¿ìËÙ·¢²¼Ó벿Êð
ȱµã£º
1.²»Í¬×â»§µÄÓ¦ÓÃÎÞ·¨¸ôÀ룬ËùÓеÄAPP ¶¼Ê¹ÓÃÏàͬµÄContainer£¬ÕâÑù»á´øÀ´APPÖ®¼äÏ໥ӰÏ죬µ¼Ö·þÎñ²»Îȶ¨µÄ·çÏÕ¡£
2.ȱÉÙ·þÎñ½¡¿µ¼ì²é¡£
3.ÔËά³É±¾¹ý´ó¡£
1.0µÄ¼Ü¹¹¾ÍÊÇÒ»¸ö¼òµ¥µÄWebϵͳ¡£¸ºÔؾùºâʹÓÃNignx£¬²¢Ã»ÓÐϸ»¯µ½×â»§¼¶±ð¡£ÒµÎñϵͳͨ¹ý´úÂëÄ£¿éµÄÐÎʽ×éÖ¯¸÷ÖÖÒµÎñ¾ÍÊÇÒ»¸ö¼òµ¥µÄWebϵͳ£¬ºóÃæÖ±½Ó¹ÒÁËÊý¾Ý¿â£¬±ÈÈçÉÌÆ·¡¢¶©µ¥¡¢»áÔ±¡¢¿Í·þ£¬µÈµÈ¡£¿ÉÒÔ¿´µ½£¬ÎÒÃÇÕâ¸ö»ù´¡µÄ¼Ü¹¹£¬¶ÔÍâ¾ÍÊÇHTTP¡£µ±Ê±Á½¸öÈ˵ÄСÍŶӿª·¢¸÷ÖÖÒµÎñ£¬ÎÒÃÇ¿¼ÂÇÖ»ÄÜÓÃ×î¼òµ¥¡¢×î´Ö±©µÄ·½Ê½ÊµÏÖ£¬ÄÜ¿ìËÙµØÊµÏÖÒµÎñ¡£µ±Ê±µÄÁ÷Á¿²»ÊǵÚÒ»ÖØÒªµÄÎÊÌ⣬Ҳ²»ÊÇ×îÖ÷ÒªµÄì¶Ü¡£
¶ÔÓÚÕâ¸ö½×¶Î£¬×ܽáÁËÈýµã¡£µÚÒ»£¬¼¼ÊõÀ´Ô´ÓÚÒµÎñͬʱÌáÉýÒµÎñ·¢Õ¹£¬ÒµÎñ·¢Õ¹ÓÖ·´¹ýÀ´Íƶ¯¼¼ÊõµÄǰ½ø£¬ËûÃÇÊÇÒ»¸öÏ໥ӰÏìÏ໥´Ù½øµÄ¹ØÏµ¡£ºÍÒµÎñ¹²Í¬·¢Õ¹µÄ¼¼Êõ²ÅÊÇÓÐÉúÃüÁ¦µÄ¡£µÚ¶þ£¬³ÉÊì¼òµ¥µÄ¼¼Êõ¾ÍÊÇ×îºÏÊʵģ¬Õâ¸öÀíÄîÒ»Ö±¹á´©Ê¼ÖÕ¡£²»Òª°ÑÊÂÇ鸴ÔÓµÄÐÎ̬³ÊÏÖ¸ø´ó¼Ò£¬ÄÔ×ÓÒª±£³Ö¼òµ¥£¬²»ÒªÏëÄÇô¸´ÔÓµÄʶù¡£µÚÈý£¬Òª°ÑÄÜÓöµ½µÄ³¡¾°¾¡Á¿µ½¿¼Âǵ½£¬ÒÔºó¼Ü¹¹Éý¼¶²»ÖÁÓںܱ»¶¯¡£´ó¼Ò¿´µ½³õʼµÄ¼Ü¹¹µÈÓÚûÓмܹ¹£¬µ«ÊÇÕâÖÖÐÎʽÔÚÕâʱÊÇ×î·ûºÏÒµÎñÐèÇóµÄÒ»¸ö£¬ÄÜ¿ìËÙµü´ú£¬Äܷdz£·½±ãÉÏÏß¡£
ÃæÏò¶à×â»§µÄ2.0
ÔÚMaxWon1.0ʱ´úµÄʱºò£¬ÎÒÃǵĹØ×¢µã¸üÆ«ÏòÒµÎñµÄʵÏÖ£¬Ëæ×ÅÓû§Ôö³¤£¬ÐÔÄܺÍÎȶ¨ÐÔÎÊÌâÖ𽥸¡ÉÏË®Ãæ£¬×÷Ϊһ¸ö¶à×â»§µÄÓ¦ÓÃϵͳ£¬ÏµÍ³²»Îȶ¨£¬ÊǷdz£ÖÂÃüµÄ£¬2.0½â¾öÕâЩÎÊÌâÒ²ÆÈÔÚü½Þ¡£
Òª½â¾öµÄÎÊÌâ
Ê×ÏÈÒª½â¾öµÄ¾ÍÊÇ·þÎñ·ÖÀë¡£ÆäÖÐÓÐÁ½ÖÖ·½°¸ £º
1.ÿһ¸ö×â»§APP¶¼ÓÐÊôÓÚ×Ô¼ºµÄ ·þÎñ Container£¬ÕâÑù¾Í½â¾öÁË×â»§Ö®¼äµÄÏ໥ӰÏì¡£µ«ÊÇ ´ó²¿·Ö APP ·ÃÎʵã¿ÉÄܺÜС£¬ÉõÖÁÊǽ©Ê¬Ó¦Óá£ËäÈ»Docker ÈÝÆ÷ʹÓõÄ×ÊÔ´ºÜС£¬µ«ÊÇ´óÁ¿µÄ²»»îÔ¾Ó¦Óû¹ÊÇ»áÀ˷ѵôÌ«¶àµÄϵͳ×ÊÔ´£¬×ÊÔ´ÀûÓÃÂʵ͡£
2.°´×â»§µÄÕæÊµµÄ·ÃÎÊÁ¿»®·ÖΪ²»Í¬µÄ×飬ÆÕͨ¹æÄ£Ó¦ÓûòÕßÊǽ©Ê¬Ó¦Óö¼¹«ÓÃͬһ×éContainer£¬ÖеȹæÄ£Ó¦Óà ij¼¸¸öʹÓÃÒ»×éContainer£¬¶ÔÓÚ´óÁ¿Êý¾ÝÁ÷Á¿µÄÓ¦Óà ¶ÀÕ¼ ͬһ×éContainer£¬ÕâÑùµÄ»°×ÊÔ´ÀûÓÃÂʾͻáºÜ¸ß¡£È±µã¾ÍÊÇ ÆÕͨ¹æÄ£ºÍÖеȹæÄ£Ó¦Óà ·þÎñÖ®¼ä»¹ÊÇ»áÓÐÓ°Ï죬ÓÉÓÚÕâÁ½ÖÖ¹æÄ£µÄÊý¾Ý·ÃÎʵĻáÉٺܶ࣬³öÏÖÂý²éѯ¶øµ¼ÖÂÍÏÂýÕû¸öϵͳµÄ¿ÉÄÜÐÔ»áºÜС¡£
¶Ô±ÈÉÏÃæµÄÁ½¸ö·½°¸ÓÅȱµã£¬»ùÓÚÏÖʵµÄ¿¼ÂÇ×îÖÕÑ¡ÔñÁ˵ڶþÖÖ·½°¸¡£Õâ¾ÍÐèÒªÄܹ»ËæÊ±¼à¿ØAPPµÄÊý¾Ý·ÃÎÊÁ¿£¬µ±Ä³¸öAPP·ÃÎÊÁ¿¿ìËÙÉÏÉýʱÄܹ»ËæÊ±¶ÀÁ¢³ö·þÎñÀ´£¬ÕâÑù¾Í¿ÉÒÔ×î´óÏ޶ȵķÀÖ¹×⻧֮ǰÏ໥ӰÏì¶ø²úÉúµÄ·þÎñ¶¶¶¯¡£
¶ÔÓÚ·þÎñ¼à¿Ø£¬Ôò²ÉÓÃÐÄÌø¼ì²âµÄ·½Ê½£¬Ã¿¸ö·þÎñContainer¶ÔÍⱩ¶һ×齡¿µ¼ì²éµÄ½Ó¿Ú£¬¼à¿ØÏµÍ³»á¶¨Ê±µÄѲÊÓËùÓзþÎñµÄ½¡¿µ×´Ì¬£¬Èç¹ûÓÉÓÚijÖÖÔÒò±»Killµô£¬ÔòÖØÆô¶ÔÓ¦ContainerµÄ²¢²úÉú¸æ¾¯¡£

¶ÔÓÚÊý¾Ý´æ´¢·ÖÀë Ò²²ÉÓÃÁËͬÑùµÄ˼·¡£¶ÔÓÚMongo ,Pandora±¾Éí¾ÍÖ§³Ö°´²»Í¬App Êý¾Ý·ÖÖΡ£¶ÔÓÚMysql´úÀíÔò²ÉÓÃ×ÔÑÐµÄ Circe×é¼þ£¬¿ÉÒÔʵÏÖ²»Í¬AppÊý¾ÝµÄ¸ôÀ롣ʹÓÃAWS ELB ½â¾öÁËCirceµÄ¸ºÔؾùºâÓë¸ß¿ÉÓá£
2.0µÄ²ÉÓÃÁË·þÎñºÍÊý¾Ý·ÖÀëµÄ˼Ï룬ÏÖÔڻعËÒ²²¢²»¸´ÔÓ£¬¶ÔÓÚÂëÅ©À´ËµÕâÖÖ˼ÏëÒѾÊǷdz£ÊìϤµÄÁË¡£Èç¹ûÄãµÄ²úÆ·¹¦Äܲ»¶à£¬µü´ú²»ÊǺܿ죬¿ÉÒÔ·ÅÂýÒ»Ï½Ų½£¬Í£ÏÂÀ´Ò»¶Îʱ¼äÀ´¼¯ÖÐÒ»´ÎÖØ¹¹¡£µ«¶ÔÓÚMaxWonÀ´ËµÕâÒ»°æ±¾µÄµü´ú¾ÍÏñÊÇÄñǹ»»ÅÚ£¬Âú×ãÁ˴󲿷ֵÄÓ¦Óó¡¾°¡£¶ÔÓÚÒµÎñ¿ìËÙµü´ú£¬ÉÏÏßʱ¼ä½ôÆÈµÄϵͳÀ´Ëµ£¬Õâ´ÎÖØ¹¹Ò²ÊÇÒ»¸ö²»Ð¡µÄÌôÕ½¡£
ÓÅÊÆ
1.¼Ì³ÐÁËÔÓÐ1.0µÄÌØµã£¬±£ÁôÁËÆäÓÅÊÆ
2.½â¾öÁËÊý¾ÝºÍ·þÎñ¸ôÀëÓëÀ©ÈݵÄÎÊÌâ
3.ʵÏÖ²»Í¬×â»§µÄ²îÒ컯·þÎñ
4.Ìí¼ÓÁË·þÎñ¼à¿ØÓë¼ì²é
Docker ¹¹½¨ºÍ·¢²¼
ʹÓÃdocker ¹¹½¨¿ÉÒÔÍêÃÀµÄ½â¾ö»·¾³³åÍ»µÄÎÊÌ⣬Ҳ¿ÉÒÔ·½±ã¿ìËÙ²¿ÊðºÍÀ©ÈÝ¡£
FROM 10.10.10.160:8010/maxleap/vertx:3.2.1
MAINTAINER ben.ma <cma@maxleap.com>
#----------------------------Copy ÏîĿĿ¼µ½ÈÝÆ÷Àï------------------------------------------
RUN \ mkdir -p /opt/maxwon
#¸²¸Çvert.x Ïà¹ØÅäÖÃ
ADD lib/ $VERTX_HOME/lib/
ADD log4j2.xml $VERTX_HOME/conf/
ADD zookeeper.properties $VERTX_HOME/conf/
ADD config.json /opt/maxwon/
WORKDIR /opt/maxwon
ENTRYPOINT ["vertx", "run",
"java-hk2:as.leap.ama.module.jersey.JerseyVerticle",
"--conf", "config.json"] |
ͨ¹ýspotify docker-maven-plugin ²å¼þ£¬¸ù¾ÝÊÂÏȶ¨ÒåÔÚÏîÄ¿ÖеÄDockerFile¿ÉÒÔÇáËɵİÑÏîÄ¿´ò°ü³É¿ÉÖ´ÐеÄdocker Image²¢pushµ½Éú²ú»·¾³ÖС£
$ mvn clean deploy -DpushImage -Pcn |
ºÃÓõÄÖмä¼þ
Hydra£ºº£µÂÀ ¹ÅÏ£À°Éñ»°ÈËÎï,ÊÇÒ»ÖÖ´«ËµÖÐÓоŸöÍ·µÄ´óÉߣ¬ÎªÚ¤Íõ¿´ÊØÃÅ»§¡£ÔÚÕâÀïHydra ×÷ΪMaxWonµÄAPIÍø¹Ø£¬¹ÜÀíÀ´×Ô²»Í¬¶ËµÄÇëÇ󣬸ù¾ÝÇëÇóµÄÀ´Ô´×ª·¢µ½ÏàÓ¦µÄ·þÎñÈÝÆ÷×éÖС£Í¬Ê±ËüÒ²»á¹ÜÀíºÍ¼à¿ØÈÝÆ÷״̬ÒÔ¼°¶Ô·þÎñµÄ¶¯Ì¬À©ÈÝ¡£

Circe£ºÏ£À°Éñ»°ÀïÒ»¸öÄÜÖÆÔì»Ã¾õµÄÅ®Î×,ÕâÀïÓÃÀ´ÒþÓ÷Äܹ»ÖÆÔìMysql·þÎñµÄ´úÀíµÄÏîÄ¿.ͨ¹ýËü¿ÉÒÔʵÏÖ²»Í¬×â»§µÄÊý¾Ý¸ôÀ룬¹ýÂË·Ç·¨,Óж¾µÄsqlÓï¾ä£¬±£Ö¤Êý¾ÝÒþ˽ºÍ°²È«¡£
Pandora£º·ÃÎÊMongoDBµÄ»ù´¡×é¼þ£¬ÌṩÁËͬ²½ºÍÒì²½µÄÁ½ÖÖ½Ó¿Ú¡£Pandora×îΪºËÐĵŦÄÜÊÇʵÏÖÁË×ÊÔ´ÏÞÖÆºÍÊý¾Ý¿â·ÃÎʵÄ·ÓɲßÂÔ£¬Õâ¶ÔÊý¾Ý¿â½øÐÐÆ½»¬µÄ¶¯Ì¬À©Õ¹¼°Ç¨ÒÆÌṩÁ˿ɿ¿µÄÖ§³Ö¡£¸ÐÐËȤµÄ¿ÉÒԲο¼Í¬ÊÂдµÄMONGO ¼¯ÈºÉè¼Æ
×ܽá
ÍÑÀëÒµÎñ̸¼Ü¹¹¶¼Êdz¶µ£¬ÀûÓü¼ÊõÊÖ¶ÎÌáÉý¹¤×÷ЧÂÊÊǺÃÊ£¬±ðÏݽøÈ¥£¬²úÆ·×îÖÕÄóöÀ´Ëµ»°µÄ»¹ÊÇÓÐûÓнâ¾öÓû§µÄÎÊÌ⣬¶ø²»Êǽâ¾öÄã×Ô¼ºµÄÎÊÌâ¡£¶ÔÓÚMaxWon ÕâÖÖ¿ìËÙµü´úµÄϵͳ£¬ÏµÍ³Ò²»á¿¼ÂǸü¶àµÄÒµÎñ³¡¾°£¬Ìå»ýÒ²Ô½À´Ô½ÅÓ´ó£¬Óöµ½¼¬ÊÖµÄÎÊÌâÒ²»áÔ½À´Ô½¶à£¬×öºÃÓÅ»¯µÄ×¼±¸¡£
ϵͳҪ¾¡Á¿±£³Ö¼òµ¥£¬¼¼Êõ¼Ü¹¹µÄÑ¡Ðͽ¨ÒéÊÇѰÕÒµ±Ç°×î¶Ì·¾¶£¬È»ºó½øÐв»¶ÏÓÅ»¯µü´ú£¬ÏëÒ»¿Ú³Ô¸ö´óÅÖ×Ó²»Ì«¿ÉÄÜ¡£
´úÂ벻ҪдËÀ¡£
|