大規模工程的網路性能(技術周刊 2018-03-23)
前端快爆
上新
- 在將來的 Chrome 66 中,支持了非同步方式讀寫剪貼板的 Async Clipboard API,並在寫入剪貼板內容時向用戶徵求剪貼板許可權。
justjavac:Chrome 66 新增非同步剪貼板API
- Pell 是又一個 WYSIWYG 編輯器,它用 ES6 實現,亮點是零依賴且 gzip + min 之後只有不到 2k ,當然,它只支持現代瀏覽器。
jaredreich/pell
- Driver.js 是一個零依賴且只有 4kb 的高亮庫,用於高亮頁面部分區域,提供一個彈層並弱化其他區域,非常適合用於實現新手引導功能。
driver.js
- Roughjs 可以用來創造手繪風格的 Canvas 圖像,支持導入 SVG 功能。
Rough.js
其他
- JavaScript 中的
Promise
被認作「不夠中立」的實現,André Staltz 認為有這些原因:急於執行回調函數、無法被取消、無法轉成非同步、then
是混用了map
和mapFlat
的實現。
Promises are not neutral enough
Humphry:這其實更多是 JS 偏向於容錯和彌合沒有意義的場景的緣故,讓整個 API 往更加直覺而非 FP 的方向走去。
- 大家可以點擊這個鏈接,填寫一下 TC39 的開發者參與度問卷。
Humphry:這樣也是參與到標準哦,可以幫助 TC39 更好的了解到開發者怎樣知曉乃至參與到標準相關的更新。
- 從 Stack Overflow 2018 年度的開發者報告中,我們可以了解到 10 萬多參與問卷的爆棧用戶的相關數據。其中有 58% 的後端、48% 的全棧和 37% 的前端;56% 未曾參與過開源項目;56% 的開發工作年限在 5 年內;76% 的人參加黑客馬拉松是因為它令人享受;93% 為男性。
Stack Overflow Developer Survey 2018
Humphry:同性交友,狂歡半宿,點擊這裡~
- 想看國外開發者直播寫代碼嗎?這裡有一份清單。
bnb/awesome-developer-streams
Humphry:寂寞的夜,寂寞的你,打開直播,送上蘭博基尼……
專題
大規模工程的網路性能
Performance @Scale 2018 於本月中旬結束,幾個相關的分享都著力於大規模應用下的工程經驗,分享跨越了前端與後端,涵蓋了請求管理與數據監控。藉此機會,我們整理了相關的協議與請求管理文章。
Performance @Scale 2018
- Facebook 的靜態資源管理
介紹了 Facebook 是怎樣在不增加開發認知成本、使用聲明式 API、寫出更少代碼的前提下,支撐大規模快速迭代的前端應用的。除了你打開任何一個網站都能看到的打包,比較有意思的處理方式包括但不限於使用 DSL 標記資源並選擇性交付,條件式預測用戶需要的資源並提前推送。這些處理方式都指向了更少的管理與人工成本,值得學習。
- 健壯地偵測用戶數據異常值
LinkedIn 的工程師分享了他們對異常值的判定方式——忽略假陰性而減少假陽性,並介紹了相關異常監控平台 ThirdEye 的處理方式——用樣條回歸方程偵測 Web 應用變慢的趨勢,用符號檢驗找到持續性異常,用掃描統計以偵測最明顯的一小時異常,用精準/最小發現時間模型來保證異常不多報和亂報,通過指標相關係數計算推測核心異常。
- 全球網路模擬器
作為流媒體內容公司的 Netflix,對網路連通性的敏感超出其他公司。除了收集實際的用戶數據,他們實現了一個全球網路模擬器,在開發與設計階段,就可以將任何一個 ISP 的網路性能作為一個變數考慮在內。
協議與請求
- 最好的請求是沒有請求
- 深入探索 WebSockets 和 HTTP/2 (譯文)
- HTTP 的連接管理
- 淺談推進有贊全站 HTTPS 項目 - 工程篇
編輯:Humphry & 審閱:壹絲
題圖:http://documentmedia.com/article-2786-IBM-Announces-New-Data-and-Machine-Learning-Platform-for-the-Private-Cloud.html
推薦閱讀:
※web前端:如何(安全地)使用Vue.js的jQuery插件
※未來兩年前端開發的趨勢是什麼?
※《Oli-Zhao的前端一萬小時》之:(1)HTML基礎
※React ?? 新的 Context API
※橫行的前端(上)