ืืืจ ืึทืจืืืกืืขืื ืื ืืจืึทื ืกืงืจืืคึผื ืคืื ืื ืืึทืจืืื ืคืื ืืขืจ ืงืึธื ืคึฟืขืจืขื ืฅ 2016, ืืืึธืก ืืื ืืขืืืืื ืืื ืกืงืึธืืงืึธืืืึธ ืืขืื ืืึธืกืงืืืข ืืืืฃ 7-8 ื ืืืืขืืืขืจ ืืขืฆืืข ืืึธืจ. ืืขืจืฆืืืื ืืื ืฆื ืคืึทืจืืจืืืืขืจื NGINX ืคืึทื ืืงืฉืึทื ืึทืืืื ืืื OpenResty ืืื Lua.
ืืขืื ืึทืืขืืขื, ืืืื ื ืึธืืขื ืืื ืืืืืืืืืจ ืคึผืจืึธืืึทืกืึธืื, ืืื ืึทืจืืขื ืคึฟืึทืจ ืคึผืึทืจืึทืืืขืืก. ืืื ืฐืขื ืืฒึทื ืืขืจืฆืฒืื ืึท ืืืกื ืฐืขืื ืืื. ืืื ืคืึทืจืืจืขื ืืขื ืืจืื ืคืขืจืื ืคืื ืืืื ืืขืื ืฆื ืฉืจืืืื ืงืึธื. ืืื ืืขืืืืจื ืึท ืคึผืจืึธืืจืึทืืืกื ืฆื ืื ืืึทืจืฅ ืืื ืื ืืืืขืจืึทื ืืื ืขื: ืืื ืืื ืืขื ืงืึธื ืืื ืืืื ืืืืืืช. ื ืคืขืจืื ืคืื ืืขืื ืืื ืื ืืึทืกืืจืืึทื ืึทื ืืืืืงืืื ื, ืฉืจืืืื ืงืึธื ืืืึธืก ืืืื ืืืืื ืืื ืคึผืจืึธืืืงืฆืืข. ืงืึธื ืืืึธืก ืขืืืขืืข ืคืื โโืืืจ ื ืืฆื ืึธืืขืจ ืืึธื ื ืื ืืืืกื ืขืก.
ืฆื ืืึธืื ืืืจ ืืืืกื ืืื ืฉืืขืื ืขืก ืืื ืืขืืืขื. ืืืขื ืืื ืืื ืืขืืืขื ืึท ืืืกื ืืื ืืขืจ, ืืื ืืขืงืืืขื ืืื ืืื ืืื ืืขืืขืื ืืืจ ืื ืฆืืืื ืืขืจืึทืืืืข ืืึทืืึทืืืืกืื. ืขืก ืืื ืืืฆื ืืึธ ืคึฟืึทืจ ืึทืืขืืขื ืืืื ืืึทืกืข. ืืื ืืื ืืขืืื ืืขื ืฆื ืงืึธื ืคึฟืขืจืขื ืฆื ืืื ืืขืคืจืขืื: "ืืืืก, ืืึธืื ืืืจ, ืืืจ ืืึธืื ืืจืืืก ืืึทืื, ืืื ืึทืืฅ ืงืื? ืืื ืคืืืข ืืึทืกืขืก ืืึธื ืืืจ ืืึธืื ืืึธืจื? ืืื ืืึธืื ืืืจ ืืขืขื ืืคืขืจื: "ืืืจ ืืึธืื 100 ืืืืืืืื!" ืืื ืืขืืืื: "ืงืื, 100 ืืืืืืืื!" ืืื ืืื ืืขืืึทื ืง ืฆื ืืื ืืื ืฆื ืฆืืืืืง ืจืึทืืขืืืขื ืื ืคึผืึธืงืขืจ ืคึผื ืื. ืืืจ ืืจืึทืืื, ืืึธ, ืื ืืืื ืืขื ืขื ืงืื, ืืื ืืขืืึธืื ืืืจ ืงืืืขื ืฆืืจืืง ืืื ืืื ืงืขืจ ืืื ืื ืืึทืืื-ืืขืจืึทืืืืข ืืึทืืึทืืืืกืื. ืืื ืืึธืก ืืื ืืืึทืขื ืืืง ืึท ืืื ืืขืจ. ืงืขื ืขื ืืืจ ืืืึทืืืฉืึทื ืืืึธืก ืึท ืฉืืึธืื ืขืก ืืื?
ืืื ืงืขื ืืขืจ ืืื 20 ืคึผืจืึธืืจืึทืืืื ื ืฉืคืจืึทืื. ืืึธืก ืืื ืืืึธืก ืืื ืืขืืื ืฆื ืจืขืืขื ืขื ืืืืก ืืื ืื ืืืืฃ ืคืื ืึทืจืืขื. ืืื ืืขืื ืืืจ ืงืึธื ืืื ืขืจืืึทื ื, ืืื C, ืืื C ++, ืืื ืืืึท, ืืื ืคึผืืืืึธื, ืืื ืจืืื, ืืื ืขืคึผืขืก ืึทื ืืขืจืฉ, ืืื ืืืจ ืืึธืื ืฆื ืฉื ืืึทืื ืขืก ืึทืืข. ืืื ืึทืืืขืืืื, ืืื ืืขืืื ืฆื. ืืข ื ืื ื ื ืืฉ ื ืืขืงืื ื ืืืืกืจืขืืขื ืขื , ืืืข ืจ ืขืคืข ืก ืืจืื 20 , ืื ื ืืข ืจ ืฆื ื ืคืืจืืืืจ ื ืืขืฐืืจื .
ืืื ื ืึทืืขืืขื ืืึธ ืืืืืกื ืืืึธืก ืคึผืึทืจืึทืืืขืืก ืืื ืืื ืืืึธืก ืืืจ ืืึธื, ืืื ืืืขื ื ืืฉื ืจืขืื ืืืขืื ืืื ืงืื ืืืจ ืืขื ืขื ืืื ืืืึธืก ืืืจ ืืึธื. ืืื ืืืขื ื ืึธืจ ืืึธืื ืืืจ ืึทื ืืืจ ืืึธืื 13 ืึธืคืึทืกืื ืึทืจืื ืื ืืืขืื, ืืขืจ ืืื 300 ืขืืคึผืืืืื, ืึทื ืืืืืงืืื ื ืืื ืืึธืกืงืืืข, ืืึทืืืื ื ืืื ืืึทืืืึท. ืืืื ืืืจ ืืืืื, ืืืจ ืงืขื ืขื ื ืขืืขื ืืื ืืึทื ืฆื ืืึทืืืึท, ืืืื ืขืก ืืื ืงืึทืื ืืื ืืืื ืืขืจ ืืื ืืืจ ืืึทืจืคึฟื ืฆื ืืืึทืจืขื ืืืื ืฆืืจืืง.
ืกืคึผืขืฆืืขื, ืืื ืืืขืจ ืึธืคึผืืืืืื ื ืฉืจืืืื ืืื ืคึผืืืืึธื 2. ืืืจ ืืขื ืขื ืืื ืืขืฉืขืคื ืืื ืืืจ ืืึธืื ืงืืื ืฆืืึทื ืฆื ืืึทืงืขื ืขื ืืึธืืขืจื ืืขืงื ืึทืืึทืืืฉืื, ืึทืืื ืืืจ ืืืืื. ืืืจ ืืึธืื ืืืืฉืึทื ืืึธ, ืืืืึทื ืขืก ืืื ืึทืืฅ, ืืื ืืืจ ืืขื ืืืขื ืื ืืืืขืคืืืง ืืื ืืื ืขืก ืึทืืืขืง. ืืืื MySQL, Redis ืืื NGINX. ืืืจ ืืืื ืืึธืื ืึท ืคึผืืึทืฅ ืคืื ืื ืืขืจืข ืงืื ืฉืืึธืคึผื. ืืืจ ืืึธืื ืืึธื ืืึธืื, ืืืจ ืืึธืื ืจืึทืืึทืฅ ืืืึธืก ืืืืคื ืึทืจืื, ืืืจ ื ืึธืจ ืืึธื ื ืื ืืึธืื ืขืคึผืขืก - ืึธืืขืจ ืืึธืก ืืื ื ืืฉื ืืืึทื, ืืื ืืื ืืึธื ื ืื ืืึธื ืืึธืก.
OpenResty
ืืื ืืึธื ืืขืจืฆืฒืื ืฐืขืื ืืื. ืืื ืก ืืขื ืืืึธืก ืืื ืืืขื ืจืขืื ืืืขืื ืืืึทื ื:
- ืืืึธืก ืืื OpenResty ืืื ืืื ืืืึธืก ืืื ืขืก ืืขืืขืกื?
- ืคืืจืืืืก ืจืืื ืืืขื ื ืื ืจืึธื ืืืขื ืืืจ ืืึธืื Python, NodeJS, PHP, Go ืืื ืื ืืขืจืข ืงืื ืฉืืึธืคึผื ืืืึธืก ืึทืืขืืขื ืืื ืฆืืคืจืืื ืืื?
- ืืื ืขืืืขืืข ืืืืฉืคืืื ืคืื ืคืึทืงืืืฉ ืืขืื. ืืื ืืึธืื ืฆื ืฉื ืืึทืื ืื ืืึทืจืืื ืึท ืคึผืืึทืฅ, ืืืืึทื ืืื ืืึทื ืขืก ืคึฟืึทืจ 3,5 ืฉืขื, ืึทืืื ืขืก ืืืขื ืืืื ืืืืื ืืง ืืืืฉืคืืื.
OpenResty ืืื NGINX. ืืึทื ืง ืฆื ืืื, ืืืจ ืืึธืื ืึท ืคืื-ืคืืขืืืฉื ืืืขื ืกืขืจืืืขืจ, ืืืึธืก ืืื ืืขืืื ื ืืขืฉืจืืื, ืขืก ืึทืจืืขื ืฉื ืขื. ืืื ืืจืึทืืื ืจืืึฟ ืคืื ืืื ืื ื ืืฆื NGINX ืืื ืคึผืจืึธืืืงืฆืืข. ืืืจ ืึทืืข ืืืืกื ืึทื ืขืจ ืืื ืฉื ืขื ืืื ืงืื. ืืื ืืขืืืื ืงืื ืกืื ืืฉืจืึธื ืึธืืก ืืื / ืึธ ืืื ืขืก, ืึทืืื ืืืจ ืืึธื ื ืื ืืึทืจืคึฟื ืฆื ืฆืืงื ืขืคึผืขืก ืืื ืื ืืขืืืข ืืืขื ืืื ืืขืื ืืื ืกืืืงืึทืื ืืื ืคึผืืืืึธื. ืืขืืืขื ื ืืื ืงืื, ืืจืืืก, ืึธืืขืจ ืืืื ืืืจ ืฉืจืืึทืื C-ืงืึธื ืืื ืขืคึผืขืก ืืืื ืคืึทืืฉ ืืื ืืขืื, ืืืจ ืืืขื ืืืื ืืฉืืืข ืืืืึทืืื ื ืขืก. ืืื ืืึธื ืืขืืื ืืขืจืคืึทืจืื ื: ืขืก ืืึธื ืืขืืืืขืจื ืฆืืืื ืืขื ืฆื ืคืึทืจืฉืืืื ืืืึธืก ืืื ืคืึทืืฉ ืืึธืจื. ืืืื ืืืื ืขืจ ืืืืื ื ืืฉื ืืขืืจืืื ืคืืจ ืขืืืืืข ืืืืื ืคืจืืขืจ, ืืขืคืื ืขื ืืขื ืคืจืืืืขื, ืขืก ืืขืฉืจืืื ืืืืคื ืืื ืืขืจื ืขื, ืืื ืืืื ืืื ืขืก ื ืืฉื ืืขืคืื ืขื, ืืืืืื ืืืจ ืืืจ ืืฉืืืข ืืขืืืืจื.
NGINX ืืื ืฉืืื ืงืึทืืฉืื ื ืืื ืกืืึทืืืง ืืื ืืึทืื. ืืืจ ืืึธื ื ืื ืืึทืจืคึฟื ืฆื ืืึธืจื ืืืขืื ืืื ืฆื ืืึธื ืืึธืก ืืขื ืืฉืืขื, ืึทืืื ืึทื ืืืจ ืืึธื ื ืื ืคึผืึทืืขืืขื ืขืจืืขืฅ, ืึทืืื ืืืจ ืืึธื ื ืื ืคืึทืจืืืจื ืืืกืงืจืืคึผืืึธืจืก ืขืจืืขืฅ. Nginx ืืื ืืืืขืจ ืืึทืงืืืขื ืฆื ืฆืขืืืืงืืขื, ืืืจ ืืึธื ื ืื ืืึทืจืคึฟื ืฆื ืืจืึทืืื ืืืขืื ืืืึธืก ืฆื ื ืขืืขื - WSGI, PHP-FPM, Gunicorn, Unicorn. Nginx ืืื ืืื ืกืืึทืืืจื, ืืขืืขืื ืฆื ืื ืึทืืืื ืืกืืจืึทืืึธืจืก, ืืื ืืืืกื ืืื ืฆื ืึทืจืืขืื ืืื ืืื. Nginx ืืึทื ืืึทืื ืจืืงืืืขืก ืืื ืึท ืกืืจืึทืงืืฉืขืจื ืืืขื. ืืื ืืืขื ืจืขืื ืืืขืื ืืขื ืึท ืืืกื ืฉืคึผืขืืขืจ. ืืงืืฆืืจ, ืขืจ ืืื ื ืคืืืข ืืืขื ืขืจ ืืื ื ืืจ ืื ืืขื ืืืขื ืื ืืงืฉื, ืืืขื ืขืจ ืืื ืคืจืืกืขืกื ืืื ืืืขื ืขืจ ืืื ืืขืืขืื ืืขื ืืื ืืืื ืคืืจื ืืื ืืฆืขืจ.
Nginx ืืื ืงืื, ืึธืืขืจ ืขืก ืืื ืืืื ืคึผืจืึธืืืขื: ืขืก ืืื ื ืืฉื ืคืืขืงืกืึทืืึทื ืืขื ืื ืืคืืื ืืื ืึทืืข ืื ืงืื ืคึฟืขืึดืงืืืื ืืืึธืก ืื ืืืื ืคึผืืฉื ืืื ืื ืงืึธื ืคืื, ืืจืึธืฅ ืืขื ืคืึทืงื ืึทื ืขืก ืงืขื ืขื ืืืื ืงืึทืกืืึทืืืืื. ืืขื ืืึทืื ืืื ื ืืฉื ืืขื ืื. ืืขืจืืืขืจ, ืื ืืืื ืคืื ืืึทืึธืืึทืึธ ืึทืืึธื, ืืื ืืจืึทืืื ืืืขืื ืึทืื ืืืจ ืฆืืจืืง, ืืขืืืื ืืืึท ืืื ืขืก. ืืืืก ืืื ืขืจ?
- ืืจืืืก. ืขืก ืืื ืงืืืื. LuaJIT ืืื ืขืจืืขืฅ ืึทืจืื 100-200 ืงืืืืืืื ืคืื ืืึผืจืื ืึธืืืืขืจืืขื ืืื ืืื ืืืึทื ืคืึธืจืฉืืขืืื ื ืึธืืืืขืจืืขื.
- ืืืืงืืึทื. ืื LuaJIT ืืืขืจืืขืฆืขืจ ืืื ื ืึธืขื ื ืฆื C ืืื ืคืืืข ืกืืืืึทืืืึธื ืก, ืืื ืขืืืขืืข ืกืืืืึทืืืึธื ืก ืขืก ืคืืจืืืจื ืฆื Java, ืืื ืขืืืขืืข ืขืก ืึธืืืืขืจืืืืงืก ืขืก. ืคึฟืึทืจ ืึท ืืฉืขืช, ืขืก ืืื ืืขืืืขื ืืขืจืขืื ื ืืื ืื ืืขืจืกื ืืึธืืขืจื, ืื ืงืืืึทืกื JIT ืงืึทืืคึผืืืืขืจ. ืืืฆื ืขืก ืืขื ืขื ืงืืืขืจ ืึธื ืขืก, ืึธืืขืจ ืืื ืืขื ืขื ืืืืขืจ ืฉืืืขืจ, ืืืฉื, ืื ืืขืืืข V8. ืขืืืขืืข JS ืื ืืขืจืคึผืจืึทืืขืจื ืืื Java HotSpot ืืขื ืขื ืคืึทืกืืขืจ ืืื ืขืืืขืืข ืคืื ืงืื, ืึธืืขืจ ื ืึธื ืคืึทืจืืืจื ืืื ืขืืืขืืข ืคืื ืงืื.
- ืืจืื ื ืฆื ืืขืจื ืขื. ืืืื ืืืจ ืืึธื, ืืืฉื, ืึท ืคึผืขืจื ืงืึธืืขืืึทืกืข ืืื ืืืจ ืืขื ื ื ืืฉื ืืืงืื ื, ืืืจ ืืืขื ื ืืฉื ืืขืคึฟืื ืขื ืคึผืขืจื ืคึผืจืึธืืืจืึทืืขืจื. ืืืืึทื ืืื ืืขื ืขื ื ืืฉื ืืึธืจื, ืืื ืึทืืข ืึทืืืขืงืืขื ืืืขื, ืืื ืขืก ืืื ืืึทื ื ืืื ืฉืืืขืจ ืฆื ืืขืจื ืขื ืืื. ืืืื ืืืจ ืืืืื ืคึผืจืึธืืืจืึทืืขืจื ืคึฟืึทืจ ืขืคึผืขืก ืึทื ืืขืจืฉ, ืืื ืงืขื ืืืื ืืืื ืจืืืจืืื ื ืึธืืขืจ ืืขืคึฟืื ืขื. ืืื ืืขื ืคืึทื ืคืื ืืืึท, ืึทืืฅ ืืื ืคึผืฉืื. Lua ืงืขื ืขื ืืืื ืืขืืขืจื ื ืืืจื ืงืืื ืืื ืืขืจ ืืื ืืจืื ืืขื. ืขืก ืืึธื ืืืจ ืืขื ืืืขื ืืืขืื ืฆืืืื ืฉืขื ืฆื ืจืขืืขื ืขื ืขืก ืืืืก. ืฆืืืื ืฉืขื ืฉืคึผืขืืขืจ, ืืื ืืื ืฉืืื ืฉืจืืืื ืงืึธื ืืื ืคึผืจืึธืืืงืฆืืข. ืืื ืึท ืืืึธื ืฉืคึผืขืืขืจ, ืขืจ ืืขืืื ืืขื ืืืืึทื ืฆื ืคึผืจืึธืืืงืฆืืข ืืื ืืื ืงืก.
ืืื ืึท ืจืขืืืืืึทื, ืขืก ืงืืงื ืืื ืืึธืก:

ืขืก ืืื ืึท ืคึผืืึทืฅ ืืึธ. OpenResty ืืื ืคืืจืืืืื ืึท ืืื ืื ืคืื ืืึทืืืฉืืื, ืืืืืข ืืืึทืฉ ืืื ืขื ืืืฉืึทื ื. ืืื ืืืจ ืืึธืื ืึทืืฅ ืืจืืื - ืืืคึผืืืื ืืื ืืจืืขืื.
ืขืงืกืึทืืคึผืืขืก
ืืขื ืื ืคืื ืื ืืืจืืงืก, ืืึธืื ืืื ืื ืืึทื ืืืืฃ ืฆื ืื ืงืึธื. ืืึธ ืืื ืึท ืืืกื ืืขืื ืืืขืื:

ืืืึธืก ืืื ืืึธืจื? ืืึธืก ืืื ืืขืจ ืึธืจื ืคืื ืื ืืึธืืึธืจ. ืืืจ ืืึธื ื ืื ืืึธืจื, ืืืจ ืืึธื ื ืื ืฉืจืืึทืื ืืื ืืืขืจ ืืืืืขื ืข ืจืืืื ื, ืืืจ ืืึธื ื ืื ื ืขืืขื ืึท ืคืึทืจืืืง ืืืื ืขืจ - ืืืจ ืืึธืื ืขืก ืฉืืื ืืื NGINX, ืืืจ ืืขืื ืืขืืื ื ืืื ืคืืื.
content_by_lua_block ืืื ืึท ืืืึธืง ืืืึธืก ืืืื ืึทื ืืืจ ืืื ืขื ืืื ืืึทืื ืืื ืึท Lua ืฉืจืืคื. ืืืจ ื ืขืืขื ืึท ืขื ืืืฉืึทื ื ืืืึทืืขืืืืืง remote_addr ืืื ืฆืขืื ืขืก ืืื string.format. ืืึธืก ืืื ืื ืืขืืืข ืืื sprintf, ืืืืื ืืื ืืืึท, ื ืึธืจ ืจืืืืืง. ืืื ืืืจ ืืขืื ืขืก ืฆื ืืขื ืงืืืขื ื.
ืืื ืึท ืจืขืืืืืึทื, ืขืก ืืืขื ืงืืงื ืืื ืืึธืก:

ืืืขืจ ืฆืืจืืง ืฆื ืืขืจ ืขืืขืก ืืืขืื. ืืื ืคึผืจืึธืืืงืฆืืข, ืงืืื ืืืื ืขืจ ืืืคึผืืืื ืืขืื ืืืขืื. ืืื ืืืขืจ ืึทืคึผืืึทืงืืืฉืึทื ืืืืฉืึทืืืึทืื ืืืื ืฆื ืื ืืึทืืึทืืืืก ืึธืืขืจ ืขืจืืขืฅ ืึทื ืืขืจืฉ ืืื ืจืืึฟ ืคืื ืื ืฆืืื ืขืก ืืืืจืื ืคึฟืึทืจ ืึท ืขื ืืคืขืจ.

ืืืฆื ื ืึธืจ ืืื ืฐืึทืจื. ืขืก ืืื ื ืืฉื ืืืืขืจ ืืื. ืืืขื 100.000 ืืืืขืจื ืงืืืขื, ืขืก ืืื ืืืืขืจ ืฉืืืขืจ ืคึฟืึทืจ ืืื ืื. ืืขืจืืืขืจ, ืืึธืื ืืื ืื ื ืืฆื ืึท ืคึผืฉืื ืึทืคึผืืึทืงืืืฉืึทื ืืื ืึท ืืืึทืฉืคึผืื. ืืืจ ืืืขืื ืงืืงื ืคึฟืึทืจ ืืืืืขืจ, ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืงืึทืฅ. ื ืึธืจ ืืืจ ืืืขืื ื ืืฉื ื ืึธืจ ืืืื, ืืืจ ืืืขืื ืืงืกืคึผืึทื ื ืื ืืขืจืืื ืขื ืืื, ืืืื ืืขืจ ืืึทื ืืฆืขืจ ืืขืืืื ืคึฟืึทืจ "ืงืืืึทื ื", ืืืจ ืืืขืื ืืขืคึฟืื ืขื ืงืึทืฅ, ืคึผืืืื, ืืื ืึทืืื ืืืืฃ. ืขืจืฉืืขืจ ืืืจ ืืึทืจืคึฟื ืฆื ืืึทืงืืืขื ืื ืืขืื ืืึทืื ืืืืฃ ืื ืืึทืงืขื ื. ืขืก ืงืืงื ืืื ืืึธืก:

ืฆืืืื ืฉืืจืืช ืืึธืื ืืืจ ืงืืืึทืื GET ืคึผืึทืจืึทืืขืืขืจืก, ืงืืื ืงืึทืืคึผืืึทืงืืืฉืึทื ื. ืืขืจื ืึธื ืืืจ, ืืืฉื, ืืึทืงืืืขื ืื ืืื ืคึฟืึธืจืืึทืฆืืข ืคึฟืื ืึท ืืึทืืึทืืืืก ืืื ืึท ืืืฉ ืืืจื ืงืืืืขืจื ืืื ืคืึทืจืืขื ืืขืจืื ื ื ืืฆื ืึท ืจืขืืืืขืจ SQL ืึธื ืคึฟืจืขื. ืึทืืฅ ืืื ืคึผืฉืื. ืขืก ืงืืงื ืืื ืืึธืก:

ืืืจ ืคืึทืจืืื ืื ืื ืืืืืืึธืืขืง resty.mysql, ืืืึธืก ืืืจ ืืึธืื ืฉืืื ืืื ืื ืงืื. ืืืจ ืืึธื ื ืื ืืึทืจืคึฟื ืฆื ืื ืกืืึทืืืจื ืขืคึผืขืก, ืึทืืฅ ืืื ืืจืืื. ืกืคึผืขืฆืืคืืฆืืจื ืืื ืฆื ืคืึทืจืืื ืื ืืื ืืึทืื ืึท SQL ืึธื ืคึฟืจืขื:

ืขืก ืืื ืึท ืืืกื ืกืงืขืจื, ืึธืืขืจ ืขืก ืึทืจืืขื. ืืึธ 10 ืืื ืืขืจ ืฉืืขืืจ. ืืืจ ืฆืืขื ืืืืก 10 ืจืขืงืึธืจืืก, ืืืจ ืืขื ืขื ืคืืื, ืืืจ ืืืขืื ื ืืฉื ืืืืึทืื ืืขืจ. ืืื SQL, ืืื ืคืืจืืขืกื ืืืขืื ืื ืฉืืขืืจ.
ืืขืจื ืึธื ืืืจ ืืขืคึฟืื ืขื ืืืืืขืจ ืคึฟืึทืจ ืึทืืข ืคึฟืจืืื. ืืืจ ืงืืืึทืื ืึท ืืื ืื ืคืื ืจืืงืืืขืก ืืื ืคึผืืึธืืืืจื ืืื ืึท ืืืึท ืืืฉ ืืขืจืืคื reqs, ืืื ืืึธื ngx.location.capture_multi.

ืึทืืข ืื ืจืืงืืืขืก ืืืื ืืื ืคึผืึทืจืึทืืขื, ืืื ืื ืขื ืืคึฟืขืจืก ืืขื ืขื ืืืืืขืงืขืจื ืฆื ืืื ืื. ืื ืคืืืกื ืืืง ืฆืืื ืืื ืืืืึทื ืฆื ืื ืขื ืืคืขืจ ืฆืืื ืคืื ืื ืกืืึธืืึทืกื ืืืื ืขืจ. ืืืื ืืืจ ืึทืืข ืืจืืืขื ืฆืืจืืง ืืื 50 ืืืืืกืขืงืึทื ืื, ืืื ืืืจ ืืขืฉืืงื ืึท ืืื ืืขืจื ืจืืงืืืขืก, ืืืจ ืืืขืื ืืึทืงืืืขื ืึทื ืขื ืืคืขืจ ืืื 50 ืืืืืกืขืงืึทื ืื.
ืืื ื ืืืจ ืืขื ืขื ืคืืื ืืื ืืึธื ื ืืฉื ืืืขืื ืฆื ืฉืจืืึทืื ืืืืคึผ ืืึทื ืืืื ื ืืื ืงืึทืืฉืื ื, ืืืจ ืืืขืื ืืึทืื NGINX ืืึธื ืึทืืฅ ืคึฟืึทืจ ืืื ืื. ืืื ืืืจ ืืขืืขื, ืขืก ืืื ืืขืืืขื ืึท ืืงืฉื ืคึฟืึทืจ url/fetchืื ืืื ืขืก:

ืืืจ ืืึทืื ืคึผืฉืื proxy_pass, ืกืคึผืขืฆืืคืืฆืืจื ืืื ืฆื ืงืึทืฉ, ืืื ืฆื ืืึธื ืืึธืก, ืืื ืึทืืฅ ืึทืจืืขื ืคึฟืึทืจ ืืื ืื.
ืืืขืจ ืืึธืก ืืื ื ืืฉื ืืขื ืื, ืืืจ ื ืึธื ืืึทืจืคึฟื ืฆื ืืขืื ืื ืืึทืื ืฆื ืืขืจ ืืึทื ืืฆืขืจ. ืื ืกืืืคึผืืึทืกื ืืขืืึทื ืง ืืื ืฆื ืกืืจืืึทืืื ืึทืืฅ ืฆื JSON, ืืืืื, ืืื ืฆืืืื ืฉืืจืืช. ืืืจ ืืขืื ืืื ืืึทืื-ืืืคึผ, ืืืจ ืืขืื JSON.
ืืืขืจ ืขืก ืืื ืืืื ืฉืืืขืจืืงืืื: ืืขืจ ืืึทื ืืฆืขืจ ืืื ื ืืฉื ืืืขืื ืฆื ืืืืขื ืขื JSON. ืืืจ ืืึทืจืคึฟื ืฆื ืฆืืฆืืขื ืคืจืึธื ื-ืขื ื ืืขืืืขืืึธืคึผืขืจืก. ืืื ืืืจ ืืึธื ื ืื ืคืืื ืืื ืฆื ืืึธื ืขืก ืืื ืขืจืฉืืขืจ. ืืึธ, ืืื ืกืขืึธ ืกืคึผืขืฉืึทืืึทืกืฅ ืืืขืื ืืึธืื ืึทื ืืืื ืืืจ ืืขื ืขื ืงืืงื ืคึฟืึทืจ ืืืืืขืจ, ืืื ืืึธื ื ืื ืืึธืจืื. ืืื ืืืื ืืืจ ืืขืื ืืื ืขืืืขืืข ืืื ืืึทืื, ืืื ืืืขืื ืืึธืื ืึทื ืืื ืืืขืจ ืืืื ืขื ืืืฉืึทื ื ืืึธื ื ืื ืืื ืืขืงืก ืขืคึผืขืก.
ืืืึธืก ืฆื ืืึธื ืืื ืืื? ืคืื ืงืืจืก, ืืืจ ืืืขืื ืืขืื ืืขื ืืึทื ืืฆืขืจ HTML. ืืืฉืขื ืขืจืืืืื ื ืืื ืืึทื ืืึทืื ืืื ื ืืฉื comme il faut, ืึทืืื ืืืจ ืืืขืื ืฆื ื ืืฆื ืืขืืคึผืืึทืืขืก. ืขืก ืืื ืึท ืืืืืืึธืืขืง ืคึฟืึทืจ ืืขื lua-resty-template.

ืืืจ ืืืื ืืึธืื ืืขืืขื ืื ืืจืื ืืจืขืืื ืืืชืืืช OPM. OpenResty ืงืืื ืืื ืืืื ืืืืืขื ืข ืคึผืขืงื ืคืึทืจืืืึทืืืขืจ, ืืืจื ืืืึธืก ืืืจ ืงืขื ืขื ืื ืกืืึทืืืจื ืึท ืืื ืื ืคืื ืคืึทืจืฉืืืขื ืข ืืึทืืืฉืืื, ืกืคึผืขืฆืืขื, lua-resty-template. ืขืก ืืื ืึท ืคึผืฉืื ืืืกืืขืจ ืืึธืืึธืจ ืขื ืืขื ืฆื Django ืืขืืคึผืืึทืืขืก. ืืึธืจื ืืืจ ืงืขื ืขื ืฉืจืืึทืื ืงืึธื ืืื ืืึธื ืึท ืืืึทืืขืืืืืง ืกืึทืืกืืืืืฉืึทื.
ืืื ืึท ืจืขืืืืืึทื, ืึทืืฅ ืืืขื ืงืืงื ืืื ืืึธืก:

ืืืจ ืืขื ืืืขื ืื ืืึทืื ืืื ืจืขื ืืขืจื ืื ืืืกืืขืจ ืืืืืขืจ ืืื ืฆืืืื ืฉืืจืืช. ืืขืจ ืืึทื ืืฆืขืจ ืืื ืฆืืคืจืืื, ืืึทื ืงืึทืฅ. ืืื ื ืืืจ ืืงืกืคึผืึทื ืืื ืื ืืงืฉื, ืขืจ ืืืื ืืืงืืืขื ืึท ืคืืืขืจ ืคึผืืึธืืืข ืคึฟืึทืจ ืงืืืึทื ื. ืืืจ ืืืืืกื ืงืืื ืืื ื ืืฉื, ืืคืฉืจ ืืื ืขืจ ืขืก ืืขืืืื, ืืืขืจ ืขืจ ืืื ื ืืฉื ืืขืงืขื ื ืจืืืืื ืคืืจืืืืืจื ืืืื ืืงืฉื.
ืึทืืฅ ืืื ืงืื, ืึธืืขืจ ืืืจ ืืขื ืขื ืืื ืึทื ืืืืืงืืื ื, ืืื ืืืจ ืืึธื ื ืืฉื ืืืขืื ืฆื ืืืืึทืื ืืืืขืจื ื ืึธื. ืืึธืืืจ ืืึทืื ืึท ืืขืจืืืืืขื ืืฉ. ืฆื ืืึธื ืืึธืก, ืืึธืืืจ ืืขื ืืื NGINX ืืึทื ืืึทืื ืื ืืงืฉื ืืื ืืขืจืืื ืขื ืคืื OpenResty:
- ืขืจืฉืืขืจ ืคืึทืกืข - ืฆืืืจืื, ืืืขื ืืขืจ ืืึทื ืืฆืขืจ ื ืึธืจ ืืขืงืืืขื, ืืื ืืืจ ืืขืงืืงื ืืืืฃ ืืื ืืืจื ืืขืืขืจื, ืืืจื IP ืึทืืจืขืก, ืืืจื ืื ืืขืจืข ืืึทืื. ืืืจ ืงืขื ืขื ืืื ืฆืขืืึทืงื ืขืก ืึทืืืขืง ืืืื ืืืจ ืืึธื ื ืื ืืื ืขืก. ืืึธืก ืงืขื ืืืื ืืขื ืืฆื ืคึฟืึทืจ ืืขืจืืืืืขื ืืฉ, ืึธืืขืจ ืืืื ืืืจ ืืึทืงืืืขื ืึท ืคึผืืึทืฅ ืคืื ืจืืงืืืขืก, ืืืจ ืงืขื ืขื ืืืืื ืฆืขืืึทืงื ืืื ืืื ืืขื ืคืึทืกืข.
- ืจืืจืืื. ืจืืจืืืืื ื ืขืืืขืืข ืืขืื ืืึทืื.
- ืฆืืคืจืืื. ืืืจ ืืขืื ืืื ืืึทืื ืฆื ืืขืจ ืืึทื ืืฆืขืจ.
- ืืขืืขืจ ืคืืืืขืจ. ืืืืฉื ืื ืขื ืืคืขืจ ืืขืืขืจื. ืืืื ืืืจ ืืขืืืืื ื
proxy_pass, ืืืจ ืงืขื ืขื ืจืืจืืื ืขืืืขืืข ืืขืืขืจื ืืืืืขืจ ืืขืื ืขืก ืฆื ืืขืจ ืืึทื ืืฆืขืจ. - ืืืฃ ืคืืืืขืจ. ืืืจ ืงืขื ืขื ืืืืฉื ืืขื ืืืฃ.
- ืงืืึธืฅ - ืืึธืืื ื. ืขืก ืืื ืืขืืืขื ืฆื ืฉืจืืึทืื ืืึธืืก ืืื Elasticsearch ืึธื ืึทื ื ืึธื ืฉืืืืข.
ืืื ืืืขืจ ืืขืจืืืืืขื ืืฉ ืืืขื ืงืืงื ืขืคึผืขืก ืืื ืืึธืก:

ืืืจ ืืืขืื ืขืก ืฆืืืขืื ืฆื ืืขื location, ืืืึธืก ืืืจ ืืืกืงืจืืืื ืคืจืืขืจ, ืืื ืฉืืขืื ืื ืคืืืืขื ืืข ืงืึธื ืืึธืจื:

ืืืจ ืงืืงื ืฆื ืืขื ืืืื ืืืจ ืืึธืื ืึท ืงืืื ืืึธืงืขื. ืืืื ื ืื, ืืืจ ืืืึทืจืคื ืืืืฃ ืืขืจืืืืืขื ืืฉ. ืืืืขืจื ืืขื ืขื ืืืืจืข ืืื ืงืขื ืืจืขืคื ืึทื ืึท ืงืืื ืืึธืงืขื ืืึทืจืฃ ืืืื ืฉืืขืื. ืืขืจืืืขืจ, ืืืจ ืืืขืื ืืืื ืฉืืขืื ืขืก ืืื Redis:

ืืขืจ ืงืึธื ืคึฟืึทืจ ืืจืืขืื ืืื Redis ืืื ืืืืขืจ ืคึผืฉืื ืืื ื ืื ืึทื ืืขืจืฉ ืคืื ืื ืืขืจืข ืฉืคึผืจืึทืื. ืืื ืืขืจ ืืขืืืืงืขืจ ืฆืืื, ืึทืืข ืึทืจืืึทื ืฉืจืืึทื / ืจืขืืืืืึทื, ืืืึธืก ืืื ืืึธืจื, ืืืึธืก ืืื ืืึธ, ืขืก ืืื ื ืืฉื ืืืึทืงืื ื. ืืืื ืืืจ ืฉืจืืึทืื ืกืื ืืฉืจืึธื ืึธืืก ืงืึธื, ืขืก ืึทืจืืขื ืืืกืื ืืงืจืึทื ืึทืกืื. ืืื ืืื ืืขืื, ื ืึธืจ ืืื ืืขืืื.

ืืึธืืืจ ืืึธื ืื ืืขืจืืืืืขื ืืฉ ืืื:

ืืืจ ืืึธืื ืึทื ืืืจ ืืึทืจืคึฟื ืฆื ืืืืขื ืขื ืื ืืขืื ืืืฃ. ืืืจ ืืึทืงืืืขื POST ืึทืจืืืืขื ืื, ืงืึธื ืืจืึธืืืจื ืึทื ืื ืืึธืืื ืืื ืคึผืึทืจืึธื ืืขื ืขื ืจืืืืืง. ืืืื ืคืึทืืฉ, ืืืจ ืืืึทืจืคื ืืืืฃ ืืขืจืืืืืขื ืืฉ. ืืื ืืืื ืืื ืืขื ืขื ืจืืืืืง, ืืืจ ืฉืจืืึทืื ืืขื ืกืืืขื ืฆื Redis:

ืื ืืืืกื ื ืืฉื ืคืึทืจืืขืกื ืฆื ืฉืืขืื ืื ืงืืื, ืืึธืก ืืื ืืืื ืืขืืื ืืื ืฆืืืื ืฉืืจืืช:

ืืขืจ ืืืืฉืคึผืื ืืื ืคึผืฉืื, ืกืคึผืขืงืืืึทืืืืืข. ืคืื ืงืืจืก, ืืืจ ืืืขืื ื ืืฉื ืืึทืื ืึท ืืื ืกื ืืืึธืก ืืืืืื ืงืึทืฅ ืฆื ืืขื ืืฉื. ืืืขืจ ืืืขืจ ืงืขื ืืื ืื. ืึทืืื ืืึธืื ืก ืืืื ืืืืขืจ ืืืึธืก ืงืขื ืขื ืืืื ืืขืืื ืืื ืคึผืจืึธืืืงืฆืืข.
- ืืื ืืืึทืืืกื ืืึทืงืขื ื. ืืื ืืืจ ืืึทืจืคึฟื ืฆื ืืขืื ืืึทื ืฅ ืึท ืืืกื ืคืื ืืึทืื ืฆื ืื ืืึทืงืขื ื: ืขืจืืขืฅ ืืืจ ืืึทืจืคึฟื ืฆื ืคืึทืจืืืึทืื ืื ืืึทืืข, ืขืจืืขืฅ ืืืจ ืืึทืจืคึฟื ืฆื ืืืืึทืื ืึท ืืื ืคืื ืจืฉืืื, ืืึธืื ืืื ืคืืืข ื ืืฆืขืจืก ืืขื ืขื ืืืืฃ ืืขื ืคึผืืึทืฅ ืืืฆื, ืฉืจืืืฃ ืืืืฃ ืึท ืืึธืืืึทื ืง ืึธืืขืจ ืกืืึทืืืกืืืง. ืขืคึผืขืก ืึทืืื ืงืืืื. ืขืืืขืืข ืืื ืืืึทื ืืจืขืงืืขื ืงืขื ืขื ืืืื ืืขืืืื ืืืืขืจ ืืืืื. ืืึธืก ืืืขื ืืืื ืฉื ืขื, ืืจืื ื ืืื ืืจืืืก.
- ืืึทืืึท ืคึผืจืืคึผืจืึทืกืขืกืื ื. ืืื ืืืจ ืืืืื ืฆื ืืืืขื ืึทืืก ืืื ืืื ืืืขืจ ืืืึทื, ืืื ืืืจ ื ืขืืขื ืื ืึทืืก ืืื ืึทืคึผื ืจืืงืืืขืก. ืืึธืก ืืื ืืืืขืจ ืืจืื ื ืฆื ืืึธื ืืึธ. ืืืจ ืืึธื ื ืื ืืึทืกืข ืืื ืืืขืจ ืืึทืงืขื ื, ืืืึธืก ืืื ืฉืืื ืืจืืขืื ืฉืืืขืจ. ืืืจ ืงืขื ืขื ืงืืืึทืื ืืื ืงืืืึทืื ืืึธ. ืืืจ ืงืขื ืขื ืคืืจืขื ืขืืืขืืข JS ืึธืืขืจ, ืืืืฃ ืื ืคืึทืจืงืขืจื, ืึทื ืกืืืง, ืคึผืจืขืคึผืจืึธืกืขืกืก ืขืคึผืขืก ืืืืืขืจ ืืขืื ืขืก ืฆื ืืขืจ ืืึทื ืืฆืขืจ.
- ืคืึทืกืึทื ืคึฟืึทืจ ืืืงืจืึธืกืขืจืืืืก. ืืึธืก ืืื ืืืื ืึท ืืืืขืจ ืืื ืคืึทื, ืืื ืืืคึผืืึทืืขื ืึทื ืขืก. ืคืืจ ืืขื ืืื ืืื ืืขืืจืืขื ืคืืจ ืืขื ืืืจ, ืื ืขืืขืงืืจืื ืืฉืข ืจืขืคืืจื ืคืืจืืข ืืืขืืืข ืืื ืืืจืืื ืคืืจ ืืขืจื ืืืื ืคืื ืื ืืขืืืืข ืืืื ืืืืื ืืื ืืื ื. ืืืจ ืืึธืื ืืขืืืื ืึท ืืื ืกื, ืคืืืข ืืื ืื ืืขื ืขื ืืขืืื ืืึธืจื ืืื ืืขืจ ืืขืืืืงืขืจ ืืขืงืึทื ืืืึทื: ืจืืืื ื, ืืขืจืืืืืขื ืืฉ, ืืื ืืขืจ.
OpenResty ืงืขื ืขื ืืืื ืืขืืืืื ื ืืื ืื ืงืืื ืคึฟืึทืจ ืืืื ืืืงืจืึธืกืขืจืืืืกืขืก ืฆื ืฆืืฉืืขืื ืึท ืืืื ืึทืงืกืขืก ืฆื ืึทืืฅ ืืื ืึท ืืืื ืฆืืืื ื. ืืื ื ืืืงืจืึธืกืขืจืืืืกืขืก ืงืขื ืขื ืืืื ืืขืฉืจืืื ืืื ืึทืืึท ืึท ืืืขื ืึทื ืืืจ ืืึธืื Node.js ืืึธ, ืืืจ ืืึธืื PHP ืืึธ, ืืืจ ืืึธืื ืคึผืืืืึธื ืืึธ, ืขืก ืืื ืขืืืขืืข Erlang ืืึทื ืืึธ, ืืืจ ืคึฟืึทืจืฉืืืื ืึทื ืืืจ ืืึธื ื ืืฉื ืืืขืื ืฆื ืจืืจืืื ืืขืจ ืืขืืืืงืขืจ ืงืึธื ืืืืขืืื. ืืขืจืืืขืจ, OpenResty ืงืขื ืขื ืืืื ืคึผืืึทืื ืืื ืื ืคืจืึธื ื. - ืกืืึทืืืกืืืง ืืื ืึทื ืึทืืืืืงืก. ืืืืฉืึทืืืึทืื NGINX ืืื ืืื ืื ืึทืจืืึทื ืืึทื ื, ืืื ืึทืืข ืจืืงืืืขืก ืืืื ืืืจื ืขืก. ืขืก ืืื ืืื ืืขื ืึธืจื ืึทื ืขืก ืืื ืืืืขืจ ืืึทืงืืืขื ืฆื ืงืืืึทืื. ืืืจ ืงืขื ืขื ืืืืื ืจืขืืขื ืขื ืขืคึผืขืก ืืื ืืืึทืจืคื ืขืก ืขืจืืขืฅ, ืืืฉื, ืืขืจ ืืขืืืืงืขืจ Elasticsearch, Logstash, ืึธืืขืจ ื ืึธืจ ืฉืจืืึทืื ืขืก ืฆื ืื ืงืืึธืฅ ืืื ืืขืืึธืื ืฉืืงื ืขืก ืขืจืืขืฅ.
- ืืืืื-ืืึทื ืืฆืขืจ ืกืืกืืขืืก. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืึธื ืืืื ืืึทืืขืก ืืขื ืขื ืืืื ืืืืขืจ ืืื ืฆื ืืึธื. ืืืึทื ื ืืื ืงืึทืคึผืข ืืึทืื, ืืืขืงืกืื ืืขืจ ืืืึทืืืฉ ืืืขื ืืึธืื ืืืจ ืืื ืฆื ืืขืฉืืืื ื ืคึผืจืึธืืืึทืืืืคึผ ืึท ืืืืืืคึผืืืึทืขืจ ืฉืคึผืื ื ืืฆื OpenResty.
- ืืขืื ืคึฟืืืืจืืจืื ื (WAF). ืืืฆื ืขืก ืืื ืืึธืืขืจื ืฆื ืืึทืื ืึทืืข ืกืึธืจืฅ ืคืื ืืืขื ืึทืคึผืืึทืงืืืฉืึทื ืคืืจืขืืืึทืืืก, ืขืก ืืขื ืขื ืคืืืข ืืึทืืื ืื ืืก ืืืึธืก ืฆืืฉืืขืื ืืื. ืืื ืื ืืืืฃ ืคืื OpenResty, ืืืจ ืงืขื ืขื ืืึทืื ืืื ืึท ืืืขื ืึทืคึผืืึทืงืืืฉืึทื ืคืืืจืืืึทื, ืืืึธืก ืืืขื ืคืฉืื ืืื ืืืืื ืคืืืืขืจ ืจืืงืืืขืก ืืืื ืืืื ืจืขืงืืืืจืขืืขื ืฅ. ืืืื ืืืจ ืืึธื ืคึผืืืืึธื, ืืืจ ืคึฟืึทืจืฉืืืื ืึทื PHP ืืืขื ืืืฉืืืื ื ืื ืืืื ืื ืืืฉืขืงืืื ืฆื ืืืจ, ืกืืึทืื, ืคืื ืงืืจืก, ืืืจ ืจืืื ืขืก ืขืจืืขืฅ ืคึฟืื ืื ืงืึทื ืกืึธืื. ืืืจ ืืืืกื ืึทื ืืืจ ืืึธืื MySQL ืืื Python. ืืืกืืึธืืข, ืืึธ ืืื ืงืขื ืขื ืคึผืจืืืืจื ืฆื ืืึธื ืขืืืขืืข ืืืขืืืืืึทืืขืจ ืืจืึทืืืขืจืกืึทื ืืื ืึทืจืืึทื ืฉืคึผืจืืฆื ืขืคึผืขืก ืืื ืื ืืึทืืึทืืืืก. ืืขืจืืืขืจ, ืืืจ ืงืขื ืขื ืคืืืืขืจ ืืืืก ืฉืืื ืจืืงืืืขืก ืืขืฉืืืื ื ืืื ืืืืืง ืจืขืื ืืื ืื ืคืจืึธื ื.
- ืงืืืื. ืืื ื OpenResty ืืื ืืืืืจื ืืืืฃ NGINX, ืขืก ืืื ืึท ืืึธื ืืก - ืืึธืก ืืื NGINX ืงืื. ืขืก ืืื ืืืืขืจ ืืจืืืก, ืืื ืคืืืข ืคืื โโืื ืคึฟืจืืื ืืืึธืก ืืืจ ืืืขื ืืึธืื ืืื ืขืจืฉืืขืจ ืืึธืื ืฉืืื ืืขืขื ืืคืขืจื ืืืจื ืื NGINX ืงืื.
ืืืึท ืืขืืืขืืึธืคึผืขืจืก. ื ืขืืื ืืื ืืขืจืขืื ืืื ืื ืืืื ืืืึธืก ืืขื ืขื ืืขืงืืืขื ืฆื ืื HighLoad ++ ืืจืืื ืื ื ืืึธื ืืื ืืขืืขืจื ืึทื ืืืืื Tarantool ืืื ืืขืฉืจืืื ืืื ืืืึท. ืืึธืก ืืื ื ืืฉื ืึทืืื, ืึท ืคึผืืึทืฅ ืคืื ืืืื ืืขื ืขื ืืขืฉืจืืื ืืื ืืืึท. ืืืืฉืคืืื: OpenResty, Prosody XMPP ืกืขืจืืืขืจ, Love2D ืฉืคึผืื ืืึธืืึธืจ, Lua ืืื ืกืงืจืืคึผืืื ืืื Warcraft ืืื ืื ืืขืจืฉ. ืขืก ืืขื ืขื ืคืืืข Lua ืืขืืืขืืึธืคึผืขืจืก, ืืื ืืึธืื ืึท ืืจืืืก ืืื ืึธืคึผืจืืคืืง ืงืื. ืึทืืข ืืืื ืืืึท ืคึฟืจืืื ืืขื ืขื ืืขืขื ืืคืขืจื ืืื ืึท ืืืกื ืฉืขื. ืืืขื ืืืจ ืฉืจืืืื ืฆื ืื ืืืืืื ื ืจืฉืืื, ืืืฉ ืืื ืึท ืืืกื ืืื ืื ืขืก ืืขื ืขื ืฉืืื ืึท ืคึผืืึทืฅ ืคืื ืขื ืืคึฟืขืจืก, ืืื ืืึทืฉืจืืึทืื ืืืึธืก ืืื ืืื, ืืืึธืก ืืื ืืืึธืก. ืขืก ืืื ืืขืืืืืืื. ืฆืื ืืึทืืืืขืจื, ืึทืืึท ืืื ืึธืคื ืืึทืจืฆืืง ืงืื ืืื ื ืืฉื ืืืืขืืื.
OpenResty ืืื GitHub, ืืื ืืืจ ืงืขื ืขื ืขืคึฟืขื ืขื ืึทื ืึทืจืืืกืืขืื ืืืื ืขืคึผืขืก ืืจืืืงืก. ืขืก ืืื ืึท ืืืืืื ื ืจืฉืืื ืืืืฃ Google ืืจืืคึผืขืก ืืื ืืืจ ืงืขื ืขื ืืืกืงืืืืจื ืึทืืืขืืืื ืืฉืื, ืขืก ืืื ืึท ืืืืืื ื ืจืฉืืื ืืื ืืื ืขืืืฉ - ืืืจ ืงืืื ืืึธื ืืืืกื, ืืคึฟืฉืจ ืืืจ ืืึธื ื ืื ืจืขืื ืขื ืืืืฉ, ืึธืืขืจ ืืืจ ืืืืกื ืืื ืขืืืฉ.
ืจืขืืืืืึทืื ืคืื
- ืืื ืืึธืคึฟื ืืื ืืื ืืขืืืขื ืืืืืืช ืฆื ืงืึทื ืืืื ืึทื OpenResty ืืื ืึท ืืืืขืจ ืืึทืงืืืขื ืคืจืืืืืืขืจืง ืืืืืขืจื ืคึฟืึทืจ ืื ืืืขื.
- ืขืก ืืื ืึท ื ืืืขืจืืง ืฉืืืขื ืคืื ืคึผืึธืืืฆืืข, ืืื ื ืื ืงืึธื ืืื ืขื ืืขื ืฆื ืืืึธืก ืืืจ ืฉืจืืึทืื, ืื ืฉืคึผืจืึทื ืืื ืืึทื ืฅ ืคึผืฉืื ืืื ืืื ืืืึทืืืกืืืง.
- ืขืก ืืื ืืืกืื ืืงืจืึทื ืึทืก ืืื / ืึธ ืึธื ืงืึทืืืืึทืงืงืก, ืืืจ ืืืขืื ื ืืฉื ืืึธืื ืืึธืงืฉื ืืื ืืืจ ืงืขื ืขื ืืื ืฉืจืืึทืื ืืื NodeJS.
- ืขืก ืืื ืึทื ืืจืื ื ืืืคึผืืืืืึทื ื, ืืืืึทื ืืืจ ื ืึธืจ ืืึทืจืคึฟื NGINX ืืื ืื ืจืขืื ืืึธืืืืข ืืื ืืื ืืืขืจ ืงืึธื, ืืื ืึทืืฅ ืึทืจืืขื ืืืืื.
- ืืจืืืก ืืื ืึธืคึผืจืืคืืง ืงืื.
ืืื ืืื ื ืืฉื ืืขืจืฆืืืื ืืื ืืขืืึทื ืืื ืจืืืื ื ืืื ืืืจืืืขืงืึธืื, ืขืก ืืื ืืขืืืขื ืึท ืืืืขืจ ืืึทื ื ืืขืฉืืืืข.
ืืื ืืืืง!

ืืงืืจ: www.habr.com
