本篇文章是 Netflix 的內部架構技術分享文,本篇文章要探討的是當 Netflix 內部大量採用 Google Drives(Sheets, DDocs, Slides...etc)進行檔案分享時所遇到的問題,以及 Netflix 是如何解決這些問題的。
問題: 對 Netflix 來說,由於下列兩個理由,導致目前 Google Drive 上大概有兩千萬的檔案
1. Netflix Studio 的合作夥伴大量使用 Google Service 來傳輸資料
2. 資料科學家需要將資料複製回本地的 Data 倉庫進行分析。
Netflix 內部為了方便存取這些資料,透過程式化的方式透過 Google API 來存取這些大量成長的資料,然而這樣的方式卻導致了兩個很麻煩的問題
1. 應用程式開發者與資料科學家必須要各自維護存取 Google 服務的帳號密碼,同時很多程式碼會大量的被重複開發。
2. 從可觀測性系統來說,到底有哪些檔案資料從 Google Drive 與 Data 倉庫移動是很不清楚的。
Netflix 為了解決這些問題,決定自行打造一個 Service Proxy 來處理所有流向 Google Services 的請求。透過這個中介層的服務,Google 服務認證的部分就可以有效率的於 Proxy 這層來處理掉,同時也能夠透過 Log 的方式來記錄到底哪些檔案目前正在移動,彌補了過往可觀性系統的缺失。
文中先介紹了關於 Google API 的架構,Netflix 內部原先大部分都透過 Python 或 Java 等程式語言來撰寫 Client 端的應用程式。為了讓整個 Proxy 能夠更有效的處理 Credential 的部分,Netflix 這邊還導入的內部工具(Metatron) 來管理這些資訊。
其他相關資訊還有
1. Proxy 基於 Java 開發
2. 使用 gRPC 來產生不同語言的 endpoints,統一由 Proxy 將請求轉為 HTTP 送往 Google 處理
此外,為了讓 Netflix 內部的所有人都可以很輕鬆的於 Google Drive 與 Data 倉庫間來更動資料, Netflix 為此打造一個可排程的 Job 來默默執行。文章後半段主要在介紹這個 Job 的架構與用法
對於全文有興趣的都歡迎閱讀~
https://netflixtechblog.medium.com/data-movement-for-google-services-at-netflix-9a77ca69f7c4
同時也有1部Youtube影片,追蹤數超過82萬的網紅ぽこにゃん,也在其Youtube影片中提到,#minecraft #原木無限 #treefarm #ツリーファーム #ぽこなかくら2020 #影MOD ★゚+.★゚+.★゚+.★゚+.★゚+.★゚+.★゚+★゚+.★゚+ ぽこにゃんのメンバーになろう! ⇒ https://www.youtube.com/channel/UCO06KZjW...
java取log 在 Kewang 的資訊進化論 Facebook 的最佳貼文
前兩篇分享了 Autocomplete 的實作方式及開發細節,算是少數大家迴響比較多的文章 XDD,下面就來整理一下大家的迴響好了。
---
## 1. 減少傳輸量可以使用 msgpack
小編有聽過 msgpack 但還沒實際了解這是如何運作的。剛查了一下資料 (https://msgpack.org),說是比 JSON 更省資料大小,基本上聽過的語言都有支援。
在前公司也用過 Avro 這類的格式,主打的也是省資料大小。但現在應該還不會考慮改用這類要另外做 serialize 的格式。
主要是基於後端是以 Node.js 為主開發,JSON 已經是原生支援,再引入一種資料格式會增加前後端維護的複雜度。另外就是開發人力,新創小公司要儘量減少工作,目前可以順暢運作就好,還有其他更重要的事要做,等之後用量大了再改也不遲。
---
## 2. 減少傳輸量可以使用 HTTP server 的壓縮機制
這真的是忽略了,忘了 expressjs 只是一套 web framework,在上面對資料做壓縮其實會影響到效率。讓如 nginx 之類的 HTTP server 做壓縮應該才是更好的作法。
不過因為現在的 infra 是建在 heroku 上面,heroku 並沒有原生 nginx 的支援。等量大撐不住的時候,倒是可以優先考慮使用 heroku 的 buildpack 把 nginx 架上去試試 (https://github.com/heroku/heroku-buildpack-nginx)。
另外也有提到用 CDN 做動態壓縮,這就真的沒做過了,也是可以研究的方向之一。
---
## 3. 減少使用者打 server 的次數,加上 debounce time
這大家都主推使用 debounce 方式,前端沒玩很深的小編第一次碰到這個名詞是高職的時候。記得那時上課在教 8051,老師說按按鈕時要加上 15 - 20ms 的 debounce time,避免重複送外部中斷。小編對單晶片實在不在行,但大概記得是這個意思。
剛查了一下資料 (https://css-tricks.com/debouncing-throttling-explained-examples),前端的 debounce time 大概也是類似的意思。在輸入文字後,會 delay n 秒再送出,若是在 n 秒內又有打其他內容的時候,就把之前的 request 從 queue 裡面丟棄,只關注最後一次的 request 就好。
這個應該也是有效減少 request 量的作法了。
---
## 4. 減少使用者打 request 的次數,將已經送出的 request 取消掉
這也是一個不錯的作法,若 A request 已經送出去,但還沒回 response 時又送了 B request 的話,此時可以把 A request 取消。
但要注意就是 A request 目前正在執行的步驟是去 DB 拿資料,或是在 server 本身處理一些基本計算。之前在使用 Java (grizzly + jersey) 開發的時候,若有這種情況發生會常在 log 裡面看到 IOException。
原因是 server 已經準備好資料要回傳給 client,但發現 A request 已經取消,不知道要怎麼回傳時就會發生這個狀況。但也有可能是小編自己沒控制好收發的關係啦 XD
---
關於 Autocomplete 的三篇大概就到這篇為止啦,等上線之後做了哪些調整再來分享給大家知道一下。
#funliday #autocomplete #msgpack #debounce #nginx
java取log 在 ぽこにゃん Youtube 的精選貼文
#minecraft #原木無限 #treefarm #ツリーファーム #ぽこなかくら2020 #影MOD
★゚+.★゚+.★゚+.★゚+.★゚+.★゚+.★゚+★゚+.★゚+
ぽこにゃんのメンバーになろう!
⇒ https://www.youtube.com/channel/UCO06KZjWOe6b1tXrgzzakZA/join
【メンバー特典】
①生放送のチャット欄でぽこにゃん専用の絵文字が使えるようになるよ♪
②メンバー限定配信のLIVEなども予定してるよ!
★゚+.★゚+.★゚+.★゚+.★゚+.★゚+.★゚+★゚+.★゚+
ぽこなかくら2020再生リスト
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dU9QNqf4OEgvSnobX-qd855
◆チャンネル登録して最新の動画を毎日チェックしよう!
⇒http://www.youtube.com/user/pokonyan1185?sub_confirmation=1
◆カズぽこLINEスタンプ発売中!
⇒https://store.line.me/stickershop/product/8072331
◆ぽこにゃんLINEスタンプ発売中!
⇒https://store.line.me/stickershop/product/1306947
◆ぽこにゃんの最新情報はTwitterをフォローしよう☆
⇒https://twitter.com/pokonyan1185
※生放送や実写イベントの日程が最速で分かるよ♪
◆こみちんの実写はこっちのチャンネルで公開するよ!
⇒https://www.youtube.com/user/pokonyatiwa?sub_confirmation=1
※実写のこみちんがキャンプや料理など色々な動画をアップ中!!
【ぽこにゃんの実況タイトル集】
他にもこんなに沢山のゲームを実況しています!是非見ていってね!
◆マインクラフト / minecraft 実況シリーズ◆
ぽこなかくら【2019年最新シリーズ】
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dUYNuQLn_g4agMqwOpoS_qM
ぽこなかくら【地下生活シリーズ】
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXJ9qGhA2M-IU_4AnvEGTpn
カズぽこくら【シーズン3】
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXnLNEvAYgAkUCcCg9L-nlr
かずぽこくら【シーズン1&2】
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXnLNEvAYgAkUCcCg9L-nlr
ぽこくら【ゆっくり実況】
https://www.youtube.com/playlist?list=PLCBKPDnRG5dWtZzobcBsSAhbIe8Gfqbh4
しゃくたに君のマインクラフト
https://www.youtube.com/playlist?list=PLCBKPDnRG5dWVmFZz-3nGyDuS5g86ui5L
マイクラ配布ワールドで遊ぼう
https://www.youtube.com/playlist?list=PLCBKPDnRG5dWWgEU1xeFD0V5aSkQ3xB2H
探偵と館の財宝
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dUaXjrioCEoZcuxtmF3nUNd
◆その他のゲーム実況◆
デッドライト
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dWW0_qQzheyxz5TLpGYwvjc
ドラクエ11を生声実況
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dW3yPmdMskm2AZ5MPaqZRXw
スプラトゥーン2を生声実況
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dW4gCIYTZlqWiTyTk_VYUNN
ゼルダの伝説 ブレスオブ・ザ・ワイルド
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dV3qPC7zoI8UPXfapNidLVq
INSIDE/インサイド
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dWjWL_aWaBAMd2Y5oULaWc4
幕末を生きろ!!龍が如く 維新
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dVj05pMaccQzmS31QHnSZgN
腹筋が崩壊するマリオ
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dU_qOnLFMOOCX51xpLU18i-
友情が崩壊するマリオ
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXGCSk8nKZaCsdXvGsPMlOL
友情が崩壊するルイージ
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dV6VtgV8qPPseRvAV10Jn8h
失われた彼女を取り戻せ!悲しい愛の物語 ラブユートゥビッツ
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dWNzxQ8J0t1tCU-PlEa4erx
真夜中の人形使い
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dWSWSHK_-dR4rAXBfYBq__8
星のドラゴンクエスト
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dVLP35HoDAai4SjrSbGH6I5
妖怪ウォッチぷにぷに
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXLs0OaucVcmJmhCQhdn3ut
独特な世界観の死にゲー LIMBO/リンボ
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXw3prFda38IDfGoC_XTKtx
忘れられた作品!アンチャーテッド4
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dVrNvWjQwmKGsQaphbNZGLo
モンスト/モンスターストライクをぽこなか3人で実況
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXj61VAzTOy6l7yZmOSJcHD
奇妙で可愛いティム・バートン映画の様なホラゲー!リトルナイトメア
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dWnsi6EnAPdLKlorFu6WhNJ
ピタゴラスイッチみたいなパズルゲーム!クレイジーマシン
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dXGNmJMNXQA-5X9V13Ud783
龍が如く6
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dWfBLYT5o3oFUwpE7Ep4w8P
よしさんのグダグダマリオメーカー
⇒https://www.youtube.com/playlist?list=PLCBKPDnRG5dV-35joP8e658oKBHtCo4Qe
スーパーマリオ3Dワールド(全112話)
https://www.youtube.com/playlist?list=PLCBKPDnRG5dUDoYmWFFWHeJvC5VgSABJ9
大人気ホラゲー実況イケニエノヨル(全25話)
https://www.youtube.com/playlist?list=PLCBKPDnRG5dUBe7HcClbi8kSK0ARBHVYt
ぽこにゃんのバカゲー実況シリーズ
https://www.youtube.com/playlist?list=PLCBKPDnRG5dXafX5LBpsYDCxlDqv_hA8U
【その他のお知らせ】
ぽこにゃんの限定メルマガはの登録はコチラから
http://pokonyan1185.blog.fc2.com/
ファンレターの宛先はコチラ
〒107-6228 東京都港区赤坂9-7-1
ミッドタウン・タワー 28階
UUUM株式会社
ぽこにゃん宛
UUUMのHP
http://www.uuum.jp/