ãããžã§ã¯ãã®äœæè ã¯ãããã¯å²äžæé«ã®ãœãŒã·ã£ã«ãããã¯ãŒã¯ã§ãããšèšããŸã-ãã¹ãŠã®ãŠãŒã¶ãŒãé·ãé亡ããªã£ãŠããããã§ãã ããã¯ãœãŒã·ã£ã«ãããã¯ãŒã¯ã®åœ¢åŒã®ãµã€ãã§ããŠãŒã¶ãŒã¯100幎åã«èµ·ãã£ãåºæ¥äºã«ã€ããŠæžããæ¬ç©ã®æŽå²äžã®äººç©ã§ãã ãã¹ãŠã®è³æã¯ãå®éã®æŽå²çææžãæçŽããžã£ãŒããªã¹ãã£ãã¯è³æãåçã¢ãŒã«ã€ãããã®ããŒã¿ããããªã¢ãŒã«ã€ãããã®ããŒã¿ã«åºã¥ããŠããŸãã ç§ãã¡ã®æ代ã®èªè ã¯ããããã®æçš¿ã«ã³ã¡ã³ããããããœãŒã·ã£ã«ãããã¯ãŒã¯ã§å ±æãããã§ããŸãã
åé¡ãç 究ããçµæãããã¯éåžžã«å®çŸå¯èœã§ããã瀺ãããæéã«ãããè¡ãæéãããããšãããããŸããã ç§ãã¡ã®äž»ãªãããã¡ã€ã«ã¯è² è·ã®é«ããããžã§ã¯ãã®ç®¡çãšãµããŒãã§ãããšããäºå®ã«ãããããããç§ãã¡ã¯Webéçºããå§ããŸãããããŸã éçºã«åŸäºããŠããããšããããŸãïŒ
ããŒãã€ã³ãïŒç· åæ¥ããããŸãã-æ£ç¢ºãªåã ããã¯11æ14æ¥ã®15:00ã§ãããã®æç¹ã§ããã¬ã¹ãªãªãŒã¹ã¯ã¡ãã£ã¢ã«éãããYandexã¯èªå® ã§ãããžã§ã¯ããå ¬éããã¡ã¬ãã³ãæã£ãŠãã人ããããžã§ã¯ãã®å ¬åŒçºè¡šãèµ€ã®åºå Žã§è¡ããŸãã æéãå°ãªããšã1æéããã確çã¯ãŒãã§ããã
ã¯ã©ã€ã¢ã³ããšã®äœæ¥ã®èª¿æŽã®æ®µéã§ããããžã§ã¯ãã®å®æœã®æ確ãªã¹ã±ãžã¥ãŒã«ã決å®ããŸããã å€ãã®è³æãããããšã¯æããã§ããããµã€ãã¯ãªãªãŒã¹ã®1æéåã§ã¯ãªããã¯ããã«æ©ã段éã§ã³ã³ãã³ããåããå¿ èŠããããŸãã 8æäžæ¬ã«ã管çããã«ããããã¯ã·ã§ã³ã«ããŒã«ã¢ãŠãããçµçãéå§ããããšã«ããŸããã 9æã«-管çããã«ãå®æãããŠããŒã¿ã®ãã€ã³ããéå§ãã10æã«ç§ãã¡ã®æ代ã®ãŠãŒã¶ãŒãšã®å¯Ÿè©±ãå®è£ ããŸãïŒæ¿èªãå ±æãããããã³ã¡ã³ãã®å®è£ ïŒã 11æ7æ¥ïŒè¯ãæ¥ïŒãè² è·ãã¹ããå®æœããããšã決å®ãããŸããã 11æ14æ¥-ãããžã§ã¯ãã®éå§ãéå§ãã1é±éåŸããŠãŒã¶ãŒããµã€ãã«æ»ãããã«ããã·ã¥éç¥ãå®è£ ããŸãã 12æããã®ãµã€ãã¯è±èªã«ç¿»èš³ãããäºå®ã§ããã
ããŒã ãçµæããŠä»äºãå§ããŸã
7æ3æ¥ã«ãåæãäœæ¥èšç»ã«çœ²åãããªããžããªã§æåã®ã³ããããè¡ããŸããã
å³ããç· ãåãã®ããè€éãªãããžã§ã¯ãã§ã¯ãããŒã ã次ã®ããã«èŠããªãããšãéåžžã«éèŠã§ããVasyaã¯åããŠããã10人ã®ãããŒãžã£ãŒãããã«åãçµãã§ããŸã
ã¿ã€ãã³ã°ã¯å³ãããã®ã®ãæåã®ååã¯ãã±ããç§åŠãªãïŒãã±ããæè¡ãªãïŒã§ãã ç§ãã¡ã¯ãç«æã«é£ãã§ãžã£ã¬ã€ã¢ã䜿ãæãããç·ãæããã±ããã建èšããŠããŸããã ç§ãã¡ã¯ãã ãœãŒã·ã£ã«ãããã¯ãŒã¯ãäœã£ãŠããŸãã
äœæ¥äžã®ãã£ããã®1ã€ã§åé¡ã解決ããéçšã§ã¹ããã«ãŒã衚瀺ãããå Žåãããã¯æ¬¡ã®ããšãæå³ããŠããŸããããã¿ããªãäœãåé¡ããããŸããã¿ã¹ã¯ãå°ããªãµãã¿ã¹ã¯ã«åå²ããåã ã«è§£æ±ºãã人çãè€éã«ããªãã§ãã ããã ãã
ããŒã ã«ã¯ãããžã§ã¯ããããŒãžã£ãŒã3人ã®ããã°ã©ãã2人ã®ç®¡çè ã2人ã®ãã¹ã¿ãŒãããŠãããæç¹ã§ããŒã ã2ã€ã®å°ççãŸãŒã³ã«åå²ããããšã決å®ãããŸãããã€ã«ã¯ãŒãã¯ã§éçºãæåã«è¡ãããŸããïŒã
ã©ã®ã¹ã¿ãã¯ãéžæãããŸãããïŒ æ¯æ¥æ°ãããã¯ãããžãŒãç»å ŽããŸããããã®ãã¹ãŠã«ãããŠãåã«ãã¡ãã·ã§ããã«ã§ãããšããçç±ã ãã§ãäžèŠãªãã®ãå«ããã®ã¯éåžžã«ç°¡åã§ãã ãããè¡ãå¿ èŠã¯ãããŸãã-å€ããã·ã¢ã®ããšãããå¿ããªãã§ãã ããïŒããžãŒããæ¥ãªã»ã©ããã©ã¯ã¿ãŒãè¿œããããã®ã«æéãããããŸããã ãããŠãããã°ã©ãã³ã°ã§ã¯ããã®ããšãããåœãŠã¯ãŸããŸãã
ã©ã®ããã«ããŠã¹ã¿ãã¯ãæ§ç¯ããããšã«ããŸãããïŒ WebãµãŒããŒãšããŠãPHP-FPMã§Nginxãã€ã³ã¹ããŒã«ããããŒã¿ããŒã¹ã«MySQL 5.7ãéžæããããã¯ãšã³ãã®ãã¬ãŒã ã¯ãŒã¯ãšããŠLaravelãéžæããŸãã-ãããäœæ¥ãã¬ãŒã ã¯ãŒã¯ã§ãã ããã³ããšã³ãã®ãã¬ãŒã ã¯ãŒã¯ã¯Angular 1.5ã§ããã
Angular 1.5ã䜿çšããäž»ãªååã®1ã€ã¯ãããç¥ã£ãŠãããã®ã ãã䜿çšããããšã§ãããŸãã¯ãäœãç¥ããªãå Žåã¯ããã«çããèŠã€ããããšãã§ããŸãã 2çªç®ã®Angularã®æåã®å€ããå°ãªããå®å®ããããŒãžã§ã³ã¯ãéçºãéå§ããŠãã2é±éåŸã«ãªãªãŒã¹ãããæžãçŽãå¿ èŠããªããªããŸããã ãã以åã¯ãããŒãžã§ã³1.5ã1.4ã§å€ãã®äœæ¥ãè¡ãããã¹ãŠã®èœãšãç©Žãç¥ã£ãŠããããã䜿çšã§ããããšãè¡ãããšã«ããŸããã
ã°ã©ãã£ãã¯ã¹ã®äœæ¥ã«ã¯ãImagemagicã䜿çšãããããªãšgifã®äœæ¥ã«ã¯FFmpegã䜿çšããŸãããééããªãMemcachedã䜿çšããç¬èªã®ã¿ã¹ã¯ã§Gulpã䜿çšããŠéçããŒã¿ãåéããã³äœ¿çšããŸãã
管çããã«ãšã¿ã€ãã»ãããäœæããŸã
1ãæåŸã管çããã«ãæ¢ã«çºè¡ããŸããã 管çéšåãæ§ç¯ããæ¹æ³ããµã€ãã¯ã©ã®ããã«ã³ã³ãã³ãã§æºããããŠããŸããïŒ L5-repositoryããã±ãŒãžãããŒã¹ãšããŠäœ¿çšããŸãã-ããã¯ãããã3ããŒã ã§RESTful APIãå®è£ ãããã¹ãŠã®ã¢ãã«ãäœæããè€éãªé¢ä¿ãæã€ç§»è¡ããã¯ã¹ãã移è¡ãäœæãã1ã€ã®å®å šãªã³ã³ãããŒã©ãŒãçæããŠ1ã€ã®ã«ãŒãã§ããŒã¿ãæäœã§ããããã«ããLaravelã®ããã±ãŒãžã§ãã 管çããã³ããšã³ãã¯ã1ããŒãžã®Webã¢ããªã±ãŒã·ã§ã³ãšããŠå®è¡ãããŸãããngResourceãµãŒãã¹ã¯ãAPIãšã®å¯Ÿè©±ã«ç©æ¥µçã«äœ¿çšãããŸãã ããã³ããšã³ãåŽã§ã¯ãèªäœã®JSãã£ãã·ã¥ãå®è£ ããããšããŸãããããã«ãããäœããäžåºŠããŠã³ããŒãããå Žåã«ç®¡çããã«ãããµãŒããŒã«ããŒã¿ãåžžã«èŠæ±ãããªããªããã¯ã©ã€ã¢ã³ãã§ãããåŠçã§ããŸãã ãã¹ãŠã®ç®¡çããã«ã¯ãAngularã³ã³ããŒãã³ãäžã«æ§ç¯ãããŠããŸãã
ç·šéäœæ¥ãã©ã®ããã«æ§ç¯ãããããã¯ã©ã€ã¢ã³ããšè©±ãåãããšã¯éåžžã«éèŠã§ããã 管çããã«ã®çæ³çãªããŒãžã§ã³ã¯ã5人ãåæã«ä»»æã®ã»ã¯ã·ã§ã³ã§äœæ¥ããŠããå Žåã§ãã誰ããååãæŽæ°ãã誰ããããã¹ãã§ãã ã¯ã©ã€ã¢ã³ãã¯äžè²«ããäœæ¥ãèšç»ããŸãããæçš¿ã®ããã¹ããæ åœããæçš¿ã®é åºãæ åœãã人ãããŸãã ã³ã³ããŒãã³ããéè€ããªãããã«ããåäœããããŒã¿ã®ã¿ãæŽæ°ããããã«ããŸããã å¹³åããŠãã³ã³ããŒãã³ãã®éçºã«ã¯çŽ1æéãããã管çããã«ã®åºæ¬çã«æ°ããã»ã¯ã·ã§ã³ã1æ¥ã§å±éãããŸããã
æãåçŽãªã³ã³ããŒãã³ãã¯ããã¹ããšãã£ã¿ãŒã§ãã ãããéåžžã®TinyMCEã§ããããšãæããã§ããããããã«å€æŽãããŠããŸãã ããªã³ã¯ãæ¿å ¥ããã¿ã³ããããŒããŒãæ¿å ¥ããã¿ã³ããããããšãã°ãŠã©ãžããŒã«ã¬ãŒãã³ãžã®ãªã³ã¯ãããã¹ãã«æ¿å ¥ãããåçã«çŸãããããã¢ããã衚瀺ããããªã©ãããã¹ãã«ããã«è¡šç€ºãããŠããããšãããããŸãã
ãããç·šéå§å¡äŒã®å€èŠ³ã§ããåããŠç®¡çããã«ã衚瀺ãããŸãã-圌ãã¯éåžžã«æºè¶³ããŠãããéåžžã«äŸ¿å©ã§ç°¡åã ã£ãã®ã§ãç¬ã®äœ¿ãæ¹ãæããããšããã§ããŸãïŒ
管çããã«ãå®æãããããŒã¿ããã€ã³ãããŸã
ããã§ã管çããã«ãäœæãããããžã§ã¯ãã®å ¬ééšåã§ããããã³ããšã³ãã«å°éããŸããã ã¬ã€ã¢ãŠããå°ãé ããŠç§ãã¡ã«äžããããã¿ã¹ã¯ã¯å€åºå ã§æ¯æ¥å€ãããŸããã ããã¯æåã®èŠå ±ãã«ã§ãããç§ãã¡ã¯éã«åããªããããããŸããã ããã«æŽ»åã«çµãã§ãã©ã€ãããŒã¿ã«é©å¿ããããšã«ããŸããã
ããã³ããšã³ããã©ã®ããã«å®è£ ããããšã«ããŸãããïŒ æ€çŽ¢ããã£ã«ã¿ãªã³ã°ããœãŒãã«ã¯ã管çããã«ã§äœ¿çšããããã±ãŒãžïŒL5ãªããžããªïŒã䜿çšããŸããã€ãŸãããã¹ãŠã®ããŒã¿ããªããžããªãšããŠäœ¿çšããŸãã PHPã³ãŒãã®èŠ³ç¹ããããµã€ãäžã®ããã€ãã®ãããã¯ãåå¥ã®ãµãŒãã¹ã«å²ãåœãŠãããããåäžã®ãªããžã§ã¯ããšããŠæ¥ç¶ããŸãããµã€ããã1ã€ã®ã³ã³ããŒãã³ããåé€ããŠå¥ã®å Žæã«æ¿å ¥ããå¿ èŠãããå Žåã¯ãããããæ§ç¯ããå¿ èŠããããŸãåäœããã¯ãã§ãã
ããšãã°ããã®ãããªåºæ¬çãªã³ã³ããŒãã³ã-ã«ã¬ã³ããŒããããŸãã ãã®ã³ã³ããŒãã³ãããããã«ãããããŒãã³ã³ããŒãã³ãããããŸãã ããã¯äººæ°ã®ããæçš¿ãå«ãçŸããåçã§ãå ±æããããšãã§ããŸãïŒ
次ã«ãã«ã¬ã³ããŒãšãéä¿¡ããããäœæ¥æç»ããå¿ èŠããããããšããå€èŠ³ã®æçš¿ã®ãã£ãŒãããããŸãã
æšå¥šãããã¯ãšãµãã¹ã¯ãªãã·ã§ã³ãããã¯ã¯ããŒãã«ãã£ãŠç°ãªããŸãã 倩æ°ãé貚ãèªçæ¥ãªã©ã®ãããã¯ã¯ã«ã¬ã³ããŒã«äŸåããŸãã å®éã®Facebookã®ããã«ããã®æ¥ã®å šäœåãäžåºŠã«èŠãããšãã§ããŸãã
ããã¯ãšã³ããã€ãŸããµãŒããŒã®è² è·ãäºæž¬ã§ããŸãã-TORã«äžå®éã®RPSã瀺ãããŸãããããµã€ãã衚瀺ããããã€ã¹ãäºæž¬ããããšã¯ã§ããŸããã ãããã£ãŠãããã³ããšã³ãã®å ¬ééšåãã§ããã ãã·ã³ãã«ã«ããããšã決å®ãããŸããã
ãŸãããã¹ãŠã®éçã¯ãã£ãã·ã¥ããçŽã¡ã«èŠæ±ãããŸããåçãªäžæã®ãŠãŒã¶ãŒæ å ±ã®ããã«ããã£ãã·ã¥ãããŠããªãAPIã䜿çšããŸãã ãã¹ãŠã®åçèªã¿èŸŒã¿ã¯HTMLãä»ããŠæ©èœããŸãã ãµãŒããŒã¯éçãªããŒããçæããŸããããšãã°ãã¹ã¯ããŒã«ããŸããæ°ããããŒãžãHTMLã§å°çããŸãããã€ãŸããããŒã¿ã¯JSONã§ã¯ãããŸããã çªç¶JavaScriptã䜿çšããŠããŒãžã§äœããã®äœæ¥ãè¡ãå¿ èŠãããå ŽåãAngularJSã®äœ¿çšãæé©åãŸãã¯æå°åããBindonceã©ã€ãã©ãªãç©æ¥µçã«äœ¿çšããŠã1åéãã®ãã€ã³ãã£ã³ã°ãå®è£ ã§ããŸãã ãã¹ãŠã®ç»åã¯ãNginxããŒã«ã䜿çšããŠãhttp_image_filterã¢ãžã¥ãŒã«ã䜿çšããŠæé©åãããŸããããŒã¯è² è·ãçºçããå ŽåãéçååžãCDNã«è»¢éããŸãã
ããããå ±æãã³ã¡ã³ãã®äœæ
ãããã¯1é±éã§å®è£ ãããŸããã ãŸããããšãã°ãlikeãcommentã¯äœã§ããïŒ å®éãããŒã¿ããŒã¹ã®èŠ³ç¹ããèŠããšãããã¯å€å¯Ÿå€ã®é¢ä¿ãå®è£ ããéåžžã®ããŒãã«ã§ããããšãã°ãæçš¿IDããŠãŒã¶ãŒIDãªã©ããããŸãã å¥ã®æ¹æ³ã§ã¢ãããŒããããã®ãªã¬ãŒã·ã§ã³ããªã¬ãŒã·ã§ã³ãšããŠã§ã¯ãªã䜿çšããããšãã€ãŸããæçš¿ã«ã³ã¡ã³ããããå ŽåãhasOneæçš¿ãæã€å¥ã®ãšã³ãã£ãã£ã«ã³ã¡ã³ããå²ãåœãŠãããšã«ããŸããã åæã«ãGoogleã§ã¯ãããããïŒãæžãæ¹æ³ããšããèŠæ±ã«å¯ŸããŠãããšãã°ãã¢ãŒããã€ãã³ãªã©ã®æ¥ç¶ã䜿çšããããšãææ¡ããŠããŸãã ããŒãã«ããæ¥ç¶ãããªããžã§ã¯ãã®2ã€ã®èå¥åã§ã¯ãªããåãã¿ã€ããåãIDãæ ŒçŽããå Žåã ããšãã°ãæçš¿ãåç»ã§ãããããããå Žåã¯ãlike-typeãlike-idãè¡ãããææ¡ãããŸãã ããã¯äžèŠã ãšå€æããŸããããããïŒããŒãã«ã¯1ã€ã ãã«ãªããŸãã
ããã«ã ããšãã°ãããŒãžäžã®å ±ææ°ã1è¡ã§ååŸããããã«ããã¥ãŒããŒã¿ãŒã¡ãœãããç©æ¥µçã«äœ¿çšããŸãããããšãã°ãVKå ±æãOKå ±æãFBå ±æããããŸãã ããã³ããšã³ãã¯Localstorageã䜿çšããŸããããšãã°ããã©ãŠã¶ã§ãµããŒããããŠããªãå ŽåãCookieã®ã¬ãã«ãŸã§äœäžããå¯èœæ§ããããŸãã ããšãã°ããŠãŒã¶ãŒãæçš¿ãæ°ã«å ¥ã£ããšããæ å ±ãä¿åããŸããã€ãŸããããŒã¿ããŒã¹ãžã®ãªã¯ãšã¹ããè¡ããªããã³ã«æçš¿ã®ãªã¹ããåãåããªãããã«ããŸãã Localstorageã«ãã¹ãŠãäžåºŠä¿åââããããŒãžãã¬ã³ããªã³ã°ãããããŒããè²ä»ããããããŒã¿ããŒã¹ã«äœåãªãªã¯ãšã¹ããè¡ãããšã¯ãããŸããã
ãŠãŒã¶ãŒãšé£æºããããã®APIããã£ãã·ã¥ããŸãããããšãã°ãé¢é£ããã³ã¡ã³ãããªã¢ã«ã¿ã€ã ã§åãåãå¿ èŠããããŸãã ãŠãŒã¶ãŒã«äŒããããšã¯ã§ããŸãããç³ãèš³ãããŸãããã5åéã®ãã£ãã·ã¥ããããŸãã5åéã§ã³ã¡ã³ãã衚瀺ãããŸãã ãŸããçªç¶ãµãŒããŒãšã®åçãªéä¿¡ãªã©ãå¿ èŠã«ãªã£ãå Žåã¯ãNode.jsã§æ¢ã«åäœããŠããLaravelã®ãã£ãã«ã§ã€ãã³ããå®å šã«äœ¿çšã§ããŸãã
å ±æã«ã€ããŠã å€ãã®äººãããªãããã«äœããã®æ¢æã®ãœãªã¥ãŒã·ã§ã³ã䜿çšããŠããªãã®ããšå°ããŸãã å®éãã³ã³ãã³ãã«å ããŠããã¹ããåããããåçãã¢ããããŒããããããã¬ããäœæãããããœãŒã·ã£ã«ãããã¯ãŒã¯ã§å ±æãããã§ããç¹å¥ãªãããžã§ã¯ãããããããããŸãã åæã«ãä»ã®äººãå人ã®ãªãã³ã§ãã®åçãèŠãå Žåã圌ã¯ãããã¯ãªãã¯ããŠããã¹ãããŒãžã«ç§»åããå¿ èŠããããŸãã ã€ãŸããNgnixã¬ãã«ã§ã¯ãããããå¿ èŠãªå Žæã«ãªãã€ã¬ã¯ãããã®ã§ã¯ãªããããããã¹ã¿ãã«éä¿¡ããŸãã
ãŸããå ±æã·ã¹ãã ã§ã¯ãç¬èªã®ã«ãŠã³ãã¡ã«ããºã ãå®è£ ããŸããã ãã®çš®ã®ãã¹ãŠã®ã·ã¹ãã ã§ã¯ãé¢é£æ å ±ïŒåæçš¿ã®æ°ïŒã衚瀺ããç¹å®ã®çµ±èšãè©äŸ¡ãªã©ãèšç®ããããã«ããŒã¿ããŒã¹ã«ä¿åããããšãéåžžã«éèŠã§ãã éåžžã«å€ãã®å ŽåãåããŠå ±æã«ééããããã°ã©ããŒã¯ã次ã®ããã«èšç®ãå®è£ ããŸããcronã®ã¿ã¹ã¯ã§ãããã¯ãšã³ãã¯ãœãŒã·ã£ã«ãããã¯ãŒã¯ã®APIã«ãªã¯ãšã¹ããè¡ããæ°ããããŒã¿ãåä¿¡ããŠââä¿åããŸãã ãã®ã¢ãããŒãã«ã¯2ã€ã®é倧ãªæ¬ ç¹ããããŸãã1ã€ç®ã¯ãçŸåšã®æ å ±ãé¢é£ããŠããªãå¯èœæ§ãããããšã§ãïŒããšãã°ãã¯ã©ãŠã³ã¯10åããšã«1000件ã®æçš¿ã®ããŒã¿ãæŽæ°ããŸãïŒãã¢ãã¬ã¹ã¯ããªããçŠæ¢ãããããããŸããã
ç§ãã¡ã¯å察ã«è¡ããŸããã ãŠãŒã¶ãŒããœãŒã·ã£ã«ãããã¯ãŒã¯ã§æçš¿ãå ±æããç¬éã«ãå ±æå ±æãããã¢ããã䜿çšããŠãjsã³ãŒãããïŒãããããã¯ã©ã€ã¢ã³ãã®IPã¢ãã¬ã¹ããïŒãœãŒã·ã£ã«ãããã¯ãŒã¯apiã«åæã«ãªã¯ãšã¹ããè¡ããå®éã®åæçš¿æ°ãååŸãããã®æ°ã«1ãè¿œå ããŸãïŒãŠãŒã¶ãŒãŸã è¡ã£ãŠããŸããïŒãããŒã¿ããŒã¹ã«ä¿åããŸãã ãããã£ãŠãç§ãã¡ã¯åžžã«ææ°ã®ç¶æ ã§ã·ãªã³ã°ã®æ°ã®ããŒã¹ãç¶æããŸããããšãã°ãããªããå ±æããæ°ã10å¢å ãããšãã圱é¿ããããŸããã ãã誰ããããªããšå ±æããŠããŸããããªãã¯ãã®ããã§ãïŒå¥œããªããã«ãã¹ãŠããªã¢ã«ã¿ã€ã ã§æ©èœããŸãïŒã
ããã·ã¥éç¥ãäœæããŠå®è¡ããŸã
11æ14æ¥ã«è¿ã¥ããŠãäœãæªãå åã¯ãããŸããã§ãããç§ãã¡ã¯å·éã«ã¹ãã¬ã¹ãã¹ãã«åæ Œãããµã€ãã®ãªãªãŒã¹æºåãå®å šã«æŽããŸããã é£äžã¯èããå€ããŠãä»ã®ãšããããã·ã¥ã®éçºãããã·ã¥ããããšã«ããŸããã ããŒã¯æã®ãã©ãã£ãã¯ã¯ããŒã³ãåœæ¥ã«äºæ³ããããã®æ¥ã«å å ¥è ããŒã¹ãåéããå¿ èŠããããŸããã ããã·ã¥éç¥ãéçºãããšãã人ã ã¯äž»ãªåé¡ã«æ³šæãæããŸãããéçºãšã©ãŒã®äŸ¡æ Œã¯æ°ãããã¡ã€ã³ã§ããããµãã¹ã¯ã©ã€ããŒããŒã¹ã倱ããŸãã ããšãã°ãããªãã¯é·ãéé·ãéèããæçµçã«ããªãã®ãã©ãŠã¶ã§ãã®ãç§ã¯ç§ã«éç¥ãéä¿¡ããããšã確èªããŸãããã§ãã¯ããã¯ã¹ãåŸãããšã確èªããŸããã ãã®æç¹ã§ã³ãŒãã次ã®ããã«ãªã£ãŠããå ŽåïŒãã以äžã«ãèšå®ãããã·ã¥ããããã®ã¢ã¯ã»ã¹èš±å¯ãèœãšããŸã§ã人ã¯ãã®æ»ãç®ã«ããããšã¯ãããŸããïŒïŒ
ããŒã¯ã³ãä¿åããªãã£ãããã ä¿åãã
ããã·ã¥åã®å®è£ ã決å®ããæ¹æ³ã åºæ¬ã¯ãGoogle FairbaseãµãŒãã¹ã§ãã ååãªæéãæ®ã£ãŠããªãã®ã§ãããã¥ã¡ã³ããééããªãèŠãŠãããã«å¿ããŠãã¹ãŠãè¡ããŸãã ãã®äººããµã€ãã§èš±å¯ãããŠããªãå Žåã圌ãã¯éåžžã«ç°¡åã«ãããããããšã«ããŸããã ãã®äººã®ããã«ãŠããŒã¯ãªCookieãçæãããããšãšãã«ããŒã¿ããŒã¹ã«ããŒã¯ã³ãä¿åããŸãã 次ã«ããµã€ãã«ãã°ã€ã³ãã人ã¯ã圌ãCookieãæã£ãŠããããšã確èªããããŒã¿ããŒã¹ã«ããŒã¯ã³ãå«ãŸããŠããããšã確èªããç¹å®ã®ãŠãŒã¶ãŒã«ããŒã¯ã³ãåãã€ã³ãããå人çãªéç¥ãéä¿¡ããŸãã
Laravel-FCMããã±ãŒãžãã¡ãŒã©ãŒãšããŠäœ¿çšããããšã«ããŸããã FCMãŸãã¯Firebaseã䜿çšãã人ã¯èª°ã§ããã¡ãã»ãŒãžãéä¿¡ããã«ã¯ããã¹ãŠã1,000åã®ããŒã¯ã³ã®ããã¯ã«åå²ããåå¥ã®èŠæ±ãè¡ãå¿ èŠãããããšãç¥ã£ãŠããŸãã Laravel-FCMãåŒãç¶ããŸãã åæã«ãéåžžã«ç°¡åã«ãã€ããŒããããã·ã¥åã§çæããå人çšã®ããçš®ã®å人çãªåçãå人çãªèŠåºããå人çãªããã¹ããå人çãªãªã³ã¯ãªã©ãäœæããããšãã§ããŸãã
æéããããŸããã 圌ãã¯ãªãªãŒã¹ã®1æéåã«ããã·ã¥ãéå§ããŸããã ç¿æ¥ã®å€æ¹ãã¶ãŽã£ã¬ããžãã¡ãã¥ãŒãµãCNNãBBCããããžã§ã¯ãã«ã€ããŠæžãã圌ãã¯ãã¬ãã£ã³ãã®ã£ã©ãªãŒã§ã¡ãã£ã¢ã®å®ŽäŒãéå¬ããŸããã ãããŠãã®ãããªå°ããªç®èïŒ2016幎12æãŸã§ãåœç€Ÿã®æ¬ç€Ÿã¯æ£åŒã«æ£®ã®çãäžã«ãããŸããã ãããã©ãã»ã©ã¯ãŒã«ãæ³åããŠã¿ãŠãã ãããCNNã§æžãããããžã§ã¯ããå®è¡ãããã©ã¬ã¹ãã§å®è¡ããŸããã
ããŒã«ã©ã€ãºãè¡ã
ã ãããç§ãã¡ã¯ãããžã§ã¯ããç«ã¡äžãããããæ©èœãããã°ãä¿®æ£ããŸããã12æã¯åºã«ãããããŒã«ã©ã€ãºãè¡ãå¿ èŠããããŸãã ãããžã§ã¯ãã2æ¥ã§ããŒã«ã©ã€ãºããŸããã
ãã®ãããªããŒã¿ããŒã¹ã«2ã€ã®èšèªããŒãžã§ã³ã«é¢ããæ å ±ãä¿åããããšã«ããŸããã å¥ã®èšèªïŒæçš¿ãããŒããŒãã°ã«ãŒãããããªãå°çäœçœ®æ å ±ïŒã«ç¿»èš³ã§ããåãšã³ãã£ãã£ã«å¯ŸããŠãèšèªãæ ŒçŽããlang-ãã·ã¢èª/ 1è±èªïŒãšãã³ããŒæã«ãããã¯ã¢ãããã¬ã³ãŒãã®IDãä¿åãããmirror_idãã£ãŒã«ããè¿œå ããŸããã
ãã®ãããªã³ããŒã§ã¯ãããšãã°ããªããžã§ã¯ãã«äœããã®é¢ä¿ãããå ŽåïŒäœæè ãæçš¿ããžãªãã±ãŒã·ã§ã³ãæã£ãŠããå ŽåïŒãããã«ãã®ãšã³ãã£ãã£ããã¹ãŠã³ããŒãããŠããå ŽåïŒmirror_idã空ã§ãªãå ŽåïŒããã®ãšã³ãã£ãã£ãžã®é¢ä¿ãã³ããŒãããã¬ã³ãŒãã«åå²ãåœãŠãããŸãããã§ãªãå Žåã¯ãæåã«ã³ããŒãããŠããåæ¥ç¶ãããŸãã
ããšãã°ããã·ã¢èªçã§ã¯ããã³ã©ã¹IIã«ãã£ãŠæžããã2ã€ã®æçš¿ããããŸããæåã®æçš¿ãã³ããŒãããšãæçš¿ãšäœæè ã®äž¡æ¹ãã³ããŒããã2çªç®ã®æçš¿ãã³ããŒãããšã2çªç®ã®æçš¿ã®ã¿ãã³ããŒãããäœæè ã«ã¯ä»¥åã«ã³ããŒãããNicholas IIãå²ãåœãŠãããŸãã
次ã¯ïŒ
ãããžã§ã¯ãã¯çŸåšã©ã®ããã«çããŠããŸããïŒ åºæ¬çãªæ©èœã¯ãã§ã«éçºãããŠãããå®éã«ã¯äœãå€æŽãããŠãããã ç¹å¥ãªãããžã§ã¯ã ïŒã²ãŒã ããã¹ãïŒãè¡ã£ãŠããŸãããããŸã§ã®ãšããã誰ãããã¹ãŠãæžãçŽãããšããŠããŸãã ç§ãã¡ã¯å¹³åçãªç®çã®ããã«ãšãã«ã®ãŒãéããŸã-ç¹å¥ãªãããžã§ã¯ãããããäœããå®ç§ã§ã¯ãªãã£ãå Žåããããæžãæãããæ°ããç¹å¥ãªãããžã§ã¯ãã«å®è£ ããŸãã
ããšãã°ãç§ãã¡ãäœæããç¹å¥ãªãããžã§ã¯ãããïŒ
- ãã¬ãŒãã³ããã·ã¢ã«å ¥ããªãã§ãã ããããšããã²ãŒã ã¯ç«ã«é¢ããæåãªè«çã²ãŒã ã§ããã¬ãŒãã³ãæãŸããªããã°ãªããŸããã§ããã
- ã Tinder1917ã -é©åœã®è±éãšç¥ãåãã®ãµãŒãã¹ã
- ã1917幎ã«ããªãã¯èª°ã§ããïŒããšãããã¹ããæãäžäœã«ã©ã³ã¯ããã倧å¢ã®äººãåå ããçŽ150äžä»¶ã®çµæãçæãããŸããã
çµè«
- è€éããåçŽã«ããããšã¯ç°¡åã§ãäœããè€éã«ããåçŽãªãã®ãè€éã«ããããšã¯ããã«ç°¡åã§ãã
- ç©èªãæãåºããŠãã ãããé©åœã¯å¿ ãããè¯ãçµæã«ã€ãªãããšã¯éããŸããã
- ããªãã®ééãããåŠã³ãŸãããã ãµãŒããŒãèªåã§èšçœ®ãããŸã§ããªãå¯ãã®ãç解ã§ããŸããã ããªãèªèº«ãäœããã®å°é£ãªééããç¯ããŸã§ãäœããå£ããçç±ãç解ããããšã¯ã§ããŸããã è ç«ãŠäŒãã§å€±ããããã¡ã€ã³ã¯ãææªã®äºæ ã§ã¯ãããŸããã
- ãã¡ãã·ã§ã³ãè¿œããããªãã§ãã ããã ããªãã®ã¹ã¿ãã¯ãèŠãŠãããã«å€§ããªåºãäœããªãã§ãã ããã æ°ããåé¡ã解決ããå¿ èŠãããå Žåã¯ãããã«åã£ãããŒã«ãæ¢ã«ãããã©ããã確èªããŠãã ãããæ°ãããã¡ãã·ã§ããã«ãªãã¬ãŒã ã¯ãŒã¯ãèŠã€ããå¿ èŠã¯ãããŸããããã®ããã¥ã¡ã³ãã¯äžåœèªã®ã¿ã§ã次ã®ããã«ãªããŸããè©ŠããŸããã ããã¯å¿ èŠãããŸããã
- ãããŠã99.99ã®çšŒåæéã®æ°å€ã¯å¶éã§ã¯ãããŸããã ãã€ã§ãæ¹åã§ããŸãã