0%

前言

這篇文章主要是記錄一下使用跨域 cookie 需要設定及注意的地方,以下範例程式後端是使用 Python/Flask, 前端則是用 Axios 來送出 request 到後端。

Read more »

前言

在 docker 中,預設是使用 root user, 但這樣非常不安全,所以通常會在 docker 中另外建立 user,可以透過 --build-args 傳入當前使用者的 User ID 和 Group ID,將新增的 user 的 User ID 和 Group ID 設為當前使用者,最後使用 USER new_user 切換為 non-root user 再執行所需指令。

Read more »

Conda

前言

之前在開發 Python 程式時,我都是使用 pip 來做套件管理,使用 virtualenv 來建立虛擬環境,後來發現 Conda 這個工具,Conda 是一個開源的套件及虛擬環境管理工具,支援多種程式語言(Python, R…等),這邊來記錄一下它的使用方式,以下的指令是以 Windows 環境為主,Linux 或 MacOS 的指令可以參考官方文件。

Read more »

前言

tmux 是一個 Terminal Multiplexer, 它可以在一個 terminal 中開啟多個視窗、切割視窗區塊,讓我們在一個 terminal 中就能完成許多操作。它還可以保存 session 狀態,我們可以隨時離開(detach)這個連線 session, 也能夠隨時回到(attach)上次離開時的 session 狀態, 可以避免操作內容因為網路斷線而未儲存或是被中斷。而 tmux 會一直維持這個 session 直到被 delete 或是機器重新啟動。

Read more »

前言

使用 Nginx 當作 proxy 時,可以設定 Nginx 作為 failover 機制,但是 Nginx 判斷 node 失敗預設是以 connection refuse 和 timeout 為主,而不是以 HTTP 錯誤狀態來做判斷,因為 HTTP 只要可以回傳狀態,代表該 node 可以正常連接,因此 Nginx 會判斷該 node 是正常的。如果想要針對特定的 HTTP 錯誤來做處理,可以使用 proxy_next_upstream 參數來設定。

Read more »

前言

Elasticsearch 預設的 Lucene BooleanQuery 的 clauses 長度限制為 1024, 不只有 bool query, 其他的 query 也幾乎會在內部被轉換為 Lucene 的 BooleanQuery. 此限制主要是要避免 query 過大,造成使用過多 CPU 和 memory, 一般來說預設的 1024 就很夠用,但是如果出現 max_clause_count is set to 1024 這個錯誤訊息,代表 query 長度超過限制,可以透過以下的設定來做調整,不過要注意將此限制調高的話,可能會降低 performance 或是產生記憶體相關問題。

Read more »