Amazon API Gateway 支援 Canary Release 了

Amazon API Gateway 支援 Canary Release 了:「Amazon API Gateway Supports Canary Release Deployments」。

Canary Release 重點在於逐步轉移,而不是直接硬切,大致上可以分成三個階段。

首先是一開始的情況:

切到一半的情境:

最後完全使用新版本:

這個方法可以避免新的 code 有效能問題,造成後端壓力過大... 不過這樣就要確定新舊版本的程式碼可以同時跑 (像是後端資料庫的 schema 必須相容這兩個版本)。

前幾天提到的「AWS CodeDeploy 支援在 AWS Lambda 上跑更多奇怪花樣」算是相關的功能,讓 AWS CodeDeploy 參與其中做出各種變化。

Node.js 第一個 8.x LTS 推出

推出啦:「Node v8.9.0 (LTS)」,另外可以看「NEWS: Node.js 8 Moves into Long-Term Support and Node.js 9 Becomes the New Current Release Line」這篇。

從 6 到 8 多了 async & await (ES7),應該會是對整個生態系改變最大的功能了,可以預期會有一堆人濫用... XD

剛剛測 nlts 參數發現還沒更新,先用 n 8.9.0 換上去...

django 的 LTS

看到「Django 1.11 released」這篇才發現 django 也有設計 LTS 機制... 在「Django’s release process」這邊有介紹:

Certain feature releases will be designated as long-term support (LTS) releases. These releases will get security and data loss fixes applied for a guaranteed period of time, typically three years.

所以是提供三年的維護期...

FreeBSD 11.0 重新發行...

本來已經發行的 FreeBSD 11.0,因為最近的安全性問題 (應該是講 OpenSSL?),決定不以 security update 的方式更新,而是直接發新版了:「[REVISED] [HEADS-UP] 11.0-RELEASE status update」。

Although the FreeBSD 11.0-RELEASE has not yet been officially announced, many have found images on the Project FTP mirrors.

However, please be aware the final 11.0-RELEASE will be rebuilt and republished on the Project mirrors as a result of a few last-minute security fixes we feel are imperative to include in the final release.

我以為應該是發 11.0.1,然後把架上的 11.0 拿掉...

Bitcoin.org 對於接下來的 release 發出警告

Bitcoin.org 發出了有點摸不著頭緒的警告:「0.13.0 Binary Safety Warning」。

Bitcoin.org has reason to suspect that the binaries for the upcoming Bitcoin Core release will likely be targeted by state sponsored attackers. As a website, Bitcoin.org does not have the necessary technical resources to guarantee that we can defend ourselves from attackers of this calibre.

而且直接是點名可能是針對中國區的用戶:

We ask the Bitcoin community, and in particular the Chinese Bitcoin community to be extra vigilant when downloading binaries from our website.

由於 Bitcoin.org 全站走 HTTPS,這是在暗示會出現「不小心發出 Bitcoin.org 的 SSL certificate」的事情?另外官方也建議使用 PGP public key 驗證:

We strongly recommend that you download that key, which should have a fingerprint of 01EA5486DE18A882D4C2684590C8019E36C2E964. You should securely verify the signature and hashes before running any Bitcoin Core binaries. This is the safest and most secure way of being confident that the binaries you’re running are the same ones created by the Core Developers.

來拿板凳蹲著看,順便拉一張目前 certificate 看到的資訊,目前是從 RapidSSL SHA256 CA - G3 簽出來:

DVD 的發行時間差異導致盜版

MPAA 資助的報告顯示 DVD 的發行時間差異導致盜版:「DVD Release Delays Boost Piracy and Hurt Sales, Study Shows」,報告在「Windows of Opportunity: The Impact of Piracy and Delayed International Availability on DVD Sales」這邊可以看到。

用真實資料計算得到:

"When we run our regressions on Spain and Italy alone, we observe a 10% drop in sales for every 10-day delay in legal availability, as compared to a 2% drop in sales for every 10-day delay in the entire sample," the paper reads.

"Our results suggest that an additional 10-day delay between the availability of digital piracy and the legitimate DVD release date in a particular country is correlated with a 2-3% reduction in DVD sales in that country," the researchers write.

時效的重要...

OpenSSL 1.1.0 的 Release Notes 先放出來了 (現在是 Beta 1)

雖然才 Beta 1,但 OpenSSL 先放出 1.1.0 的 Release Notes 了:「OpenSSL 1.1.0 Series Release Notes」。

有幾個新的功能以及重大的改變,包括了對 ChaCha20Poly1305 的支援,並且把 SSLv2、RC4、所有 40bits 與 56bits 的 cipher 拔掉,然後支援 Certificate Transparency

讓人頗期待... 不知道來不來得及跟上 Ubuntu 16.04

桌機的 Ubuntu 12.04 升級到 14.04

拖了好久,總算利用連假的時間 (而且在台灣!) 把桌機的 Ubuntu 12.04 (Precise) 升級到 14.04 (Trusty)。整個升級的過程果然充滿了地雷... XD

這邊當作雜記記錄下來,希望對之後的人升級有幫助。其中比較重要的前提是,我是用 Unity,所以升級的流程大致照著官方的指示做就可以了,對於使用 GNOME 的人,需要再多研究看看?

升級前的注意事項:

  • 假設當初有裝很多 UNSUPPORTED 的 repository (這邊是指官方的 *.archive.ubuntu.com 裡有一些沒有被官方支援的項目,像是 universe 與 multiverse),要記得到 /etc/apt/sources.list 裡暫時註解掉。
  • 跑 do-release-upgrade 時的語系要用英語系 (Cen_US 之類的,像是 env LANG=C LANGUAGE=C LC_ALL=C do-release-upgrade 這樣執行),不然會造成 Python 的錯誤訊息 (decode error,因為是用 ascii 去解),原因是 /etc/apt/sources.list.d/ 下面在替換 precise -> trusty 時會增加註解,而這個註解在 zh_TW.UTF-8 狀態下會出現中文 UTF-8,於是就造成 parser 爛掉... XD

升級完成後的注意事項:

  • Fix Ubuntu 把該關的關掉。
  • /etc/apt/sources.list.d/ 下面的東西整理過,有些是 backport 回 12.04 的,在 14.04 就可以省略,有些則是要找替代方案。

升完後還沒解決的問題:

  • scim 的狀態很詭異,在 Terminal 裡有時候可以用但有時候不能用,而在 Google Chrome 裡面是完全不能用。目前暫時拿 ibus 撐著。
  • 天氣的 indicator 好像要換掉,暫時沒有花時間研究。

對於沒有技術背景的人來說,升級的工程太浩大 (有大量的錯誤訊息要查,然後一個一個解決),還是建議當 Windows 的方法處理會比較好... (重灌未必比較慢,真的...)

在還沒摸熟前,公司的電腦應該還是維持在 12.04 吧,不然就是等下次連假的時候弄...

Percona XtraDB Cluster 5.6 的第一個 RC 版本...

Percona XtraDB Cluster 5.6 的第一個 RC 版本公告出來了:「Percona XtraDB Cluster 5.6.15-25.2 first Release Candidate is now available」。

其他的說明沒什麼,但意外看到這點:

Percona XtraDB Cluster now supports stream compression/decompression with new xtrabackup-sst compressor/decompressor options.

在「option compressor/decompressor」這邊可以看到這個設定,功能是在傳輸 SST 的過程壓縮。

看了範例設定,似乎也可以使用 gzip 以外的方式?bzip2 或是 xz 應該是可行的方案?

對跨機房之間的 full resync 應該是有幫助的... 像是 IPsec 的處理能力沒那麼高的時候 :p