標籤: macos

  • 解決 Android Studio 在 Mac 無法輸入中文的問題

    解決 Android Studio 在 Mac 無法輸入中文的問題

    在一次更新 Android Studio 之後發現不能打中文,雖然目前用不上,但是不能打中文註解還是有點嘔阿!再一次下定決心以後決定要來解決這個問題。

    這是目前的安卓版本

    解決方法其實滿簡單的:

    修改鍵盤佈局:在 Android Studio 中選擇「File」>「Settings」>「Keymap」

    Keymap 選一個你喜歡的,記得是 macOS 。

    選好儲存之後,重新開啟專案即可。

    以上,現在可以打中文啦!

    2023-10-23 update:

    keymap 會直接影響到快速鍵,這邊推薦使用 macOS 這個選項,和預設的快速鍵較為不衝突。

  • MacOS 使用 Apache JMester 來做壓力測試

    MacOS 使用 Apache JMester 來做壓力測試

    之前有一篇使用 ApacheBench 來做壓力測試的工具(參考),最近發現一個 GUI 的工具, Mac 和 Windows 都可以用,讚讚。

    照例除了附上操作說明連結,補上自己的注意事項和心得:

    1. 記得要裝 Java 8
    2. 在 MacOS 上,推薦從官網上下載 bin 檔案,用 brew 安裝有點麻煩(我安裝失敗了)
    3. 可以切換繁體中文(從上方 TopBar 點擊 “選項” -> “選擇一種語言” -> “Chinese (Traditional)” ),可是有些專有名詞可能要熟悉一下。
    4. 不得不說,GUI 的缺點就是要點點點,但是不用記住一堆指令,可惜他不是 app 形式製作的,執行檔案要保存好,連結做滿。
    5. 測試模版可以儲存(執行前會詢問),這滿方便的,許多創造一套 API 規則打天下,或是使用 wordpress 這類固定 Web App 的,很適合創建一些模版來用。

    另外補上一些壓力測試要注意的事情,權當壓測前的 check list:

    首先確認測試目標,如果是服務的本身的話,要記得確認流量不會經過服務前方的 CDN 或是防禦工具(e.g. Cloudflare 或是服務商提供的防禦機器)。操作上可以嘗試使用內網、修改 host 指定 IP,或是把防禦工具關閉(例如調整 nginx 或是關閉防火強);而如果是為了要測試防禦工具的話,得先確認是不是要和工具的服務商確認一下,如果是 SaaS 服務,通常會有延伸費用的。

    操作時,務必注意 header 中的操作,像是 token 或是 cookie 驗證,這次簡單測試沒有特別處理,不過通常需要登入的服務都會需要確認調整的。別壓力測試一堆結果都是導向 login 頁面,那就搞笑啦!

    除了內網測試,如果像是 wordpress 這類單體的 web application 外網測試也是需要的,畢竟外網才是正常一般使用者進入的環境。

    補一下程式截圖

    附上連結,這是下載的官網:

    使用 Mac 的安裝說明:

    我們的目標是測試 API ,這是使用說明(使用比較舊的版本,有些操作不太一樣):

    附上 DDos 的防禦策略介紹:

  • 在 Mac 上,大型 CSV 檔案切割方法

    匯出 SQL 中的資料,如果需要避免過多的指令碼,要精簡可提供給其他業務閱讀的格式,通常會使用 CSV 檔案的格式匯出,這是一種以檔案形式匯入匯出時很高效的格式,通常副檔名以「 .csv」作為檔案後綴。

    但有時下載下來的 CSV 檔案格式過大,電腦記憶體不足時打不開,這時 MacOS 系統可以用命令提示字元的方式進行切割。

    切割指令如下:

    split [-l line_count] [-b byte_count] [-n chunk_count] [file [prefix]]

    常用的指令操作範例:

    split -l 100 old_file.csv new_file_

    翻譯:舊檔案名稱為 old_file.csv 以每 100 行作為新檔案切割,切割檔案前綴為 new_file_ 。新檔案就會切格為 new_file_a、new_file_b ….. new_file_aa、new_file_ab … 這樣。

    通常也會需要搭配把新檔案名稱後面貼上 .csv 後綴,這樣才方便交付時對方打開。可以用以下指令:

    for i in $(find new_file_*); do mv $i "$i.csv"; done

    其實就是 bash 指令寫在同一行,意思就是逐步調整指定的檔案前綴來添加副檔名。新檔案就會變成 new_file_a.csv、new_file_b.csv ….. new_file_aa.csv、new_file_ab.csv … 這樣。

    要注意的是:

    1. 建議把檔案放在一個空的資料夾中操作。
    2. 在操作前,先計算好需要的分割新檔案大小,以及預計會產生多少檔案。太多檔案或是太大太小的分割檔案都會造成接下來的操作不易。
    3. 操作檔案必須確認是 csv 格式,不推薦 json 或是 sql 格式來做切割。也不推薦以 -b 參數作為操作,不確定一行(一筆資料)會包含多少字元,使用 -b 分割很容易切到同一行資料。

    參考:

    Split big CSV file using Linux or Mac OS Terminal – Datablist
    You have a very big CSV file, and you want to split it into several files of n lines. Smaller files let you open them with CSV editors without reaching their limits. If …