ÔÚµ±½ñÕâ¸öÄÚÈÝΪÍõµÄʱÆÚ£¬ÊÓÆµÒÑÈ»³ÉΪÐÅÏ¢´«µÝºÍÓéÀÖÏû·ÑµÄÖ÷Á÷´ó¾Ö¡£´Ó¶ÌÊÓÆµµÄË鯬»¯ÓéÀÖ£¬µ½¸ßÇ峤ƬµÄ³Á½þʽÂÄÀú£¬Óû§¶ÔÊÓÆµ²¥·ÅµÄÁ÷³©¶ÈºÍ²»±äÐÔÓÐ׎üºõ¿Ì±¡µÄÒªÇó¡£Ò»µ©³öÏÖ¼ÓÔØ»ºÂý¡¢¿¨¶Ù¡¢ÉõÖÁ²¥·Åʧ°Ü£¬Óû§µÄÄÍÐıã»áѸ¿ìÏûÄ¥£¬½ø¶øÑ¡ÔñÍÑÀë¡£×÷Ϊ¸ß»úÄܵÄWeb·þÎñÆ÷£¬NginxÒÔÆä׿ԽµÄ²¢·¢´¦ÖÃÄÜÁ¦ºÍ½Ã½ÝµÄÅäÖÃÑ¡Ï³ÉΪÁËÊÓÆµÓÅ»¯ÁìÓò²»³É»òȱµÄÀûÆ÷¡£
½ñÌ죬ÎÒÃǾÍÀ´Ò»Â·Éî¿ÌË÷ÇóNginxÈôºÎʵÏÖ100%µÄÊÓÆµÓÅ»¯£¬ÎªÄúµÄƽ̨עÈëÇ¿¾¢µÄ¶¯Á¦£¬ÈÃÿһ´ÎÊÓÆµ²¥·Å¶¼³ÉΪһ´ÎÓäÔõÄ?ÏíÊÜ¡£
Ò»¡¢NginxµÄÖ÷ÌâÓÅÊÆ£ºÎªºÎËüÊÇÊÓÆµÓÅ»¯µÄ²»¶þ֮ѡ£¿
ÔÚÉî¿ÌNginxµÄ¾ßÌåÓÅ»¯¼¼ÇÉ֮ǰ£¬ÎÒÃDz»·ÁÏÈÀí½âÒ»ÏÂËüΪºÎÔÚÊÓÆµÁìÓòÈç´ËÊÜÓ½Ó¡£NginxµÄÖ÷Ì⾺ÕùÁ¦ÔÚÓÚÆäÊÂÎñÇý¶¯¡¢Òì²½·Ç×èÈûµÄ¼Ü¹¹¡£Ó봫ͳµÄ?Ïß³ÌÄ£ÐÍ·ÖÆç£¬NginxʹÓÃÉÙÁ¿µÄ¹ý³ÌºÍÊÂÎñÑ»·À´´¦ÖôóÁ¿²¢·¢Ïνӡ£ÕâÒâζ×Å£¬¼´±ãÔÚÃæ¶Ôº£Á¿Óû§Í¬Ê±ÒªÇóÊÓÆµ×ÊԴʱ£¬NginxÒ²ÄÜά³Ö¼«µÍµÄ×ÊÔ´¿÷ËðºÍ¼«¸ßµÄÏìÓ¦¿ìÂÊ¡£
¸ß²¢·¢´¦ÖÃÄÜÁ¦£ºÊÓÆµÁ÷µÄ´«Êäͨ³£Éæ¼°´óÁ¿µÄÏνӣ¬Nginx¿ÉÄÜÇáËÉÓ¦¶ÔÊýÒÔÍò¼ÆÉõÖÁÊýÊ®Íò¼ÆµÄ²¢·¢Ïνӣ¬±£ÕÏÿ¸öÓû§¶¼ÄÜ»ñµÃ²»±äÁ÷³©µÄ²¥·Å·þÎñ¡£¸ßЧµÄ¾²Ì¬Îļþ·þÎñ£ºÊÓÆµÎļþ×ÔÉí¾ÍÊǾ²Ì¬×ÊÔ´£¬NginxÔÚ¾²Ì¬Îļþ·þÎñ·½ÃæÕ¼ÓÐÎ޿ɱÈÁ¦µÄÓÅÊÆ£¬ÆäÓÅ»¯µÄÎļþI/OºÍÄÚ´æÖÎÀí£¬¿ÉÄÜÒÔ×î¿ìµÄ¿ìÂʽ«ÊÓÆµÊý¾ÝÍÆË͸ø¿Í»§¶Ë¡£
½Ã½ÝµÄÄ£¿é»¯Éè¼Æ£ºNginxÕ¼Óзá˶µÄÄ£¿é£¬Äܹ»Æ¾¾ÝÏÖʵÐèÒª½øÐмÓÔØºÍÅäÖã¬ÀýÈçngx_http_flv_module¡¢ngx_http_mp4_moduleµÈ£¬ÕâЩģ¿éרÃÅÕë¶ÔÊÓÆµÁ÷µÄ´«Êä½øÐÐÁËÓÅ»¯¡£·´Ïò´úÀíÓë¸ºÔØÆ½ºâ£º½áºÏCDN£¨ÄÚÈÝ·Ö·¢ÍøÂ磩»òÄÚ²¿¸ºÔØÆ½ºâ£¬NginxÄܹ»½«ÊÓÆµÒªÇó·Ö·¢µ½?¶ą̀·þÎñÆ÷£¬·ÖɢѹÁ¦£¬Ìá¸ßÕûÌåµÄ¿ÉÓÃÐԺͻúÄÜ¡£
ÓÅ»¯ÊÓÆµ²¥·Å£¬²¢·ÇÒ»»Ó¶ø¾Í£¬¶øÊÇÒ»¸öÑÐò½¥½øµÄ¹ý³Ì¡£ÎÒÃÇÏÈ´ÓNginxµÄ»ù´¡ÅäÖö¯ÊÖ£¬´òºÃ¼áʵµÄ»ù´¡¡£
ÆôÓÃKeep-Alive£ºÎ¬³Ö¿Í»§¶ËÓë·þÎñÆ÷Ö®¼äµÄ³¤Ïνӣ¬Äܹ»ÏÔÖøÏ÷¼õÿ´ÎÒªÇóµÄ³ÉÁ¢ºÍ¹Ø¹ØTCPÏνӵĿªÏú£¬¶ÔÓÚ³ÖÐøµÄÊÓÆµÁ÷´«ÊäÖÁ¹Ø³ÁÒª¡£ÔÚhttp¿éÖÐÅäÖÃkeepalive_timeout60;(Äܹ»Æ¾¾ÝÏÖʵÇé¿öµ÷ÕûÊýÖµ)£¬²¢È·±£¿Í»§¶ËÒ²Ö§³ÖKeep-Alive¡£
µ÷ÕûWorker¹ý³Ì?ºÍÏνÓÊý£ººÏÀíÅäÖÃworker_processesºÍworker_connectionsÊDzûÑïNginx»úÄܵĹؼü¡£
worker_processes£º½¨ÒéÉèÖÃΪCPUÖ÷ÌâÊý£¬»òÕßÂÔ¸ßÓÚCPUÖ÷ÌâÊý£¬ÒÔ³ä·ÖÀûÓöàºË´¦ÖÃÆ÷µÄ?ÓÅÊÆ¡£worker_connections£º¸ÃÖµ¾ö¶¨ÁËÿ¸öworker¹ý³ÌÄܹ»Í¬Ê±´¦ÖõÄ×î´ó?ÏνÓÊý¡£±ØÒªÆ¾¾Ý·þÎñÆ÷µÄÄÚ´æºÍÏÖʵ²¢·¢ÐèÒªÀ´É趨£¬Í¨³£ÉèΪһ¸ö½Ï´óµÄÖµ£¬ÀýÈç4096»ò8192¡£
sendfileon;£ºÆôÓÃsendfile»úÔ죬ÔÊÐí²Ù×÷ϵͳֱ½ÓÔÚÄں˿ռäÖд«ÊäÎļþ£¬ÎÞÐ轫Êý¾Ý¸´Ôìµ½Óû§¿Õ¼ä£¬´ó´óÌá¸ßÁËÎļþ´«ÊäЧÄÜ£¬½µµÍÁËCPUÕ¼Óá£tcp_nopushon;£ºÔÚ·¢ËÍÏìӦͷºó£¬¾¡¿ÉÄܽ«¸ü¶àµÄÎļþÄÚÈÝÒ»´ÎÐÔ·¢Ë͸ø¿Í»§¶Ë£¬Ï÷¼õTCPÊý¾Ý°üµÄË鯬£¬Ìá¸ß´«ÊäЧÄÜ¡£
output_buffers£º½ÚÔì·¢Ë͵½¿Í»§¶ËµÄ»º³åÇø´óÓס£Êʵ±Ôö´ó»º³åÇøÄܹ»Ï÷¼õϵͳŲÓôÎÊý£¬Ìá¸ßÍÌÍÂÁ¿¡£post_action£ºÔÚ´¦ÖÃÍêÒ»¸öÒªÇóºóÖ´ÐÐij¸ö²Ù×÷£¬ÀýÈçÈÕÖ¾¼Í¼»ò´¥·¢ÆäËû¹ý³Ì¡£
·ÖÆçµÄÊÓÆµÌåʽ¶Ô´«?ÊäºÍ²¥·ÅÓÐ×Å·ÖÆçµÄÒªÇó¡£NginxÒ²ÌṩÁËÕë¶ÔÐÔµÄÓÅ»¯Ä£¿éºÍÅäÖá£
MP4/FLVÎļþµÄÓÅ»¯£¨ngx_http_mp4_module/ngx_http_flv_module£©£º
MP4£º¶ÔÓÚMP4Îļþ£¬NginxÄܹ»Í¨¹ýngx_http_mp4_moduleÄ£¿é£¨Í¨³£Ä¬ÈÏÆôÓã©À´ÓÅ»¯ÎļþµÄÔªÊý¾Ý£¨moovatom£©µÄ´«Êä¡£½«moovatom·ÅÔÚÎļþ¿ªÍ·£¨faststart£©¶ÔÓÚÁ÷ʽ²¥·ÅÖÁ¹Ø³ÁÒª¡£
ÈôÊÇÄúµÄÊÓÆµÔ´²»ÊÇfaststartÌåʽ£¬NginxÄܹ»ÔÚ·þÎñÆ÷¶Ë½øÐгÁ×飬µ«Ð§ÄÜ»áÂÔÓнµµÍ¡£FLV£º¶ÔÓÚFLVÎļþ£¬NginxµÄngx_http_flv_moduleÄ£¿éÄܹ»Ô®ÊÖ´¦ÖÃFLVÎļþµÄÔªÊý¾Ý£¬²¢Ö§³ÖFLVÌåʽµÄÁ÷ʽ²¥·Å¡£
RangeÒªÇóµÄÖ§³Ö£ºÊÓÆµ²¥·ÅÆ÷ͨ³£»á·¢ËÍRangeÒªÇó£¬ÒÔ±ãÓû§¿ÉÄÜ¿ì½ø¡¢ºóÍË£¬»òÕß´ÓÖжϴ¦³ÖÐø²¥·Å¡£NginxĬÈÏÖ§³ÖRangeÒªÇ󣬵«±ØÒªÈ·±£·þÎñÆ÷ÅäÖÃÕýÈ·£¬¿ÉÄÜÕýÈ·½âÎöºÍÏìÓ¦RangeÒªÇó¡£
HLS/DASHÁ÷ʽ´«ÊäµÄÅäÖ㺶ÔÓÚ¸ü¸ß¼¶µÄÁ÷ýÌå´«ÊäºÍ̸£¬ÈçHLS(HTTPLiveStreaming)ºÍDASH(DynamicAdaptiveStreamingoverHTTP)£¬NginxÄܹ»Í¨¹ýÅäÖÃlocation¿éÀ´´¦ÖÃ.m3u8ºÍ.mpdÎļþ£¬²¢ÌṩÏàÓ¦µÄýÌåÇÐÆ¬£¨.ts»ò.m4s£©¡£
M3u8/MpdÎļþµÄ»º´æ£ºHLS/DASHµÄ²¥·ÅÒÀÀµÓÚË÷ÒýÎļþ£¨.m3u8/.mpd£©ºÍýÌåÇÐÆ¬¡£¶ÔÕâЩÎļþ½øÐÐÓÐЧµÄ»º´æÄܹ»¼«´ó?µØÌá¸ß²¥·ÅµÄÆô¶¯¿ìÂÊ¡£ÇÐÆ¬ÎļþµÄ»º´æ£ºÃ½ÌåÇÐÆ¬ÊÇÊÓÆµ²¥?·ÅµÄÖ÷Ì⣬¶ÔÆä½øÐиßЧ»º´æÖÁ¹Ø³ÁÒª¡£
»º´æÊÇÌáÉýÊÓÆµ½Ó¼û¿ìÂÊ×îÖ±½ÓÓÐЧµÄ·½Ê½Ö®Ò»¡£NginxÌṩÁË׳´óµÄ»º´æÖ°ÄÜ£¬Äܹ»¼«´óµØ¼õÇáÔ´·þÎñÆ÷µÄѹÁ¦£¬²¢Ëõ¶ÌÓû§½Ó¼ûÊÓÆµµÄÏìÓ¦¹¦·ò¡£
Proxy_cache£ºµ±Nginx×÷Ϊ·´Ïò´úÀíʱ£¬proxy_cacheÖ¸ÁîÔÊÐíNginx»º´æºó¶Ë·þÎñÆ÷µÄÏìÓ¦¡£Í¨¹ýÅäÖÃproxy_cache_pathÀ´Ö¸¶¨»º´æÄ¿Â¼ºÍ²ÎÊý£¬²¢Ê¹ÓÃproxy_cacheÔÚlocation¿éÖÐÆôÓûº´æ¡£
»º´æÕ½Êõ£ºÄܹ»Æ¾¾ÝURL¡¢ÒªÇóÍ·¡¢ÏìÓ¦ÓŵȶàÖÖǰÌáÀ´½ç˵»º´æµÄ¼üÖµ£¬È·±£»º´æµÄÕýÈ·ÐÔºÍÓÐЧÐÔ¡£»º´æ¹ýÆÚ£ºÀûÓÃproxy_cache_validÖ¸ÁîÉèÖÃ·ÖÆçHTTP״̬ÂëµÄ»º´æ¹¦·ò£¬È·±£»º´æµÄʱЧÐÔ¡£
BrowserCache(ä¯ÀÀÆ÷»º´æ)£º³ýÁË·þÎñÆ÷¶ËµÄ»º´æ£¬Êèµ¼?Óû§ä¯ÀÀÆ÷»º´æÊÓÆµ×ÊԴͬÑù³ÁÒª¡£Í¨¹ýexpiresºÍCache-ControlµÈHTTPÍ·£¬Äܹ»Åúʾä¯ÀÀÆ÷»º´æÊÓÆµÎļþ£¬Ï÷¼õ³Á¸´ÏÂÔØ¡£
NginxÔÚÊÓÆµÓÅ»¯·½ÃæÕ¼ÓеÃÌì¶ÀºñµÄÓÅÊÆ¡£´ÓÊÂÎñÇý¶¯µÄ¼Ü¹¹µ½·á˶µÄÄ£¿éÖ§³Ö£¬ÔÙµ½¾«ÃÜ»¯µÄÅäÖÃÑ¡ÏËüΪÎÒÃÇÌṩÁË׳´óµÄ¹¤¾ßÏ䡣ͨ¹ý¶Ô»ù´¡ÅäÖõÄÓÅ»¯¡¢Õë¶ÔÊÓÆµÌåʽµÄÊÊÅ䣬ÒÔ¼°¸ßЧµÄ»º´æÕ½Êõ£¬ÎÒÃÇ¿ÉÒÔΪÓû§¹¹½¨ÆðÒ»¸öÁ÷³©¡¢²»±äµÄÊÓÆµ²¥·Å»·¾³¡£
Õâ½ö½öÊÇÆðÍ·¡£±ÉÈËÒ»²¿ÃÅ£¬ÎÒÃǽ«Éî¿Ì̽Çó¸ü½ø½×µÄÓÅ»¯¼¼ÇÉ£¬Ô̺¬CDN¼¯³É¡¢Á÷ýÌåºÍ̸µÄ×î¼Ñʵ¼Ê£¬ÒÔ¼°»úÄÜ¼à¿ØÓëµ÷ÓÅ£¬½øÒ»²½½«NginxµÄÊÓÆµÓÅ»¯ÍÆÏòеĸ߶ȡ£
ÔÚǰһ²¿ÃÅ£¬ÎÒÃÇÒѾΪNginxÊÓÆµÓÅ»¯´ò?ÏÂÁ˼áʵµÄ»ù´¡£¬ÏàʶÁËÆäÖ÷ÌâÓÅÊÆºÍ»ù´¡ÅäÖü¼ÇÉ¡£ÒªÊµÏÖÕæÕýÒâ˼Éϵġ°100%ÊÓÆµÓÅ»¯¡±£¬½ö½öÍ£¶ÙÔÚ»ù´¡²ãÃæÊÇÔ¶Ô¶²»¹»µÄ¡£ÊÓÆµÁ÷µÄ´«ÊäÉæ¼°µ½ÍøÂç¡¢·þÎñÆ÷¡¢¿Í»§¶ËµÈ¶à¸ö»·½Ú£¬ÈκÎÒ»¸ö»·½ÚµÄÆ¿¾±¶¼¿ÉÄܵ¼ÖÂÓû§ÂÄÀúµÄ½µÂä¡£
Òò¶ø£¬ÎÒÃDZØÒª½øÒ»²½Éî¿Ì£¬Ë÷ÇóNginxÔÚCDN¼¯³É¡¢Á÷ýÌåºÍ̸ÓÅ»¯¡¢»úÄÜ¼à¿ØÒÔ¼°°²È«·À»¤µÈ·½ÃæµÄ½ø½×ÀûÓá£
µ±Óû§Á¿¼¤Ôö£¬»òÕßÓû§±é²¼È«Çò¸÷µØÊ±£¬µ¥Ìå·þÎñÆ÷µÄ»úÄܽ«ÄÑÒÔÂú×ãÐèÒª¡£´Ëʱ£¬CDN£¨ÄÚÈÝ·Ö·¢ÍøÂ磩¾Í³ÉΪÏàʶ¾öÕâÒ»ÎÊÌâµÄ¹Ø¼ü¡£Nginx×÷Ϊ¸ß»úÄܵķ´Ïò´úÀí·þÎñÆ÷£¬ÓëCDNµÄ½áºÏ¿ÉÄÜʵÏÖÎÞ·ìµÄÊÓÆµ¼Ó¿ì¡£
ÅäÖÃoriginserver£ºÔÚCDNÅäÖÃÖУ¬Nginx·þÎñÆ÷³äÈÎ×Å¡°Ô´Õ¾¡±µÄ½ÇÉ«¡£CDN½Úµã»á½«Óû§ÒªÇóµÄÊÓÆµÄÚÈÝ»º´æµ½±¾µØ£¬µ±Óû§½Ó¼ûʱ£¬Ê×ÏȴӾͽüµÄCDN½Úµã»ñÈ¡¡£ÈôÊÇCDN½ÚµãûÓлº´æ£¬Ôò»áÏòNginxÔ´Õ¾ÌáÒé»ØÔ´ÒªÇó£¬Nginx½Ó¹Üµ½ÒªÇóºó£¬½«ÊÓÆµÎļþ´«Ê䏸CDN½Úµã£¬CDN½ÚµãÔÙ½«ÄÚÈÝ·µ»Ø¸øÓû§¡£
proxy_cacheµÄÃîÓãºÔڴ˳¡¾°Ï£¬NginxµÄproxy_cacheÖ°ÄܱäµÃÓÈΪ³ÁÒª¡£Í¨¹ýÅäÖÃproxy_cache£¬NginxÄܹ»»º´æÀ´×ÔCDNµÄÒªÇ󣬽øÒ»²½Ï÷¼õԴվѹÁ¦£¬²¢¼Ó¿ìCDN½ÚµãµÄ»ØÔ´¿ìÂÊ¡£
²¿ÊðNginx±ßÔµ½Úµã£ºÔÚijЩÇé¿öÏ£¬Ò²Äܹ»½«NginxÖ±½Ó²¿ÊðÔÚCDNµÄ±ßÔµ½ÚµãÉÏ£¬Õƹܻº´æ?ºÍ·Ö·¢ÊÓÆµÄÚÈÝ¡£ÕâÖÖ·½Ê½¿ÉÄܽøÒ»²½Ëõ¶ÌÓû§½Ó¼ûõè¾¶£¬½µµÍÑÓ³¤¡£ÅäÖÃlocation¿é£ºÕë¶ÔÊÓÆµÎļþ£¨Èç.mp4,.ts,.m3u8µÈ£©µÄlocation¿é£¬±ØÒª½øÐÐÏêϸµÄÅäÖ㬰ü?À¨»º´æ¹æ¶¨¡¢¹ýÆÚ¹¦·ò¡¢ÒÔ¼°±ØÒªµÄ½Ó¼û½ÚÔì¡£
HTTPSµÄÓÅ»¯£ºËæ×ÅÍøÂ簲ȫÒâʶµÄÌáÉý£¬HTTPSÒѾ³ÉΪ±êÅä¡£¹ÌÈ»HTTPS»á´ø?À´¿Ï¶¨µÄ»úÄÜ¿ªÏú£¬µ«NginxÌṩÁ˶àÖÖÓÅ»¯¼¿Á©£º
SSLSessionRe-use£º¿ªÆôssl_session_cacheºÍssl_session_timeout£¬ÔÊÐí¿Í»§¶Ë³ÁÓÃ֮ǰµÄSSL»á»°£¬Ï÷¼õÎÕÊÖ¿ªÏú¡£TLSv1.3ÓÅ»¯£ºÓÅÏÈʹÓÃTLSv1.3ºÍ̸£¬¸ÃºÍ̸ÔÚÎÕÊÖ¿ìÂʺͰ²È«ÐÔÉ϶¼ÓÐÏÔÖøÌáÉý¡£
HTTP/2/HTTP/3£º¹²Í¬HTTP/2»òHTTP/3ºÍ̸£¬Äܹ»ÊµÏÖ¶à·¸´Óá¢Í·²¿Ñ¹ËõµÈ¸öÐÔ£¬½øÒ»²½ÌáÉý´«ÊäЧÄÜ¡£
¶ÔÓÚÖ±²¥»òµã²¥³¡¾°£¬Á÷ýÌåºÍ̸µÄÑ¡ÔñºÍÓÅ»¯ÖÁ¹Ø³ÁÒª¡£NginxÄܹ»Í¨¹ýÄ£¿é»òµÚÈý·½²å¼þÀ´Ö§³Ö¶àÖÖÁ÷ýÌåºÍ̸£¬²¢½øÐÐÏàÓ¦µÄÓÅ»¯¡£
ngx_rtmp_module£ºNginxÕ¼ÓÐ׳´óµÄngx_rtmp_moduleÄ£¿é£¬Äܹ»ÇáËɴRTMPÁ÷ýÌå·þÎñÆ÷£¬ÓÃÓÚÖ±²¥ÍÆÁ÷ºÍÀÁ÷¡£»º³åÇøÅäÖãºchunk_sizeºÍsend_buffer_sizeµÈ²ÎÊýµÄµ÷Õû£¬¶ÔÓÚRTMPÁ÷µÄ²»±ä´«ÊäÖÁ¹Ø³ÁÒª¡£
ÑÓ¼¾½ÚÔ죺ͨ¹ýplay_bufferºÍidle_timeoutµÈ²ÎÊý£¬Äܹ»½ÚÔìÖ±²¥µÄÑÓʱ£¬ÔÚÁ÷³©¶ÈºÍʵʱÐÔÖ®¼äÕÒµ½Æ½ºâ¡£
·Ô쬴óÓ׺;àÀ룺HLS/DASHµÄ²¥·ÅÂÄÀúºÜ´óˮƽÉÏÈ¡¾öÓÚýÌåÇÐÆ¬µÄÌìÉú¡£ºÏÀíÉèÖÃÇÐÆ¬´óÓ׺;àÀ룬Äܹ»Æ½ºâÆô¶¯¿ìÂʺͲ¥·ÅÁ÷³©¶È¡£GOP£¨GroupofPictures£©½á¹¹£ºÊÓÆµ±àÂëÖеÄGOP½á¹¹¶Ô¹Ø¼üÖ¡µÄ?É¢²¼ÓÐÓ°Ï죬ӰÏìHLS/DASHµÄÇÐÆ¬Ììǵ£¬´Ó?¶øÓ°Ïì¿ì½ø¿ìÍ˵ÄÂÄÀú¡£
Adaptivity£¨×ÔÊÊÓ¦£©£ºNginxÄܹ»¹²Í¬FFmpegµÈ?¹¤¾ß£¬ÌìÉú·ÖÆçÂëÂʺͷֱæÂʵÄýÌåÁ÷£¬¹©¿Í»§¶Ë½øÐÐ×ÔÊÊÓ¦Çл»£¬Ìṩ¸üºÃµÄÅÔ¹ÛÂÄÀú¡£
WebRTCµÄ¼¯³É£º¶ÔÓÚ±ØÒªµÍÑÓ³¤ÊµÊ±½»»¥µÄÀûÓó¡?¾°£¬WebRTCµÄ¼¯³É±äµÃÔ½À´Ô½³ÁÒª¡£¹ÌÈ»Nginx×ÔÉí²»Ö±½ÓÖ§³ÖWebRTC£¬µ«Äܹ»Í¨¹ýµÚÈý·½Ä£¿é£¨Èçnginx-rtsp-to-webrtc£©»òÓëÆäËûWebRTC·þÎñÆ÷¹²Í¬Ê¹Óã¬ÊµÏÖÊÓÆµÁ÷µÄWebRTC´«Êä¡£
¡°100%ÊÓÆµÓÅ»¯¡±²¢·ÇÖյ㣬¶øÊÇÒ»¸ö³Ö?ÐøÓÅ»¯µÄ¹ý³Ì¡£ÓÐЧµÄ»úÄÜ¼à¿ØºÍʵʱµÄµ÷ÓÅÊÇά³Ö×î¼Ñ״̬µÄ¹Ø¼ü¡£
ngx_http_stub_status_module£ºÆôÓøÃÄ£¿éÄܹ»ÌṩNginxµÄ?¸ù»ù?ÔËÐÐ״̬£¬Èç»îÔ¾ÏνÓÊý¡¢½ÓÊܵÄÏνÓÊý¡¢´¦ÖõÄÒªÇóÊýµÈ¡£µÚÈý·½¼à¿Ø¹¤¾ß£º¼¯³ÉPrometheus¡¢Grafana¡¢ZabbixµÈרҵµÄ¼à¿ØÏµÍ³£¬ÍøÂç¸ü¾ßÌåµÄNginxÖ¸±ê£¬Èç´ø¿íʹÓᢻº´æÉäÖÐÂÊ¡¢ÃýÎóÂʵȡ£
½Ó¼ûÈÕÖ¾£¨accesslog£©£ºÍ¨¹ý¶ÈÎö½Ó¼ûÈÕÖ¾£¬Äܹ»ÏàʶÓû§µÄ½Ó¼ûÐÐΪ¡¢ÊÓÆµµÄÊ¢Ðжȡ¢ÒÔ¼°Ç±ÔÚµÄ?»úÄÜÆ¿¾±¡£ÃýÎóÈÕÖ¾£¨errorlog£©£º¹Ø×¢ÃýÎóÈÕÖ¾£¬ÊµÊ±·¢ÏÖ²¢½â¾ö·þÎñÆ÷¶Ë³öÏÖµÄÃýÎó¡£
»ù×¼²âÊÔ£ºÊ¹Óù¤¾ß£¨Èçab¡¢wrk£©¶ÔNginx½øÐлù×¼²âÊÔ£¬·ÂÕո߲¢·¢³¡¾°£¬ÕÒ³ö»úÄÜÆ¿¾±¡£²ÎÊýµ÷Õû£ºÆ¾¾Ý¼à¿ØÊý¾ÝºÍ²âÊÔÁ˾֣¬ÓÐÕë¶ÔÐԵص÷ÕûNginxµÄÅäÖòÎ?Êý£¬ÀýÈçworker_processes,worker_connections,buffer_size,keepalive_timeoutµÈ¡£
²Ù×÷ϵͳÄں˲ÎÊýÓÅ»¯£º¹²Í¬²Ù×÷ϵͳµÄTCP/IP²ÎÊýµ÷ÓÅ£¨Èçnet.core.somaxconn,net.ipv4.tcp_fin_timeoutµÈ£©£¬Äܹ»½øÒ»²½ÌáÉýNginxµÄÕûÌå»úÄÜ¡£
ÔÚÓÅ»¯ÊÓÆµ´«Êä»úÄܵı£ÏÕÊÓÆµÄÚÈݵݲȫÐÔͬÑù²»ÈݺöÊÓ¡£
IPÊÇ·ÇÃûµ¥£ºÏÞ¶ÈÌØ¶¨IPµØÖ·µÄ½Ó¼û£¬Ô¤·À¶ñÒâÅÀ³æ»ò¹¥»÷¡£RefererУÑ飺×èֹδ¾ÊÚȨµÄÍøÕ¾µÁÁ´ÊÓÆµ¡£Token¼øÈ¨£ºÎªÊÓÆµÁ´½ÓÌìÉúÓÐʱЧÐÔµÄToken£¬È·±£?Ö»ÓкϷ¨Óû§ÄÜÁ¦½Ó¼û¡£
valid_referersÖ¸ÁNginxÄܹ»Í¨¹ývalid_referersÖ¸ÁîÀ´ÅäÖÃÔÊÐí½Ó¼ûµÄRefererÁÐ±í¡£
HTTPS¼ÓÃÜ£ºÈçǰËùÊö£¬Ê¹ÓÃHTTPSÄܹ»¼ÓÃÜÊý¾Ý´«Ê䣬±£»¤Óû§ÒþÖÔºÍÄÚÈݰ²È«¡£
Nginxƾ½èÆä׳´óµÄ»úÄܺͽýݵÄÅäÖã¬ÒѳÉΪʵÏÖ100%ÊÓÆµÓÅ»¯µÄÖ÷ÌâÀûÆ÷¡£´Ó»ù´¡ÅäÖõ½CDN¼¯³É£¬´ÓÁ÷ýÌåºÍ̸µ½»úÄÜ¼à¿Ø£¬Ã¿Ò»¸ö»·½ÚµÄ¾«ÃÜ»¯´òÄ¥£¬¶¼ÄÜΪÓû§´øÀ´¼«ÖÂÁ÷³©µÄ¹ÛÓ°ÂÄÀú¡£Õâ²»½ö½öÊǼ¼ÊõµÄ¶ÑÆö£¬¸üÊǶÔÓû§ÂÄÀúµÄ¼«ÖÂ×êÓª¡£
µ«Ô¸±¾ÎÄÄÜΪÄúÔÚNginxÊÓÆµÓÅ»¯Ö®Â·ÉÏÌṩÓÐÒæµÄÖ¸Òý£¬ÈÃÄúµÄÊÓÆµÆ½Ì¨ÔÚÇ¿ÁÒµÄÊг¡?¾ºÕùÖÐÍÑÓ±¶ø³ö£¬Ó®µÃÓû§µÄÐÄ£¡