Skip to content

Zeroplex 生活隨筆

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

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

年份: 2018 年

WD 紅標 硬碟壞軌

Posted on 2018 年 6 月 19 日2021 年 3 月 12 日 By 日落 在〈WD 紅標 硬碟壞軌〉中尚無留言

手上一個 24H online 的 WD 紅標 NAS 專用硬碟壞軌,好家在當初有組 RAID 1,下班後馬上抽了一個 offline 的硬碟回替換。

讓我笑不得的是壞掉的硬碟,保固在二天前過期,有陰謀的感覺 XD

查了一下之前的記錄,當初購買同一批的硬碟,另一個硬碟在去年就掛了 (保固期內)。現在感覺比較能穩定運作的廠牌好像只剩下 HGST,但聽說這個牌子準備要收掉納入 WD 牌下,以後真的不知道要挑哪個廠牌的硬碟了。

備註,硬碟型號:

  • WD40EFRX
  • NASware 3.0
Tags:生活雜記

PHP 的 Memcache 與 Memcached 函式庫無法共用資料

Posted on 2018 年 6 月 14 日2021 年 3 月 12 日 By 日落 在〈PHP 的 Memcache 與 Memcached 函式庫無法共用資料〉中尚無留言

剛接觸的應該會被命名搞的一頭誤水,畢竟名字相同、不然就是幾乎相同 XD

負責提供記憶體讀寫快取的服務叫做 Memcached,這個服務和 PHP 八竿子打不著關係,就算你不是寫 PHP 也這樣可以使用他。

再來要說的是 PHP 底下的二個函式庫:Memcache 和 Memcached。這二個函式庫,主要是提供一個方法讓 PHP 連接前面提到的 Memcached 讀寫資料。另外要注意的是 Memcache 和 Memcached 函式庫雖然名字很接近,但卻是二個完全不同的函式庫,無法同時使用,只能二選一。

以下透過 psysh 實際操作,來看一下同時使用會發什麼事情。

使用 Memcache 寫入一筆資料:

>>> $m = new Memcache
=> Memcache {#201}
>>> $m->connect('localhost')
=> true
>>> $m->set('test', ['Hello', 'World'])
=> true
>>> $m->get('test')
=> [
     "Hello",
     "World",
   ]

再來使用 Memcahed 函式庫,連到 localhost 的 Memcached server 看看會發生什麼事:

>>> $d = new Memcached
=> Memcached {#198}
>>> $d->addServer('localhost', 11211)
=> true
>>> $d->getAllKeys()
=> [
     "test",
   ]
>>> $d->get('test')
=> 0

可以看出這二個函式庫提供的 methods 看起來很接近,但是底層處理資料的方式不一樣,只能挑其中一個來使用。

Tags:PHP, 資訊學習

想逃離 Github 嗎?歡迎搬家到 Bitbucket

Posted on 2018 年 6 月 5 日2021 年 3 月 12 日 By 日落 在〈想逃離 Github 嗎?歡迎搬家到 Bitbucket〉中尚無留言

在微軟買下 Github 之際,大家紛紛逃竄到 Gitlab 上,但是大家好像都忘記還有個不錯的服務叫做 Bitbucket。

我個人會繼續留在 Github 的原因:

  • 多數開放程式碼、開發平台、CI/CD 服務,短期內不可能轉移到其他程式碼代管平台上
  • 微軟進幾年的作風已經大改,像是 VS code 都開放原始碼、支援 3rd-party plugin,並且支援跨平台。
  • .NET 也支援 Linux 了,雖然我想這有微軟的商業考量,對 Linux 使用者沒有壞處,因為若有更多工程師建立 Linux 專案,表示 Linux 使用者有更多可以選擇的解決方案 (即已要付費)。
  • 微軟知道自己以前的聲譽不好,現在不會笨到對 Github 毛手毛腳。就算有,Github 社群的壓力也會逼微軟放棄。
  • Gitlab 是一個不錯的服務,但是我不認為他有支撐大量負載的能力。當大家都把 open source project 搬過去時,可能會因為負載過高而發生問題。另外還有朋友提醒,Gitlab 之前把自己的 DB 砍掉,還有 live rescue
  • 個人蠻期待後續微軟會推出的整合服務
Tags:分享, 程式設計

61 號快速道路 (西濱公路) 路況

Posted on 2018 年 6 月 4 日2021 年 3 月 12 日 By 日落 在〈61 號快速道路 (西濱公路) 路況〉中尚無留言
最後更新日期:2018/06/04

數天前從新竹到台中一趟,走 61 號快速道路 (西濱公路) 發現不少路段都接通了,但看起來還沒有施工完成,簡單做個筆記。

我只有機車,以下提及的路段均為機車車道,汽車專用的高架道路。
新竹到苗栗通宵這段的路,基本上可以順順騎,也不需要繞道。
但南下到了苗栗通霄這邊要繞道,改走台 1 線,或是先轉到通霄鎮市區道路,過了南勢溪以後在接回 61 號快速道路。
過了通霄鎮以後路也差不多都接起來了,但路線標示牌尚未全部裝好。有部分交流道沒有警告標示,沒注意的話可能機車就會直接騎上汽車專用道。已知機車在 61 號快速道路只有遇到要過河時,才會有高架道路可以走,其他的應該都是接到汽車專用道的交流道。
總之,遇到不明的路段,還是減速慢行比較安全。
Tags:分享, 旅遊, 生活雜記

由網頁觸發、執行 PHPUnit

Posted on 2018 年 5 月 31 日2021 年 3 月 12 日 By 日落 在〈由網頁觸發、執行 PHPUnit〉中尚無留言

通常都是在 console 底下執行 PHPUnit 跑測試:

$ phpunit Test.php 
... Run by vendor/bin/phpunit ...
PHPUnit 7.1.5 by Sebastian Bergmann and contributors.

.                                                                   1 / 1 (100%)

Time: 30 ms, Memory: 4.00MB

OK (1 test, 1 assertion)

但若開發環境無法使用 console 的話,只能靠寫 PHP script 來 require PHPUnit library 來執行。在這邊發現其實 PHPUnit 有保留 interface 讓使用者可以不透過 console 來操作 PHPUnit,可以在 PHP script 裡面 require library 來使用。

先使用 composer 把 library 拉下來:

composer require 'phpunit/phpunit'

在 PHPUnut/TextUI 底下,有實作幾個 controller 來模擬 console 的操作。以下使用 Command 來執行 PHPUnit:

<?php

require __DIR__ . '/vendor/autoload.php';

use PHPUnitTextUICommand;

$cmd = new Command();

$cmd->run([
    'phpunit',  // 1st arg
    'Test.php', // 2nd arg
]);

如果執行上面這段 PHP script,會得到與在 console 執行 PHPUnit 一樣的結果。
不過要注意的是測試結果會直接輸出到 std out,若另外處理的話,記得用 output buffer 把資料拉回來,直接在瀏覽器看的話會破版。

備註:PHPUnit 不同版本的路徑不同,類別名稱也會不同。

Tags:PHP, PHPUnit

文章分頁

上一頁 1 ... 7 8 9 ... 13 下一頁

其他

關於我  (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 國際 授權條款授權.