在 Laravel 的開發旅程中,我們經常面臨一個尷尬的階段:專案還沒大到需要導入複雜的 Kubernetes 或全套 CI/CD 自動化架構,但伺服器數量已經從 1 台變成 3 台、5 台。這時,我們常陷入「重複 SSH 登入、手動輸入指令」的無間地獄最近在整理維運流程時,針對 Laravel Envoy 做了一次深度梳理,以下是幾個關鍵的技術疑問與實戰總結。疑問一:有了 CI/CD,為什麼還要 Envoy?這是一個非常實際的衝突。很多人認為「配置變更」理應走 CI/CD。
答案是:流程的「響應速度」與「適用場景」。

CI/CD 是流水線: 適合處理標準化、需經過測試的程式碼發佈。

Envoy 是維運救急包: 當你需要「即時反應」(例如緊急調整 .env 參數、重啟 Swoole 進程、清理快取)時,走完整個 CI/CD Pipeline 太慢了。Envoy 讓你直接在開發機下指令,瞬間對多台主機進行操作,這是一種「本地驅動、即時生效」的控制力。

文章標籤:

jack4689 發表在 痞客邦 留言(0) 人氣()

將資料庫從 MySQL 8.0 升級到了 8.4 LTS 版本,原本以為只是常規的基礎設施升級,沒想到卻迎來了長達半天的唯讀副本(Read Replica)同步延遲。作為一個追求效能的開發者,在面對 8GB RAM 的硬體限制與大量資料處理需求時,這次的教訓刻骨銘心。
一、 升級後的隱形殺手:innodb_change_buffering在 MySQL 8.4 中,一個重大的改動是 innodb_change_buffering 的預設值從 all 被調整為 none。
文章標籤:

jack4689 發表在 痞客邦 留言(0) 人氣()

做網站功能,難免會有檔案上傳與下載的需求
像是匯出報表之類

jack4689 發表在 痞客邦 留言(0) 人氣()

js 是 by reference 的模式
a = {};

jack4689 發表在 痞客邦 留言(0) 人氣()

當用 supervisor 去啟用 laravel octane 時,要留意 horizon 的設定
config/horizon.php

jack4689 發表在 痞客邦 留言(0) 人氣()

先前在用 Codeigniter 開發時,都習慣查詢結果轉成陣列 results_array, row_array,會是比較直覺處理的
改用 laravel 時,發現有 toArray的用法,不過常常爆錯

jack4689 發表在 痞客邦 留言(0) 人氣()

在CI 推出新版後,想躍躍欲試,。大致上架構有參考到Laravel (不少地方
不過這次的新版多了一個public資料夾,而且index.php 不在根目錄!!!

jack4689 發表在 痞客邦 留言(0) 人氣()

sudo supervisorctl status -- 取得列表
sudo supervisorctl (start | stop | restart ) name -- 開始 | 停止 | 重啟 指定的 supervisor

jack4689 發表在 痞客邦 留言(0) 人氣()

1. 實作interface
2. 實作服務本身,並實現interface的func
   可以寫兩個服務,一個測試用(TestRepoistory、一個正式用(PostRepository

jack4689 發表在 痞客邦 留言(0) 人氣()

以往在一些好友名單,如果要找尋某個人就要一個一個看,懂電腦的會直接Ctrl+F
但對於不懂電腦的,就會先給個搜尋框+按鈕

jack4689 發表在 痞客邦 留言(0) 人氣()

最近php coding時剛好需要把兩個table的資料一起顯示在同一頁,並用分頁。在mysql的情況下,limit 只需代入起始index+要顯示的筆數,方便很多,比較好調整。但在sql server,沒有limit可用,除了top之外,好像只能在sql語法使用row_number()的方式,加入筆數限制,但不一樣的是代入的值,是要起始與結束index。
例:10筆做2分頁
mysql
limit 1, 5
limit 6, 5
sql server
row>=1 and row<=5
row>=6 and row<=10
那為了讓資料能正常顯示,於是花了些時間想一想,寫了基本的運算式
A類型筆數->a_rows
B類型筆數->b_rows
頁數->page
每頁筆數->per
_start, _end ->各類型的起始與結束index

jack4689 發表在 痞客邦 留言(0) 人氣()

初學者開新的新增頁面,欄位是設定varchar的話,通常code都是
$form->field($model, 'post_title')->textInput()
如果不想用text而是下拉式選單那要怎麼改了?
先把textInput()改成下面的code格式

jack4689 發表在 痞客邦 留言(0) 人氣()

1 2
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。