Skip to content

Zeroplex 生活隨筆

軟體開發、伺服器和生活瑣事

小 縮小字型大小。 中 重設字型大小。 大 放大字型大小。

標籤: Linux

啟動 & 停止 Laravel queue worker in Bash

Posted on 2023 年 4 月 2 日2023 年 4 月 2 日 By 日落 在〈啟動 & 停止 Laravel queue worker in Bash〉中有 5 則留言

Laravel 的 queue worker 與 Horizon 需要透過 artisan queue:work 在背景執行,若可以的話,再使用 systemd 或 supervisor 來監控運作狀態。

不過 systemd 和 supervisor 都需要 root 權限來操作,說起來蠻麻煩的,所以寫了一小段 shell script 來啟動與停止,沒辦法在 worker 中斷時 restart,但可以做 graceful start & shutdown。

啟動 queue worker:

./artisan queue:work \
    --no-interaction --no-ansi >> storage/logs/queue.log 2>&1 &

# 透過 $? 來檢查指令執行是否成功
if [ $? -ne 0 ]; then
    echo "FAILED !"
else
    echo "OK"
fi

停止所有的 queue worker:

# queue:restart 會送訊號給所有的 worker 來 graceful shutdown
./artisan queue:restart --quiet --no-ansi

# 檢查是否所有的 proccess 都停止
while [ 1 ]; do
    QUERY="$(ps -ef | grep queue:work | grep -v grep)"
    if [ -z "${QUERY}" ]; then
        break
    else
        sleep 1
    fi
done
echo "OK"

Laravel Horizon 的操作相對簡單一些。

啟動 Horizon:

./artisan horizon \
    --quiet --no-interaction --no-ansi >> storage/logs/horizon.log 2>&1 &

if [ $? -ne 0 ]; then
    echo "FAILED !"
else
    echo "OK"
fi

停止 Horizon:

artisan horizon:terminate --quiet --no-interaction --no-ansi

# 檢查 proccess 是否終止
while [ 1 ]; do
	QUERY="$(ps -ef | grep horizon | grep -v grep)"
	if [ -z "${QUERY}" ]; then
		echo "OK"
	else
		sleep 1
	fi
done
Tags:Bash, Laravel, Linux

在 tar 中使用 zstd 壓縮

Posted on 2023 年 3 月 13 日2023 年 3 月 13 日 By 日落 在〈在 tar 中使用 zstd 壓縮〉中有 2 則留言

在 CloneZilla 中看到 zstd 這個壓縮工具,其演算法由 Facebook 開發,速度和壓縮比介於 gzip 和 bzip2 之間,且支援 multi-thread,打包大量資料時蠻好用的。

使用 tar 時,使用 -I 參數來使用 zstd:

tar -I zstdmt -cf pack.tar.zst logs/

備註:zstdmt 是 zstd -T0 的 alias

Tags:Linux

wait-for-it 檢查、等待服務啟動

Posted on 2023 年 3 月 8 日2023 年 3 月 8 日 By 日落 在〈wait-for-it 檢查、等待服務啟動〉中尚無留言

wait-for-it 是個 shell script 撰寫的工具,會等待並檢查目標是否可以進行 TCP 連線。

例如等待 mysql 啟動:

$ wait-for-it 127.0.0.1:3306
wait-for-it: waiting 15 seconds for 127.0.0.1:3306

可以在 docker 中檢查其他 container / service 是否啟動,可以的話才繼續執行:

# wait for MySQL to initialize
wait-for-it db:3306

# run DB migration
php artisan migrate
Tags:Docker, Linux

Slimbook Battery 的省電參數會導致 VM host 顯卡偵測錯誤

Posted on 2023 年 3 月 4 日2023 年 3 月 4 日 By 日落 在〈Slimbook Battery 的省電參數會導致 VM host 顯卡偵測錯誤〉中尚無留言

VMware Workstation 跑 Windows 11 慢到一個不可思議,VM host 的處理器顯視為滿載,但 VM guest 卻一直卡住不會動。追了很久,才發現是 Slimbook Battery 調整過顯卡的參數,導致 VMware 無法正常模擬顯卡。

解法有二個,最直接的方法就是關閉 Slimbook Battery 的省電功能;另一個是暫時將 VM host 的 3D accelerator 功能關閉。

Tags:Linux, VMware

更換 UbuntuMate 22.04 登入畫面背景圖片

Posted on 2023 年 2 月 25 日2023 年 2 月 25 日 By 日落 在〈更換 UbuntuMate 22.04 登入畫面背景圖片〉中尚無留言

以下方法僅適用於 UbuntuMate 22.04,其他版本可能無法使用相同的方法修改。

開啟系統設定檔 /usr/share/glib-2.0/schemas/30_ubuntu-mate.gschema.override,應該可以在檔案前半段找到系統預設使用的背景圖片檔 Jammy-Jellyfish_WP_4096x2304_Green.png。

把這個設定改為自己要使用的檔案即可:

background=/home/zeroplex/圖片/login.png

修改完成以後,打開終端機,輸入以下指令:

sudo glib-compile-schemas /usr/share/glib-2.0/schemas/

重新開機以後,登入畫面應該就會更新。

參考資料:How to change login screen background in Ubuntu Mate 21.04?

Tags:Linux, Ubuntu

文章分頁

上一頁 1 ... 4 5 6 ... 32 下一頁

其他

關於我  (About me)

小額贊助

  文章 RSS Feed

  留言 RSS Feed

Apache AWS Bash C/C++ Docker FreeBSD GCP Git Google Java JavaScript Laravel Linux Microsoft MSSQL MySQL Nginx PHP PHPUnit PostgreSQL Python Qt Ubuntu Unix Vim Web Windows WordPress XD 作業系統 分享 好站推薦 專題 攝影 新奇搞笑 新聞 旅遊 生活雜記 程式設計 網路架站 網頁設計 資訊學習 資訊安全 遊戲 音樂


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權.