ãã£ãã·ã¥ã¯ãäœããããŒã¿ãžã®ã¢ã¯ã»ã¹ãå¿ èŠãšãããšãã«ãããé«éã«ååŸã§ããããäžæçã«ããŒã¿ãä¿åããå Žæã§ãããã£ãã·ã¥ãšã¯ããã®ããŒã¿ãä¿åããããã»ã¹ãæããŸãããŸããæè¡çã§ã¯ãªãæèã§ã䟿å®äžäœããä¿åããå ŽæãšããŠããã£ãã·ã¥ããšããçšèªã䜿ãããŠããã®ãè³ã«ããããšããããããããŸãããäŸãã°ããã£ã³ãããã€ãã³ã°ããã人ããéãéã«é£æãããã£ãã·ã¥ãããããšããããŸãããããããªã³ã©ã€ã³ã§ã®ãã£ãã·ã¥ã®æå³ã詳ããèŠãŠãããŸãããã
çæ³çãªäžçã§ã¯ãWebãµã€ãã«ã¢ã¯ã»ã¹ãããŠãŒã¶ãŒããµã€ãããã°ããã¬ã³ããªã³ã°ããããã«å¿ èŠãªãã¹ãŠã®ããŒã¿ã¢ã»ãããããŒã«ã«ã«ä¿åãããŠããŸããããããã¢ã»ããã¯å¥ã®å ŽæãããããããŒã¿ã»ã³ã¿ãŒãã¯ã©ãŠããµãŒãã¹ã«ãããããããååŸããã«ã¯ã³ã¹ããããããŸãããŠãŒã¶ãŒãè² æ ããã®ã¯ã¬ã€ãã³ã·ãã€ãŸãã¢ã»ãããçæããŠèªã¿èŸŒãã®ã«å¿ èŠãªæéã§ãããäžæ¹ã§ã客æ§ã¯ééçãªã³ã¹ããè² æ ããŸããæéã«ã¯ãã³ã³ãã³ãããã¹ãããããã®ã³ã¹ãã ãã§ãªããããŒã¿éä¿¡ã³ã¹ããšåŒã°ãããã®ãå«ãŸããŸãïŒããã¯ã蚪åè ãããªã¯ãšã¹ãããã£ãéã«ããã®ã³ã³ãã³ããã¹ãã¬ãŒãžããç§»åããããã®æéã§ããWebãµã€ããåä¿¡ãããã©ãã£ãã¯ãå€ãã»ã©ããªã¯ãšã¹ãã«ã¬ã¹ãã³ã¹ããŠã³ã³ãã³ããé ä¿¡ããããã«æ¯æãéé¡ãå¢ããŸãããã®å€ãã¯éè€ãããªã¯ãšã¹ãã§ããå¯èœæ§ããããŸãã
ããã§ãã£ãã·ã¥ã圹ç«ã¡ãŸãããã£ãã·ã¥ã«ã³ã³ãã³ãã®è€è£œãä¿åããããšã§ããã®é ä¿¡ãé«éåããªããã䜿çšãããªãœãŒã¹ãæããããŸãã
ãã£ãã·ã¥ã®ä»çµã¿
ãã£ãã·ã¥ã®ä»çµã¿ãçè§£ããã«ã¯ããŸã HTTP ãªã¯ãšã¹ããšã¬ã¹ãã³ã¹ã®ä»çµã¿ãçè§£ããå¿ èŠããããŸãããŠãŒã¶ãŒããªã³ã¯ãã¯ãªãã¯ãããããŸãã¯ã¢ãã¬ã¹ããŒã«Webãµã€ãã® URL ãå ¥åãããšããã©ãŠã¶ïŒã¯ã©ã€ã¢ã³ãïŒããã³ã³ãã³ãã眮ãããŠããå ŽæïŒãªãªãžã³ãµãŒããŒïŒã«ãªã¯ãšã¹ããéä¿¡ãããŸããæ¬¡ã«ããªãªãžã³ãµãŒããŒã¯ãªã¯ãšã¹ããåŠçããŠã¬ã¹ãã³ã¹ãã¯ã©ã€ã¢ã³ãã«éä¿¡ããŸãã

ãã®ããã»ã¹ã¯ç¬éçã«è¡ãããŠããããã«èŠãããããããŸããããå®éã«ã¯ãªãªãžã³ãµãŒããŒããªã¯ãšã¹ããåŠçããã¬ã¹ãã³ã¹ãçæããŠãã¯ã©ã€ã¢ã³ãã«éä¿¡ããã®ã«æéãããããŸããããã«ãWebãµã€ãã®ã¬ã³ããªã³ã°ã«ã¯å€ãã®ç°ãªãã¢ã»ãããå¿ èŠã§ãããããç»åãHTML WebããŒãžãCSSãã¡ã€ã«ãªã©ããµã€ããæ§æããããŸããŸãªããŒã¿ã«å¯ŸããŠè€æ°ã®ãªã¯ãšã¹ããéä¿¡ããå¿ èŠããããŸãã
ãã®æç¹ã§ããŠãŒã¶ãŒã®ããŒã«ã«ãã£ãã·ã¥ãé¢ä¿ããŠããŸãããŠãŒã¶ãŒã®ãã©ãŠã¶ã¯ãããŽå ¥ãã®ããããŒç»åããµã€ãã®ã¹ã¿ã€ã«ã·ãŒããªã©ã®éçã¢ã»ããã®äžéšãããã€ã¹äžã«ãã£ãã·ã¥ã§ãããããæ¬¡åãã®ãµã€ãã«ã¢ã¯ã»ã¹ããéã®ããã©ãŒãã³ã¹åäžã«åœ¹ç«ã¡ãŸãããã ãããã®çš®ã®ãã£ãã·ã¥ã圹ç«ã€ã®ã¯ãã®1人ã®ãŠãŒã¶ãŒã ãã§ãã
èªç€Ÿãµã€ãã蚪åãããã¹ãŠã®ãŠãŒã¶ãŒã®ããã«ã¢ã»ããããã£ãã·ã¥ãããå ŽåããªããŒã¹ãããã·ãªã©ã®ãªã¢ãŒããã£ãã·ã¥ã®å©çšããå§ãããŸãã
ãã£ãã·ã¥ã«ã¯ã©ã®ãããªçš®é¡ããããŸããïŒ
ã€ã³ã¿ãŒãããã€ã³ãã©ã¹ãã©ã¯ãã£ã®ããŸããŸãªã¬ãã«ã§æ¡çšãããŠããè€æ°ã®çš®é¡ã®ãã£ãã·ã¥ãããããããããç¹å®ã®ç®çãæãããŸããããŸããŸãªçš®é¡ã®ãã£ãã·ã¥ãšãããããããã¹ã ãŒãºãªãã©ãŠãžã³ã°äœéšã«ã©ã®ããã«è²¢ç®ããããèŠãŠãããŸãããã
1. CDN ãã£ãã·ã¥
CDNïŒã³ã³ãã³ãé ä¿¡ãããã¯ãŒã¯ïŒã§ãã£ãã·ã¥ããããšã§ããŠãŒã¶ãŒã«ããè¿ãå Žæããã³ã³ãã³ããé ä¿¡ããŠã¬ã€ãã³ã·ãççž®ããèªã¿èŸŒã¿æéãå€§å¹ ã«æ¹åã§ããŸããCDN ãã£ãã·ã¥ã¯ãäžçäžã«åæ£ããããšããžãµãŒããŒã«ã³ã³ãã³ãã®è€è£œãä¿åããä»çµã¿ãæå³ããŸãããŠãŒã¶ãŒãã³ã³ãã³ãããªã¯ãšã¹ããããã³ã«ãCDN ã¯ãªãªãžã³ãµãŒããŒãå¿çããã®ãåŸ ã€ã®ã§ã¯ãªããæãè¿ãå Žæã«ãããšããžãµãŒããŒããã³ã³ãã³ããé ä¿¡ããŸããããã«ããããªã¯ãšã¹ããè€æ°ã®ãµãŒããŒã«åæ£ãããããããªãªãžã³ãµãŒããŒã®ã¯ãŒã¯ããŒããæžããšåæã«ãããå€ãã®ãã©ãã£ãã¯ãåŠçã§ããããã«ãªããŸãã
2. ãµãŒããŒãµã€ããã£ãã·ã¥
CDN ãã£ãã·ã¥ãšç°ãªãããµãŒããŒãµã€ããã£ãã·ã¥ã§ã¯ãããã«äœ¿çšå¯èœãªç¶æ ã®ããŒã¿ã®è€è£œããªãªãžã³ãµãŒããŒã«ä¿åãããããããŠãŒã¶ãŒã®ãã©ãŠã¶ã¯ããŒãžãèªã¿èŸŒããã³ã«ã³ã³ãã³ãã®åèŠçŽ ãæ°ãã«ãªã¯ãšã¹ãããã«æžã¿ãŸãããã®ããã«åå©çšå¯èœãªããŒã¿ãªããžã§ã¯ããä¿åããããšã§ãããŒã¿ããŒã¹ã¯ãšãªã®æ°ãæå°éã«æããWebãµã€ãã®ããã©ãŒãã³ã¹ã匷åã§ããŸãããµãŒããŒãµã€ããã£ãã·ã¥ã«ã¯ä»¥äžãå«ãè€æ°ã®åœ¢åŒããããŸãã
ããŒãžãã£ãã·ã¥ïŒHTML ããŒãžã®è€è£œãä¿å
ãªããžã§ã¯ããã£ãã·ã¥ïŒåå©çšå¯èœãªããŒã¿ãªããžã§ã¯ããä¿æããŸã
Opcode caching: äºåã«ã³ã³ãã€ã«ããã PHP ã³ãŒããä¿å
ããŒã¿ããŒã¹ãã£ãã·ã¥ïŒããŒã¿ããŒã¹ã¯ãšãªã®çµæããã£ãã·ã¥ããŸã
ãµãŒããŒãµã€ããã£ãã·ã¥ã¯ãã³ã³ãã³ãã ãã§ãªããå®å šãªWebããŒãžããåã ã®ããŒã¿ããŒã¹ã¯ãšãªãŸã§ã®ããŒã¿ã®ã³ããŒã«ã䜿çšãããŸãã
3. DNS ãã£ãã·ã¥
DNS ïŒãã¡ã€ã³ããŒã ã·ã¹ãã ïŒè§£æ±ºã¯ãWeb ãã©ãŠã¶ã www.Fastly.com ã®ãããªãã¡ã€ã³åãããã® Webãµã€ãããã¹ãããŠãããªãªãžã³ãµãŒããŒã®ç¹å®ã® IP ã¢ãã¬ã¹ã«å€æããããã« Web ãã©ãŠã¶ã䜿çšããããã»ã¹ã§ããWeb ãã©ãŠã¶ã¯ DNS ãã£ãã·ã¥ã䜿çšããŠãã®ããã»ã¹ã®é床ãåäžãããŸãããã㯠DNS ã¯ãšãªã®çµæãããŒã«ã«ã«ä¿åããä»åŸã®ã¢ã¯ã»ã¹æã«ãªã¯ãšã¹ããããé«éã«è§£æ±ºã§ããããã«ããããã§ããåºæ¬çã«ããã©ãŠã¶ã¯ã°ããŒãã« DNS ãµãŒããŒã確èªããåã«ãæ£ãã IP ã¢ãã¬ã¹ããã§ã«èªèããŠãããã©ããã確èªããããã«ç¬èªã® DNS ãã£ãã·ã¥ã確èªããŸããããã«ããããã¡ã€ã³åã®è§£æ±ºã«å¿ èŠãªæéãå€§å¹ ã«ççž®ãããWebãµã€ããžã®ã¢ã¯ã»ã¹ãé«éåãããŸãã
ãããŸã§ã«åãäžããåã®2çš®é¡ã®ãã£ãã·ã¥ãšã¯ç°ãªããDNS ãã£ãã·ã¥ã¯ãµãŒããŒããŒã¹ã§ã¯ãªãããŠãŒã¶ãŒã«ããŒã«ã©ã€ãºãããŠããŸãããŸããã³ã³ãã³ãã®é ä¿¡ãããŒã¿ããŒã¹ã¯ãšãªã®å¹çåã§ã¯ãªãããã¡ã€ã³åã®è§£æ±ºã«ç¹åããŠäœ¿çšãããŸãã
4. ã³ã³ãã³ããã£ãã·ã¥
ã³ã³ãã³ããã£ãã·ã¥ã¯ããŠãŒã¶ãŒã«ããå¹ççã«æäŸããããã«ãè€æ°çš®é¡ã® Web ã³ã³ãã³ããè€è£œããŠä¿åããããšãæããããäžè¬çãªãã£ãã·ã¥ã«ããŽãªãŒã§ããã³ã³ãã³ããã£ãã·ã¥ã¯ããµãŒããŒã¬ãã«ïŒãµãŒããŒãµã€ããã£ãã·ã¥ã CDN ãã£ãã·ã¥ãªã©ïŒã§çºçããŸãããã ãã以äžãå«ãããŸããŸãªä»ã®ã¬ãã«ã§ãçºçããå¯èœæ§ããããŸãã
ãã©ãŠã¶ãã£ãã·ã¥ïŒãŠãŒã¶ãŒã®ããã€ã¹ã« Web ã³ã³ãã³ããããŒã«ã«ã«ä¿åããããšã§ãåŸã§ãµã€ãã«ã¢ã¯ã»ã¹ããéã«ããé«éãªåèªã¿èŸŒã¿ãå¯èœã«ããŸãã
ãããã·ãã£ãã·ã¥ïŒWeb ã³ã³ãã³ãã¯ããããã¯ãŒã¯äžã§ãŠãŒã¶ãŒãšãªãªãžã³ãµãŒããŒã®éã«äœçœ®ããäžéãµãŒããŒïŒãããã·ïŒã«ä¿åãããŸãã
ã²ãŒããŠã§ã€ã»ãã£ãã·ã¥ïŒããŒã¿ã®è€è£œãçµç¹ã®ãããã¯ãŒã¯å ã®ã²ãŒããŠã§ã€ã«ä¿åãããŸãã
ã³ã³ãã³ããã£ãã·ã¥ã¯éåžžã«å€æ§ã§ãè€æ°ã®ã¬ãã«ã§çºçããç»åãåç»ãå®å šãª HTML ããŒãžãªã©ãå¹ åºãã³ã³ãã³ãã¿ã€ãã察象ãšããŠããŸããã³ã³ãã³ãã®è€è£œã«ããã¢ã¯ã»ã¹ããããããããšã§ãã³ã³ãã³ããã£ãã·ã¥ã¯ãŠãŒã¶ãŒã« ããé«éã§ã¹ã ãŒãºãªãã©ãŠãžã³ã°äœéš ãæäŸãããµã€ãã®èªã¿èŸŒã¿ãããå¹ççã«ãããããã¯ãŒã¯å šäœã®åž¯åå¹ äœ¿çšéãåæžããŸãã
CDN ãšãã£ãã·ã¥
ãã£ãã·ã¥ã¯ãåŸã§äœ¿çšããããã«ããŒã¿ã®è€è£œãæå ã«ä¿æããä»çµã¿ã§ããããããããã®è€è£œããã§ã«ååšããããšããããã¯ãŒã¯ã·ã¹ãã ãèªèããŠããå¿ èŠããããŸããã³ã³ãã³ãããã£ãã·ã¥ã§èŠã€ãããšãããã£ãã·ã¥ãããããçºçããŸãããã£ãã·ã¥ãããã«ãã£ãŠãã³ã³ãã³ãããšããžãµãŒããŒãããŠãŒã¶ãŒã«çŽæ¥é ä¿¡ãããããèªåçã«ããªã¬ãŒããããããèªã¿èŸŒã¿æéã®ççž®ã«ã€ãªãããŸããããã£ãã·ã¥ãããçãã¯ãã¯ãšãªããã£ãã·ã¥ãããã«ãªãå²åãæããŸãã
äžè¬çã« CDN ã§ã¯ãä»ã®ãµãŒããŒãµã€ãã®ãã£ãã·ã¥ã·ã¹ãã ããããã£ãã·ã¥ãããçãé«ããªããŸããããã¯ã倿°ã®ãšããžãµãŒããŒãã°ããŒãã«ã«ãããã€ãããšã³ããŠãŒã¶ãŒã®è¿ãã«æŠç¥çã«é 眮ããŠããããã§ããCDN ã¯éåžžãå€§èŠæš¡ãªãŠãŒã¶ãŒããŒã¹ã«ãµãŒãã¹ãæäŸããŠãããããå°ççã«è¿ãå°åã®ãŠãŒã¶ãŒã«ãã£ãŠããã®å°åã®ãšããžãµãŒããŒã«ããŒã¿ã®ã³ããŒããã§ã«ä¿åãããŠããå¯èœæ§ãåžžã«é«ããªããŸãã
ãããããã£ãã·ã¥ãããã¯å¿ ããããŠãŒã¶ãŒãªã¯ãšã¹ãã®çµæãšã¯éããŸããããµãŒããŒãã³ã³ãã³ãããšããžããé ä¿¡ã§ããããã®ãããªãªãžã³ãµãŒããŒããååŸããªããã°ãªããªãå ŽåããããŸããããã¯ããã£ãã·ã¥ãã¹ããšåŒã°ããããŸããŸãªçç±ã§çºçããå¯èœæ§ããããŸã:
ååãªã¯ãšã¹ã (ã³ãŒã«ããã£ãã·ã¥)
ãã£ãã·ã¥ã®ç¡å¹åãŸãã¯ããŒãž
容éã®éç
ã³ã³ãã³ãã®æŽæ°
ãŸãããã£ãã·ã¥ãã¹ã¯ã³ã³ãã³ãã倱å¹ããå Žåã«ãçºçããŸããã³ã³ãã³ãã¯æå¹æéïŒTTLïŒå€ã«åºã¥ã㊠CDN ã«ãã£ãã·ã¥ãããŸãããã®æéå€ãæéåãã«ãªããšãã³ã³ãã³ãã¯ãã£ãã·ã¥ããåé€ãããŸããéçºè ããããã¯ãŒã¯ãšã³ãžãã¢ã¯ããã£ãã·ã¥ãããã³ã³ãã³ãã®çš®é¡ã«å¿ã㊠TTL å€ãèšå®ããŸãããã¥ãŒã¹èšäºãªã©ã®åçã³ã³ãã³ãã¯ãæ°ç§ããæ°åã®çã TTL å€ã«ãªãåŸåããããŸããå¯Ÿç §çã«ãCDN ãã£ãã·ã¥ã§ã¯ãç»åãåç»ãCSSãJavaScript ããŒã¿ãªã©ã®ã³ã³ãã³ããéçã§ãããããæ°æ¥ããæ°é±éã®ããé·ã TTL å€ã«ãªãåŸåããããŸãã
ãã£ãã·ã¥ãã¯ãªã¢ãã¹ãã§ããïŒ
ç¶æ³ã«ãã£ãŠã¯ãã£ãã·ã¥ãã¯ãªã¢ããããšãæçãªå ŽåããããŸãããå¿ ãããå¿ èŠãŸãã¯æšå¥šãããããã§ã¯ãããŸããã以äžã§ã¯ããã£ãã·ã¥ãã¯ãªã¢ãã¹ãæãäžè¬çãªçç±ã®äžéšãã玹ä»ããŸãã
ã¹ãã¬ãŒãžå®¹éã®è§£æŸ
ããŒã«ã«ã§ã¯ããã£ãã·ã¥ãããããŒã¿ãæéã®çµéãšãšãã«èç©ããã·ã¹ãã äžã®ã¹ãã¬ãŒãžã¹ããŒã¹ãéå°ã«å æããããšããããŸããäŸãã°ãããã¯ã¹ãã¬ãŒãžå®¹éãéãããŠããããŒãããœã³ã³ããããããã¯ãªã©ã®å人çšããã€ã¹ã§ã¯ãç¹ã«åé¡ã«ãªãããšããããŸãããã£ãã·ã¥ãã¯ãªã¢ãããšã貎éãªã¹ãã¬ãŒãžã¹ããŒã¹ãè§£æŸã§ããããšãå€ããããã€ã¹ãããã¹ã ãŒãºã«åäœããããã«ãªããŸãã
ããã©ãŒãã³ã¹åé¡ã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°
ãã£ãã·ã¥ãããããŒã¿ã¯ãæéã®çµéãšãšãã«ç Žæãããå€ããªã£ããããããšããããŸããããã«ãããWebãµã€ãã®èªã¿èŸŒã¿ãé ããªã£ãããäžå ·åãçºçãããããŠãéèŠãªæ©èœã«ã¢ã¯ã»ã¹ã§ããªããªãå¯èœæ§ããããŸãããã£ãã·ã¥ãã¯ãªã¢ããããšã§ãããããåé¡ã解決ããç ŽæããããŸãã¯å€ããªã£ããã¡ã€ã«ãåé€ã§ããããšããããããŸãã
ãã©ã€ãã·ãŒã®æ¹å
ãã£ãã·ã¥ãããããŒã¿ã«ã¯ããã°ã€ã³ã¯ã¬ãã³ã·ã£ã«ããã©ãŠãžã³ã°å±¥æŽããŸãã¯ãã®ä»ã®å人ããŒã¿ãªã©ã®æ©å¯æ å ±ãå«ãŸããå ŽåããããŸãããã£ãã·ã¥ãã¯ãªã¢ããããšã¯ããã®å人æ å ±ãã·ã¹ãã ããåé€ããŠä¿è·ããããã®è¿ éãªæ¹æ³ã§ãã
ãã ãããã£ãã·ã¥ãã¯ãªã¢ããå¿ èŠããªãããŸãã¯æšå¥šãããªãå ŽåããããŸãã
1. ããŒã¿ã®æå€±
ãŠãŒã¶ãŒããã£ãã·ã¥ãã¯ãªã¢ãããšããŒã¿ãåé€ãããWebãµã€ããã¢ããªã±ãŒã·ã§ã³ã®èªã¿èŸŒã¿ãå éããŸããäžæ¹ããã£ãã·ã¥ã®ã¯ãªã¢ã«ãããã¡ãªããã¯ãWebãµã€ããã¢ããªã±ãŒã·ã§ã³ããªãœãŒã¹ãäžããåèªã¿èŸŒã¿ããå¿ èŠãçºçããããšã§ããããã«ããããã£ãã·ã¥ãåæ§ç¯ããããŸã§èªã¿èŸŒã¿ãé ããªããŸãã
2. äžæçãªè§£æ±ºç
ãã£ãã·ã¥ã®ã¯ãªã¢ã«ãã£ãŠç¹å®ã®ããã©ãŒãã³ã¹åé¡ã解決ãããããšããããŸãããå€ãã®å Žåããã®ä¿®æ£ã¯äžæçãªãã®ã«ãããŸãããæ ¹æ¬ã«ããåé¡ã解決ãããªãéãããã£ãã·ã¥ãåæ§ç¯ããããšãããã©ãŒãã³ã¹åé¡ãåçºããå¯èœæ§ããããŸããé·æçãªè§£æ±ºçãå®çŸããã«ã¯ãæ ¹æ¬åå ãç¹å®ããŠå¯ŸåŠããããšãéèŠã§ãã
3. ããã©ãŒãã³ã¹äžã®ã¡ãªããã®æå€±
ãã£ãã·ã¥ã®äž»ãªã¡ãªããã®ã²ãšã€ã¯ãããã©ãŒãã³ã¹ã®åäžã§ãããã£ãã·ã¥å ã®ããŒã¿ãåé€ãããšããã®ä»å 䟡å€ã倱ãããŸãã
Fastly ã®ãã£ãã·ã¥æ©èœ
Fastly 㯠CDN ã§ãã£ãã·ã¥ãå©çšããŠããŠãŒã¶ãŒãžã®ã³ã³ãã³ãé ä¿¡ãé«éåããŠããŸããäžçäžã®åœç€ŸãµãŒããŒã«ã³ã³ãã³ãã®å®å šãªã³ããŒãä¿åããããšã§ãã¬ã€ãã³ã·ãšãµãŒããŒè² è·ã軜æžãããŠãŒã¶ãŒãæãè¿ããµãŒããŒããæéã§ã¢ã¯ã»ã¹ã§ããããã«ããŸãã
Fastly ã®ãã£ãã·ã¥æ©èœã«ã¯ãè¿ éãªã³ã³ãã³ãæŽæ°ãå¯èœã«ãã Instant Purge⢠ãšãã«ã¹ã¿ãã€ãºå¯èœãªãã£ãã·ã¥ã«ãŒã«ãå«ãŸããŸããFastly ã®ã¢ãããŒããéããŠãã³ã³ãã³ããžã®ã¢ã¯ã»ã¹ãå éãããŠãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžãããªãã垯åå¹ ãšããŒã¿éä¿¡ã³ã¹ããåæžã§ããŸãã