Node.js + worker_threads 多執行緒實戰範例
一般狀況下 Node.js 為單執行緒,如果同步執行時遇到「阻塞」的程式,後續要執行的程式就會全部被卡住;為了解決這個問題, Node.js 在 v12 推出了 worker_threads,這個 Module 讓 Node.js 可以做多執行緒的平行處理!
TOPIC ・ 主題
Tech Tutorials
手把手的實作教學。從挑選主題、撰寫文章到部署上線與 SEO 設定,一步步打造自己的個人品牌網站。
共 122 篇文章
一般狀況下 Node.js 為單執行緒,如果同步執行時遇到「阻塞」的程式,後續要執行的程式就會全部被卡住;為了解決這個問題, Node.js 在 v12 推出了 worker_threads,這個 Module 讓 Node.js 可以做多執行緒的平行處理!
現在使用者對網站的要求越來越高,即使你的內容做得很棒,但如果頁面載入時間超過 3 秒,使用者可能在被你的內容吸引前就離開了網站。如果你做的是電子商務系統,這個「痛點」會更為明顯,一但讓客戶等太久,公司就會流失大筆訂單…
在認識 forEach、map 這類高階函數後,就比較少使用 for 迴圈了,畢竟前者寫起來更加簡潔。 但不久前有朋友遇到 Bug 跑來問我,說他程式執行的順序怪怪的,明明有寫 await,但跑起來卻不符期待;在看過程式後,我發現問題出在「forEach」這個函數。
我們身處在一個開源工具大爆炸的時代,每天都有許多套件發布到平台上供大家使用;但正因為開源工具爆炸,我們要面對的不是沒有工具,而是工具太多不知道怎麼選,所以在了解套件的重要性後,更重要的是要知道如何選出適合的套件。
撰寫前端時,一個頁面往往需要 call 多支 API 才能完成渲染。為了等資料回傳,我們通常都會搭配 await,但有時 API 之間並沒有要求執行的順序;在這樣的情境下,如果還是採取順序執行的方案,當需要 call 多支 API 時就會浪費使用者許多時間。
相信 console.log 是 Frontend 開發人員的好朋友,我們用它印出各種輔助資訊來解決問題。這邊文章會跟你分享 6 種 console.log 的進階應用,並說明各自的使用情境,讓你在開發路上更加順利。
Docker Image 體積越大,那部署要花的時間就越長;假如每個版本都有好幾 GB,那並不是一個理想的狀態;因此筆者開始動手實作,想看看到底能將 Docker Image 的體積縮小多少!
市面上很多文章、影片分享了物件導向要如何應用。 卻很少人分享這些概念最初是為了解決什麼問題,所以很多人就算學完了物件導向的概念,卻依舊沒有把它應用在手上的專案。 因此這個系列文中,筆者會先分享「直線思考下」我們會設計出怎樣糟糕的程式…
市面上很多文章、影片分享了物件導向要如何應用。 卻很少人分享這些概念是為了解決什麼問題,所以很多人就算學完了物件導向的概念,卻依舊沒有把它應用在手上的專案。 因此這個系列文中,筆者會先分享「直線思考下」我們會設計出怎樣糟糕的程式;接著再來討論如何應用物件導向的概念對程式做…
儘管在 Linux 用 cd、vi、mv、cp、rm、ls 這些基礎指令就能滿足大部分的需求,但遇到一些特殊狀況時,這些指令就不夠用了。這篇文章彙整了筆者常用的 Linux 指令,以「vim 編輯器、查詢 Server 各項資源、檢查網路環境」為主。