อยากสร้างเว็บที่รับโหลดได้เยอะ มีประสิทธิภาพสูง และจัดการกับ Request ได้แบบไหลลื่น ทำยังไงได้บ้าง ?
.
ต้องเจ้านี่ Nginx ซอฟต์แวร์ที่ช่วยจัดการ Request ต่าง ๆ ได้อย่างมีประสิทธิภาพ !! และวันนี้แอดจะพาเพื่อน ๆ มาทำความรู้จักกับเจ้านี่กันแบบคร่าว ๆ ว่ามันคืออะไร ทำงานยังไง หากพร้อมกันแล้ว ไปติดตามกันได้เลย 👇 😊
.
.
💡 รู้จัก Nginx
Nginx หรืออ่านว่า Engine-X เป็นเว็บเซิร์ฟเวอร์ที่สามารถรองรับผู้ใช้งานได้หลากหลาย และมีประสิทธิภาพสูง เป็น Open-Source รองรับ Reverse Proxying, Caching, Load Balancing สำหรับเซิร์ฟเวอร์ HTTP, TCP และ UDP, และการทำ Media Streaming นอกจากนี้ยังสามารถใช้เป็น Proxy Server สำหรับอีเมล์ (IMAP, POP3, and SMTP) ได้อีกด้วย
.
โดยส่วนใหญ่แล้วจะถูกใช้งานกับเว็บที่มีการอัพโหลด หรือ ดาวน์โหลดบ่อย ๆ หรือใช้ในการ Streaming สามารถรองรับการเชื่อมต่อในปริมาณมาก จัดการ Traffic ได้อย่างมีประสิทธิภาพและรวดเร็ว
.
.
⚙️ Nginx ทำงานยังไง ?
Nginx สร้างขึ้นเพื่อจัดการกับ Request ต่าง ๆ แบบ Asynchronous รับ Request พร้อมกันได้โดยไม่บล็อก Request อื่น ๆ โดยไม่เปลืองหน่วยความจำ กินทรัพยากรน้อย ทำให้ CPU และ RAM ทำงานได้มากยิ่งขึ้นนั่นเอง
.
ซึ่ง Nginx จะมีฟีเจอร์เด่น ๆ ดังนี้
🔹 Reverse proxy with caching
🔹 IPv6
🔹 Load balancing
🔹 FastCGI support with caching
🔹 WebSockets
🔹 Handling of static files, index files, and auto-indexing
🔹 TLS/SSL with SNI
.
NGINX จะถูกวางไว้ระหว่าง Clients และ Web Server เพื่อจัดการ SSL/TLS หรือใช้เพื่อเร่งความเร็วของเว็บ เป็นตัวกลางในการจัดการงานที่อาจจะทำให้เว็บเซิร์ฟเวอร์ของเราช้าลง เช่น Negotiating SSL/TLS, การบีบอัดและแคชเนื้อหาเพื่อปรับปรุงประสิทธิภาพ ซึ่งสามารถใช้กับเว็บที่สร้างขึ้นจากอะไรก็ได้ ไม่ว่าจะเป็น Node.js หรือ PHP ซึ่งส่วนใหญ่แล้วจะแคชเนื้อหาและ Reverse Proxy เพื่อลดภาระงานบนเซิร์ฟเวอร์ ใช้สามารถใช้ประโยชน์จากฮาร์ดแวร์ได้อย่างเต็มที่
.
.
✨ ข้อดี
🔸 มีความปลอดภัย รองรับมาตรฐาน HTTP/2
🔸 รองรับการทำงานของ HTTP
🔸 ประมวลผลได้รวดเร็ว
🔸 ทำงานแบบ Asynchronous รองรับ Request เยอะ ๆ ได้เป็นอย่างดี
.
.
⚠️ ข้อจำกัด
🔹 การ config ค่อนข้างซับซ้อน
🔹 ดูแลจัดการได้ยาก และไม่ค่อยมีความยืดหยุ่น
.
.
📑 อ่านข้อมูลเพิ่มเติมได้ที่นี่ : https://kinsta.com/knowledgebase/what-is-nginx/ , https://www.nginx.com/resources/glossary/nginx/
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
#Nginx #BorntoDev
「node.js http server」的推薦目錄:
- 關於node.js http server 在 BorntoDev Facebook
- 關於node.js http server 在 โปรแกรมเมอร์ไทย Thai programmer Facebook
- 關於node.js http server 在 โปรแกรมเมอร์ไทย Thai programmer Facebook
- 關於node.js http server 在 Build a HTTP Server in Node.js for Beginners - YouTube 的評價
- 關於node.js http server 在 Node.js HTTP Module - JavaScript Tutorial 的評價
node.js http server 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 八卦
ถ้าพูดถึงภาษาที่เอาโค้ดไปแทรกซึมอยู่ใน HTML ได้
แล้วทำงานฝั่ง server side
.
ดังๆ มีอยู่สามตัวสู้กันมาอย่างยาวนาน
PHP
ASP.NET ของไมโครซอฟต์
JSP สาย Java ของ Oracle
.
ลองเปรียบเทียบได้ตามภาพ
.
หมายเหตุ JavaScript
โดยธรรมชาติมันก็แทรกอยู่ใน HTML
แต่เวลาทำงานจริง จะอยู่ฝั่ง client side (บนบราวเซอร์)
.
ถ้าเราจะเปลี่ยนมาทำงานบน server side ก็ได้ด้วย
โดยใช้ node.js กับ deno
พวกนี้เป็นรันไทม์ JavaScript ฝั่ง server side
ไม่ต้องพึ่งการเขียนโค้ดด้วย PHP, ASP.NET และ JSP
.
ที่มา
http://forhadparvez.blogspot.com/2017/03/aspnet-vs-php-vs-jsp.html
.
✍เขียนโดย โปรแกรมเมอร์ไทย thai programmer
node.js http server 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 八卦
วันนี้ข้อแนะนำ ไลบรารี่ JavaScript หรับงาน AI ด้าน Deep Learning (อยู่ในหมวดหมู่ Neural Networks)
ตามลิงค์นี้ http://cs.stanford.edu/people/karpathy/convnetjs/index.html
ข้อดีไลบรารี่นี้คือ
-ตัวอย่างโค้ดอ่านง่ายมาก ถ้าใครคอ Deep learning เห็นโค้ดปุ๊บ ก็จะเข้าใจโครงสร้าง model ทันที (คิดว่าไม่แพ้ไลบรารี่ตัวอื่น)
-มี demo เป็นกราฟฟิกให้เห็นภาพชัด ดีเยี่ยมยอดมากๆ
-ด้วยความเป็น JavaScript จึงติดตั้งใช้ง่าย ไม่ยุ่งยากอะไร เพียงแค่ดาวน์โหลดไลบรารี่ ก็เรียกใช้ได้เลย
-สามารถใช้ในฝั่งหน้าเว็บ Browser หรือฝั่ง Server side (Node.js)
ข้อเสีย คือ
- document ที่อธิบายน้อยไปหน่อย เลยไม่รู้จะเขียนอะไรได้พลิกแพลงมากกว่านี้หรือเปล่า
- ตัวอย่างโค้ด ที่มีคนเคยเอาไปใช้ก็น้อยไปหน่อย จะไม่เหมือนไลบรารี่ดังๆ ของภาษาอื่น มีตัวอย่างให้เห็นตรึม
- ยิ่งจะใช้โครงสร้าง Network ที่ซับซ้อนกว่านี้ (เช่น LSTM) ในเอกสารก็ไม่เขียนบอก ดูแล้วน่าจะทำไม่ได้เนอะ (เดา)
ถึงอย่างไร ก็เป็นอีกทางเลือกหนึ่ง น่าสนใจ สำหรับสายงานด้านนี้ครับ
Today, Javascript library recommendation for ai on deep learning (in neural networks category)
Follow this link http://cs.stanford.edu/people/karpathy/convnetjs/index.html
The Advantages of this library is
- sample code is very easy to read. If anyone has deep learning neck. See the code, you will understand the model structure immediately. (I think it's not allergic to other libraries)
- there is demo as graphics to see clear. Awesome.
- with Javascript, it's easy to install, no hassle. Just download the library and it can be used.
- can be used on browser or server side (Node. JS)
The disadvantage is
- the document that explains a little less. I don't know what to write. Can I flip the raft more.
- the sample of the code that someone used to use is a little bit. It won't look like the loud library of other languages. There is an example to see.
- the more complicated network structure (e.g. lstm) in the documents, I don't write. I can't do it. (guess)
It's another interesting choice for this line of work.Translated
node.js http server 在 Node.js HTTP Module - JavaScript Tutorial 的八卦
The http module is a core module of Node designed to support many features of the HTTP protocol. ... Second, create an HTTP server using the createServer() method ... ... <看更多>
node.js http server 在 Build a HTTP Server in Node.js for Beginners - YouTube 的八卦
Source code: https://openjavascript.info/create-a- http - server -in- node - js / ⚡ Looking for high-performance, afforable web hosting? ... <看更多>