作者: Jerry Lin

  • Cloudflare 的 port

    筆記一下被搞了半天的 port, Cloudfalre 針對 HTTP/HTTPS 流量有支援的 port,轉貼自:

    识别与 Cloudflare 的代理兼容的网络端口
    了解 Cloudflare 默认代理哪些网络端口,以及如何为其他端口开启 Cloudflare 的代理。 概述 Cloudflare 默认代理发往下列 HTTP/HTTPS 端口的流量。 Cloudflare …


    以下擷取翻譯:

    Cloudflare 默认代理发往下列 HTTP/HTTPS 端口的流量。

    Cloudflare 支持的 HTTP 端口:

    • 80
    • 8080
    • 8880
    • 2052
    • 2082
    • 2086
    • 2095

    Cloudflare 支持的 HTTPS 端口:

    • 443
    • 2053
    • 2083
    • 2087
    • 2096
    • 8443

    如果您的域的流量要发送到上面列出的端口以外的其他端口,则可以:

    通过 WAF 规则 ID 100015 针对 Pro、Business 和 Enterprise 域阻止除 80 和 443 以外的其他端口上的流量:”Block requests to all ports except 80 and 443″.

    只有端口 80 和 443 可兼容以下服务:

  • VPS 廠商推薦

    虛擬專用伺服器(英語:Virtual private server,縮寫為VPS),是將一台伺服器分割成多個虛擬專用伺服器的服務。實現VPS的技術分為容器技術和虛擬機器技術。在容器或虛擬機器中,每個VPS都可分配獨立公網IP位址、獨立作業系統、實現不同VPS間磁碟空間、記憶體、CPU資源、行程和系統組態的隔離,為使用者和應用程式類比出「獨占」使用計算資源的體驗。VPS可以像獨立伺服器一樣,重新安裝作業系統,安裝程式,單獨重新啟動伺服器。VPS為使用者提供了管理組態的自由,可用於企業虛擬化,也可以用於IDC資源租用。

    維基百科

    老實說 Web Hosting 和 VPS 是有差異的,可以參考這裡,不過自己是純使用者,主要還是好用比較重要。這邊依照文中的參考,整理一下覺得好用的 VPS 廠商以及心得和注意事項。

    個人認為,好用的 VPS 商有幾個特色:

    • 安全穩定
    • 操作簡單
    • 價格合理
    • 付款便利
    • 客服回應速度快

    除了這些以外,加分的優點也有:

    • 功能多方便
    • 提供 API 串接

    大概是這些。以下介紹幾個有用過覺得推推的廠商。

    AWS

    這家的特色就是功能超級多,除了 SE2 的虛擬主機以外,也鼓勵把各種服務切割開來不是放在一台主機當中,像是 S3 提供儲存服務、RDS 作為數據庫、Route 53 作為域名系統服務等等,堪稱以一擋百,價格也是以一擋百,如果有金可課的話,推薦這家是很不錯的。很多企業的服務到一定程度的商業規模以後,也會開始考慮是否使用 AWS 作為服務的載體。

    Amazon Web Services (AWS) – Cloud Computing Services
    Amazon Web Services offers reliable, scalable, and inexpensive cloud computing services. Free to join, pay only for what you use.

    阿里雲

    ”上雲就上阿里雲“,可以看作中文版的 AWS 服務,功能和價格也很像的。另外也有專門提供了域名在中國的網域備案服務,這是只有在伺服器再設在中國境內時,使用網域域名才需要的服務。要注意的是:阿里雲的域名備案和其他域名備案的系統不太相同,如果有需要在其他服務商備案,如果把網站或服務轉到阿里雲上,備案會有些問題,記得需要先確認在阿里雲上備案是否可用。另外類似的服務也有像是騰訊雲或是華為雲之類的,可以參考看看。

    Alibaba Cloud: Reliable & Secure Cloud Services
    Empower your global business with a integrated suite of reliable & secure cloud computing services.

    Linode

    這算是目前用的比較長久的平台,從以前只提供一組虛擬主機開始,到後來提供域名管理、儲存服務,到現在可以自訂 script 提供一鍵安裝服務(雖然可用的服務還沒很多),是越來越多功能可以用。隨然不比上面所敘述的 VPS 那麼多功能,但是也是相當方便的。

    Linode | The Independent Open Cloud for Developers
    Our mission is to accelerate innovation by making cloud computing simple, affordable, and accessible to all.

    Vultr

    這家和 Linode 有點像,差異在於他可以在網頁管理介面中設定虛擬主機的開放 port(安全組),也提供除了信用卡以外的支付管道(不過有些已經禁用了)。

    High Performance and Cheap Cloud Servers Deployment – Vultr.com
    View details and pricing information for the most popular Vultr plans.

    Google 雲端平台

    這個服務非常複雜,Google 本身已經有相當多的服務,後來有提供 Compute Engine 的整合服務,這邊提供他的說明鏈結。個人使用的心得是貴貴的,但是速度和穩定度都算不錯,不過操作的介面速度有一些慢。

    Compute Engine: Virtual Machines (VMs)  |  Google Cloud
    Compute Engine delivers configurable virtual machines running in Google’s data centers with access to high-performance

    Azure

    這算是有名的服務了,接觸過很多台灣的網站服務商會使用微軟的這個服務。個人使用的經驗是提供的功能堪比 AWS,但是不知道是不是每次操作時網路都不好,Azure 的網頁操作介面有夠慢。

    Cloud Computing Services | Microsoft Azure
    Invent with purpose, realize cost savings, and make your organization more efficient with Microsoft Azure’s open and flexible cloud computing platform.

    以上是幾個還滿好用的 VPS 廠商,還有很多很多網路上找有一堆,台灣的廠商就先不介紹了,如果看得懂文章的話通常直接搜尋也會找得到。這邊放幾個至今找到還算中肯的評價網頁:

    學習VPS的重要性與各大Linux VPS 比較(Linode, DigitalOcean, Vultr, AWS Lightsail)
    學會了基本的Linux基本管理,就應該要在網路上租用一個主機好好的玩它一下

    要注意排名或推薦的文章中有一部分是所謂的 Web Hosting ,如果有需要使用到 Web Hosting ,個人經驗是為了要快速架站、使用量小、功能單一的網站,或是架設了以後可以不用管系統效能調校的服務,像是用 wordpress 架設的企業形象網站就相當適合Web Hosting,但如果要用 wordpress 搭配 woocommerce 做電商,建議還是確認一下Web Hosting 的服務商的資源限制以及價格啦!

  • 蒐集語言的設計模式(Design Pattern)實現

    紀錄一下有用到的語言所實現的設計模式。這邊儘量找比較大的網站鏈結,避免突然斷掉打不開。以自己有在用的語言為主。

    提醒一下閱讀設計模式之前,可能會需要用到的一些知識會比較好理解:

    1. UML 統一塑模語言
    2. OOP 物件導向程式設計(其實也不一定會用到)

    而語言不斷進化,會有各種版本,有些設計模式實作的工法可能已經頗舊了,而且不是很推崇一定任何工法都要依照設計模式,主要還是他的設計邏輯以及原始模式所規劃的精神比較重要,會用會變通,能跑夠安全。讚讚。

    首先是 JAVA,自己主要還是在 Android 使用的。

    设计模式 | 菜鸟教程
    设计模式 设计模式(Design …

    再來是 Swift,他版本進化的速度有一點兒快。

    ochococo/Design-Patterns-In-Swift
    ? Design Patterns implemented in Swift 5.0. Contribute to ochococo/Design-Patterns-In-Swift development by creating an account on GitHub.

    Python 的設計模式。這個網站裡面也有其他語言,滿好看的。

    Python 常用设计模式
    学习 Python 设计模式,所有学习资料包含详细代码示例。立即开始学习!

    Golang 的設計模式。不愧是當紅的語言,有點多。

    senghoo/golang-design-pattern
    设计模式 Golang实现-《研磨设计模式》读书笔记. Contribute to senghoo/golang-design-pattern development by creating an account on GitHub.

    還有常用的 PHP,在 github 上也有專案,可以下載下來參考。

    PHP 设计模式说明 |《PHP 设计模式全集 2018》| PHP 技术论坛
    简介 这是一组已知的 设计模式 和一些在 PHP 中实现它们的示例代码。 每个模式都有一个例子列表(其中大多数来自 Zend Framework,Symfony2 或 …

    Javascript 不是很熟,不過還是找來放一下,以後也許會用到。

    SDLyu/JavaScript
    Contribute to SDLyu/JavaScript development by creating an account on GitHub.

  • 開發環境簡單推薦

    介紹一下比較終端應用程式的開發環境, iOS 和 Android 使用原生語言開發、網頁端走 PHP LEMP 結構,以下做環境的整理。

    要注意以下推薦的內容大多都是要付費的。

    iOS 不用說,使用的是 XCode 所以電腦使用 MacOS ,XCode 也就是從 Apple Strore 下載就有的。無論是 swift 或是 obj-c 語言都可以。

    ‎Xcode
    ‎Xcode includes everything developers need to create great applications for Mac, iPhone, iPad, Apple TV, and Apple Watch. Xcode provides developers a unified workflow for user interface design, …

    Android 使用的語言是 Java ,軟體也是官方的 Android Studio,現在 Android Studio 很方便了直接下載下來就可以用。

    Web 開發的環境比較複雜一點,之前使用 MAMP PRO 版本,相當方便。

    雖然有人會想要用 Docker 來處理,可是自己的環境常常一次會多開很多的工作區域,考慮到自身的工作環境,所以就沒有更多研究,還是用了 MAMP PRO 很長一段時間,後來嘗試接觸 Parallels 這套軟體,這是一個虛擬機器(和 Docker 原理不同)軟體,但是他搭配 Parallels Tools 還滿不錯的,於是就用這個架設啦。

    Home
    Parallels Inc., a global leader in cross-platform solutions, makes it simple for customers to use and access the applications and files they need on any device or operating system. We help businesses …

    本機端及使用了虛擬機器,還是要想辦法快速架設, MAMP 雖然方便但是有個小缺點是他還是跑在原本的 MacOS (or Windows)上,後來選擇在本機上架設一套 CentOS LEMP 系統,把常用的部屬環境和模組設定好,UAT 或正式環境設定上用 GIT 版本控制程式碼,以及 autodeploy 就算是一個階段啦!其他諸如系統監控、安全防護等以後再為大家做一篇文章講解。

    這邊還是要提一下,可能以後會嘗試使用 Docker,這應該會是一個比較好的解決方案。

    而語言的使用上,golang 維持在 API 開發的程度(不打算學他 UI ),使用 VSCode 很方便。Python 也大同小異,偶而會用 flesk 弄一下簡單的 UI,PHP 的話則會使用 Sublime 來處理,他有很多套件很好用很方便,不過裝太多套件會變肥,記得要瘦身。

    其他操作的部分,簡易的圖像編輯以及切版目前是用 Photoshop 處理的,他有訂閱方案,時不時要 resize 一下圖片、修一下邊邊角角很方便。

    相片、圖片編輯、設計編輯與修圖軟體 | Adobe Photoshop
    使用 Adobe Photoshop 相片編輯與修圖軟體,建立和增強您的相片、影像和設計。這是全球最佳影像處理、圖片編輯、圖片去背和圖形設計軟體。

    而影片剪輯的話,目前和圖片的功力ㄧ樣,還只能做到套版和修修補補的程度,如果要上個字幕還是粗剪的話, MacOS 上唯一推薦 Final Cut Pro,這個要錢,但是比起和買其他的軟體,如果不是自己習慣的專業軟體,這個值得。

    Final Cut Pro X
    Final Cut Pro X 以 360° 影片剪輯功能、4K HDR 支援,及更先進的色彩校正工具,為後期製作帶來大革新。

    另外有還有一些小東西,選擇很多,隨找即有,但是不得不提:

    1. 雲端儲存裝置很重要,至於選擇就很多了,建議可以找有版本控制的,也可以多幾個作為分不同類型的儲存應用。還有,如果剛畢業記得找一下自己學校有沒有 Google Device 的免費無限儲存空間,這個好東西呀!
    2. VPN 也推薦準備一下,建議申請一個作為固定 IP 使用,也準備幾個是安全可跳轉到其他國家的,作為網站語系的檢查、安全操作或是查閱資料等滿方便的。這個如果是公司上班的打工仔,可能需要和公司談一下申請一組,如果是接客的半打工仔,稍微麻煩些要和客戶確認好避免維護不易,如果自己吃自己的話,那就推薦準備個幾組了。
    3. 我還滿喜歡做程式模板的,所以很多框架都會固定下來用很久,這有好有壞,得提醒自己追求穩定不一定全然是好事,所以在適當的保險下還是想辦法多一些框架可以選擇,至於模板的紀錄我還滿愛用 SinppetsLab 這套軟體,還有很多文字編輯軟體(像是 Sublime 的套件)也是支援多語言的程式碼片段存擋,都很推薦。也很推薦用 EvernoteOneNote 作為可用資訊的快速儲存工具,也很適合用來做私人筆記。
    4. Parallels Tools 裡面提供滿多意想不到的小工具,包含定時休息提醒、防止睡眠、記憶體釋放等等,都還滿好用的。
    5. Google Chrome 瀏覽器是開發人員好朋友,他有太多套件了,建議找如: 網頁翻譯、網站前端使用套件資訊、快速 HASH / 編解碼、IP 位置查詢、網頁整頁截圖、快速儲存分頁等等套件, 這些都很方便。另外 Chrome 裡面的群組功能十分方便,推薦使用。
    6. 而如果做 Server 端,VPS 的選擇也是需要的,我個人比較偏向 Vultr、 Linode、AWS、阿里雲、GCP 這些架設起來就是空的主機一台的雲端虛擬機器,也幾乎有便宜的方案可以選擇。

    網站部分,有些比較針對性的框架或應用程式,也許以後可以紀錄一下。
    先醬。


  • 超簡短自我介紹

    弄一個部落格,回到大學時期的那個時候,來寫一下東西。
    聽最近的馬克信箱,有提到“生活烙印”,有感。希望可以做到即使沒有時間也能夠在這個上面寫一些東西,在這上面少一些抱怨,多一些自我覺察,也多一些正面的東西,也許會有什麼幫助吧。

    這是我的 cakeresume 帳號鏈結:

    Shu-Hsien Lin
    林書賢 Jerry, 1987/06/12. 目前掌握與常用 的技能、工具以及服務: debian / centos / nginx / mariadb / PHP / Python / bootstrap PHP – wordpress / codeigniter Python – flas…

    算是對工作技能的自我介紹了。這個部落格也算是對自己玩 wordpress 這麼多年的一個交代,一開始玩 PHP 就是用 wordpress ,當時和自己抱怨這套系統超難用以後幹不了什麼事情的同事現在也都是自己當老闆了,而自己呢?過得還算可以嗎?

    最近看了一個網路連載小說,裡面說到”時光長河” 這個東西,當人的生命有強烈的記憶或是情緒的時候他的”時光長河”之中就會有對應大小的波濤,算是把生命的起伏做了一個比較具象的描寫的。也許我可以讓自己的時間來有些回憶是好的,那時沒有網路,好多事情不記下來就沒了。

    希望能夠好好的活著寫下去,寫著過去偶而穿插現在,寫完了回憶可以開始寫未來。

    然後一步一步實現吧。

  • 分享一下自己的 Gist

    GitHub 的 Gist 是一個好用的東西,我都會拿它來做程式碼片段的搜集。因為我用的是 MAC 系統,會使用 snippetslab 這套軟體來紀錄程式碼片段,當作是 private 的程式庫吧! 有些覺得不錯,搜集下來,改良優化後就會把它放到自己的 Gist 上。


    分享一下我的 Gist:

    lazyjerry’s gists
    GitHub Gist: star and fork lazyjerry's gists by creating an account on GitHub.