Go 1.6 把 HTTP/2 變成預設支援的功能

Go 的官方公告「Go 1.6 is released」提到了把 net/http 的 HTTP/2 預設啟用了:

In Go 1.6, support for HTTP/2 is enabled by default for both servers and clients when using HTTPS, bringing the benefits of the new protocol to a wide range of Go projects, such as the popular Caddy web server.

另外值得一提的是 sort 演算法的效能改善:

The algorithm inside sort.Sort was improved to run about 10% faster, but the change may break programs that expect a specific ordering of equal but distinguishable elements.

這應該算還蠻基本常用到的東西,會改善很多程式效能...

MySQL 5.7 預設值的改善

在「Improved Server Defaults in 5.7」這篇文章裡面講了 MySQL 5.7 預設值有那些是朝好的方向演進,雖然我覺得有些有風險在...

其中這個還蠻特別的:

innodb_strict_mode — This brings InnoDB in line with our overall goal of making MySQL behavior more strict by default, thus helping you ensure the integrity, validity, and durability of your data. This also falls in line with a parallel goal of making MySQL more SQL standard compliant by default.

可以參考「Making strict sql_mode the default」這篇文章的說明,當你把 -1 塞到 UNSIGNED INT 欄位時會直接發生錯誤,而非 fallback 到 0

然後是 InnoDB 熱機機制的改善,以及檔案格式預設值的改變。

網路上使用預設密碼的攝影機...

從「Website Peeps Into 73,000 Unsecured Security Cameras Via Default Passwords」看到的,有人掃過一輪後,把大約七萬多個攝影機的資料做成網站:「Online IP netsurveillance cameras of the world」。

隨便找一個台灣的:「73454」,網站速度不快,但看起來超歡樂的...

MySQL 5.5 與 5.6 的預設值差異...

Oracle 放出 MySQL 5.6 後,Percona 將 MySQL 5.5 與 5.6 設定值的差異整理列出來:「MySQL 5.5 and 5.6 default variable values differences」。

因為這是直接 dump 系統設定值比較,理論上所有「可以設定的值」都可以透過這個方法找出差異,不是靠設定值的改變就沒辦法了...

文章後面有對作者覺得比較需要講的部份提出來。其中 innodb_file_per_table 終於變成預設值了 XD

先繼續觀望...