iT邦幫忙

2024 iThome 鐵人賽

DAY 1
0

這系列適合誰

雖然想盡量寫的簡單,但本篇適合以下類型的讀者

  1. 沒寫過 Elixir 的工程師想看看 Elixir 的多工模型
  2. 已經用 Elixir 一陣子,想自己寫寫看 OTP

給 Elixir 新手的一點建議

要用 Elixir 工作可以先不需要熟悉 Process 與 OTP,當然,了解之後可以應用的東西會更多,但是一般工作使用 Phoenix 框架寫的商業邏輯與網頁邏輯已經有由框架幫我們把 OTP 以適合的方式包起來了,對剛接觸 Phoenix 的朋友我建議先依照 Phoenix 替我們包好的寫法,之後有需要什麼再來延伸。

給懶惰人的 tldr;

  • Elixir 跑在 BEAM VM (Erlang 的 VM) 天生就是為了解決多核心與多伺服器 clustering
  • Elixir (與 Erlang) 的多工模型為 Actor,由 processes 組成
  • 所有 process 之間可收發訊息但相互隔離且不共享狀態

寫這個主題的原由

自己已經使用 Elixir 與 Phoenix 工作數年,但對於 process 這方面總是處於相當依賴但卻矇矇懂懂的狀態,儘管可以運用 Phoenix 與 LiveView 寫一些跨 process 的酷應用,但心裡總是不踏實,因此借這個機會一次弄懂,同時分享給大家。


下一篇
02 Process
系列文
Elixir 多工 : Processes 與 OTP30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言