Ruby 與 C# 的 operators 蠻相近的,應該說整個程式圈的 operators 都大概長那樣阿,嗯,沒錯,本篇完
欸,不是,我們快速帶過相同用法的 operators ,然後聊聊有差異的地方,這樣總行了吧
Ruby 與 C# 的 operators 蠻相近的,應該說整個程式圈的 operators 都大概長那樣阿,嗯,沒錯,本篇完
欸,不是,我們快速帶過相同用法的 operators ,然後聊聊有差異的地方,這樣總行了吧
我是一名使用 Ruby 與 JavaScript 開發的程式設計師,我愛寫 Ruby,這個語言讓我體會到寫程式的樂趣
不過很可惜的目前服務的公司並沒有使用 Ruby 而是用 C# 作為後端的開發語言
欣慰的是 C# 與 JavaScript 看起來挺像的,希望我能將以前物件導向與 JavaScript 的開發經驗映射到 C# 上,快速掌握這門語言
也因此最近都在看微軟官方的 C# documentation
吐槽一下,比起 MDN 或 Ruby Doc,微軟的文件似乎沒那麼好看,,且尚未支援 Dash 與 DevDocs,只能透過瀏覽器到此查閱
Heroku 上執行 Rails app 的定時任務(Scheduled Task)
一般 Rails app 的定時任務是把 ActiveJob
包成一個 rake task
並透過 crontab
執行。這種架構的適合用在分鐘級別以上的定時任務。
但是 Heroku 並沒有提供 crontab
指令,在 Heroku 上運行定時任務必須用到一個 addon:Heroku Scheduler
rails mail:birth_notification
),我設定頻率為每天,它每天都會檢查今天是不是 25 日,是則執行後面的指令1 | # every months 25th do this rake task |
Heroku Scheduler 最小只提供間距為 10 分鐘級別的定時任務,若要更精細,只能使用應用層級的定時排程了例如:
Sidekiq 是一個能夠並發處理 Ruby 任務的套件,大致上的運作方法是:將任務 push 至 redis 的 queue 中,sidekiq 的 workers 再到 queue 一個個 pop 任務出來運算。
1 | # Gemfile |
1 | bundle install |
Heroku 是一個 platform as a service 平台,可以部署專案在此,使用上非常方便的,當然方便的代價是價格,他的單位計算資源價格會高於 AWS。
見 https://devcenter.heroku.com/articles/heroku-cli
1 | # 將 heroku 加入 brew 的來源 |
Mac OS X 內建的 Ruby 版本並非最新版,只安裝了維持系統運行,最低需求版本的 Ruby,所以要安裝最新版本的 Ruby 就得額外安裝。
brew install ruby
如果開發環境有安裝多個版本的 Ruby 的需求,就使用 RVM 來安裝與管理 Ruby 吧,可以透過 RVM 自由切換使用的 Ruby 版本與 Gemset,保持開發環境的乾淨。
詳情見 https://rvm.io/
1 | # Install GPG keys: |