雖然這篇dns是什麼鄉民發文沒有被收入到精華區:在dns是什麼這個話題中,我們另外找到其它相關的精選爆讚文章
在 dns是什麼產品中有23篇Facebook貼文,粉絲數超過0的網紅,也在其Facebook貼文中提到, 《為什麼學瑜伽要學解剖學?》補充增訂篇 我覺得它提供了我更多元的角度去看待體位法的練習,進而引發出自省的對話,讓我能夠更有覺知的選擇我的練習。 瑜伽從來就不是競爭,不是與別人的競爭,更不是與自己的競爭。 很多人都是因為受傷而選擇瑜伽練習,但有趣的是在復健科或物理治療師端,往往又接到很多因為練習...
同時也有6部Youtube影片,追蹤數超過2萬的網紅Wilson說給你聽,也在其Youtube影片中提到,#光世代 #路由器 #撥接上網 你用撥接嗎? 三種常見的上網方式 哪種最適合玩遊戲? - Wilson說給你聽 常見的網路連線方式有PPPoE DHCP Static IP三種 究竟哪一種是最常見 又哪一種適合玩線上遊戲 今天就來跟大家分享這個小知識 時間軸 00:00 開場 00:50 什麼是IP...
dns是什麼 在 謙謙 ? Instagram 的最讚貼文
2021-02-01 10:06:38
. 叮!吃飯啦🍚🍴 猜猜桌上的大同小電鍋是什麼內~~~ 竟然是超可愛ㄉicash2.0😜👀 外觀超擬真!!而且跟真實電鍋一樣有紅綠兩款 鍋蓋還可以打開側掛旁邊鐵鉤上🤣 電鍋內細節也滿滿 是仿真越光米,, 開關也可上下撥動 感應結帳時還會發亮啦齁✨ 而且現在icash2.0造型除了...
dns是什麼 在 Cʜᴀ帶瑜去旅行 Instagram 的最佳解答
2021-03-05 01:15:00
| 乖乖不能出國流浪的十一月故事~ 𖠋 ◡̈ 忙碌過後的寧靜,彷彿回到了二月多澳洲回來後到五月的時光,沒有大型活動工作,很多自己的休息時間,也有一些包班們~ 當然也很多時間思考明年要什麼樣的生活呢🤔 我想及大家也覺得那就把今年跟過往生活融合,少一點教室的課程,持續包班及活動到處跑吧~ — 十...
dns是什麼 在 Facebook 的最佳解答
《為什麼學瑜伽要學解剖學?》補充增訂篇
我覺得它提供了我更多元的角度去看待體位法的練習,進而引發出自省的對話,讓我能夠更有覺知的選擇我的練習。
瑜伽從來就不是競爭,不是與別人的競爭,更不是與自己的競爭。
很多人都是因為受傷而選擇瑜伽練習,但有趣的是在復健科或物理治療師端,往往又接到很多因為練習瑜伽而受傷的人,這不就是一個滿諷刺的現象嗎!
而假設教導的媒介是以動作為主的體位法,那當然需要一定程度的解剖學基礎。
如果要教比較高難度有風險的動作,或反過來想要教導透過練習可以療癒身體或恢復正常功能的內容,那對解剖學或說對身體的了解當然需要更多。
所以,夠用就好沒錯,但你要想清楚你要運用到哪個層級,才知道要學到哪個層級。
瑜伽很多的練習內容其實很好,但有點可惜的是因為不同派系強調的重點不同,有時候你想找或你需要的答案,並不在你正在練習的系統中,此時向外取經或看看解剖學的東西,也許能夠幫助你更知道自己在幹嘛。
以下簡單寫一些學習過的系統給我在瑜伽練習的反思。
✅ DNS
在DNS的課程中,我們學習矢狀面穩定,產生飽滿的腹內壓,讓身體整體達到穩定,然後產生好的動作。
開剪刀,就是指前方肋骨外翻,骨盆前傾,腰椎壓迫,更重要的是影響到身體整體的穩定,如果平常都習慣在這狀態做動作,身體慢慢會累積很多代償,甚至到受傷的風險。
所以當每次後彎練習的時候,我都會想一下這件事,到底我是在有控制的後彎,還是千方百計的破壞核心穩定。
✅ FRC
FRC的slogan是Control yourself。在上課的時候強調的重點總是這是內在的練習,你必須去感受關節的動作,而同時做好穩定中軸的工作,這些跟DNS部分的觀念又是重疊的。
另外,它又特別強調mobility跟flexibility的差別,活動度mobility是有控制的flexibility,放在瑜伽容易過度開髖伸展而失去控制的情況,也是一個非常好的提醒。
✅ Anatomy Trains
在解剖列車中,深層的深前線等同於核心的筋膜線,其中大腿內收肌群一路往上也跟骨盆底肌跟橫隔膜相連,另外在步態穩定中,內收肌群的重要不下於傳統認為的髖外展肌群。
所以當我練習橫劈時,我也會想一下我到底是有控制的練習,還是一樣已經到破壞它的程度了,韌帶拉鬆了,是不太容易練回來的,等老了肌肉流失才是真正考驗的時候。
這些並不是散播恐懼,因為當然很有可能你練一輩子都不會怎樣,但你願意付出這個風險的代價是為什麼?
「風險控管,一切都是等價交換啊。」
有幾個常見的錯誤認知,例如:
練越深越厲害
老師可以我也可以
現在沒事以後也沒事
所以要真正看清楚自己的狀況,以及在練習的時候,當你要突破或被突破身體的極限時,不妨暫停一下,好好的往內看,思考一下當下腦中的想法是什麼。
Find your why
☑ 是Ego嗎?想追求什麼目標?
多多少少,例如我在練習的時候也有ego跟執著,我練單手倒立就是希望能夠趕快突破5秒可以拍照,大方承認是真正面對問題的第一步。
如果都沒有,那找到自己的專注跟練進階體位法本來就不是等號,那就都拜日式跟靜坐就好了不是。
☑ 為了這個,我付出的代價是什麼?
如果是倒立,就是比較多的肩膀穩定練習,大概推自己重量,這個水準在常做重訓的也許就普通。
☑ 當狀況不好,我能夠勇敢的踩煞車嗎?
例如今天手就是不穩,覺得狀況不好,那就減量或是乾脆休息,不練不會怎樣。
☑ 這些瑜伽練習,整體下來讓我精神越來越好,體態越來越均衡飽滿?
這個也必須很有覺知的去感受身體的狀況,特別是在離開練習後,你是一切都很好,還是甚至每個禮拜都要去針灸治療。
而最後想完一輪,也許你就能夠真正的了解:
「瑜伽體位法是工具,解剖學也是工具。瑜伽練習本來就不在體位法本身,而是透過它達到的自省,當你真正內在跟外在達到和諧,不需要用極端的方式用體位法證明自己,尊重身體,懂得適當踩煞車,這時候你美好舒適的瑜伽練習才真正開始。」
——
📌如果覺得這篇分享對你有幫助
📌歡迎按讚 留言 分享跟tag我
📌你的回饋是我持續寫文章的動力
#瑜伽 #瑜伽解剖學
#阿肯師閒聊系列
#自瑜瑜人的瑜伽老師
#kensyogalife
dns是什麼 在 矽谷牛的耕田筆記 Facebook 的最佳貼文
本篇文章是個經驗談,作者想要聊聊是如何將一個 4vCPU 的VM給調整到可以達到每秒處理 1.2M(120萬)個 JSON Reuqest,本篇文章非常的長,所以會分多天來介紹。
整篇文章探討的是各種 turning 的步驟,來聊聊如何從最初每秒 224k(22萬四千) 給調整到每秒 1.2M 的處理能力。
整個過程分成九大步驟,後面同時標示每個過程後的每秒請求能力
1. Application Optimizations (347k)
2. Speculative Execution Migtigations (446k)
3. Syscall Auditing/Blocking (495k)
4. Disabling iptables/netfilter (603k)
5. Perfect Locality (834k)
6. Interrypt Optimizations (1.06M)
7. The Case of the Nosy Neighbor (1.12M)
8. The Battle Against the Spin Lock (1.15M)
9. This Gost to Twelv (1.20M)
作者強調,上述的過程不一定適合你的應用程式,但是透過這些步驟能夠讓你更佳瞭解應用程式的運作行為,同時也有機會發現一些潛在的瓶頸問題。
環境介紹
1. 團隊使用 Techempower 來進行 JSON Serialization 的測試
2. 使用 libreactor(event-driven框架) 來搭建一個簡單的 API Server
3. HTTP 的解析使用 picohttpparser,同時使用 libclo 來處理 JSON 的編碼
4. 硬體環境
- Server: 4 vCPU, c5n.xlarge AWS VM
- Client: 16 vCPU, c5n.4xlarge AWS VM (clinet太弱會變成瓶頸)
- Network: Server/Client 屬於同一個可用區域(AZ)
5. 軟體環境
- 作業系統: Amazon Linux2 (Kernel 4.14)
- Server: 使用 libreactor (使用不同版本,分別是 Round18 以及 Round20)
- Client: 修改 wrk 這個知名的工具並重新命名為 twrk,詳細差異自己看文章內部,主要都跟顯示有關
6. 實驗方式
- 每個測試跑三次,取中間值
- 256 連線,16 threads,同時每個 thread 都會 pin 到一個固定的 CPU
- 每個實驗都有兩秒的暖機時間來建立連線
Ground Zero
第一個要探討的就是什麼最佳化都還沒有使用前,到底當前應用程式可能的瓶頸在哪裏
首先團隊將該應用程式與其他常見的應用程式或是開發框架比較,譬如 Netty, Nginx, Actix, aspcore 等, libreactor 的效能不錯,有中上水準。
接者作者使用火焰圖(Flame Graphs)來 Profile 該伺服器,作者很好心地將文章中所有的火焰圖都調整了一下,讓所有的 user-space 相關的 function call 都轉成藍色,而剩下跟 kernel 相關都維持紅色。
1. 大部分的時間都在 Kernel 處理
2. 主要是花費在收封包與送封包
3. 應用程式本身主要是分兩大部分,解析 HTTP 的封包以及處理請求與回應。
從上述兩點來看,作者認為目前的應用程式寫得算不錯,因為瓶頸很明顯是卡在 Kernel 端
接下來就正式進入到各種 Turning 的章節探討
Application Optimizations
長話短說:
- 作者基於 libreactor Round18 的框架進行修改,並且所有的修改都已經被合併到 Round20 的版本中,而這些修改主要是實作方面的強化以及整個框架的最佳化。
1. 作者首先透過 htop 觀察運行過程,發現 Server 只有使用 2vCPU 而已(系統有 4vCPU),因此這是作者進行的第一個修改,讓 Server 使用了 4vCPU,這個簡單調整就讓效能提升 25%
註: 作者特別強調,不要覺得從 2vCPU 變成 4vCPU 效能就可以變成兩倍,主要是1) 沒有使用的 vCPU 還有很多其他的工作要處理,因此不是完全都送給你應用程式處理。2)基於 hypter-thread vCPU 的架構,環境只有兩個真正的 CPU 而是透過邏輯的方式產生四個抽象的 CPU,所以全用一定會變快,但是基於很多資源還是要競爭與共用,數字不是單純翻倍
2. 作者自己的應用程式本身使用 gcc 建置時有使用 "-o3" 的方式來最佳化處理,然而框架本身卻沒有使用 "-o3" 的方式來弄,因此作者也針對這個部分來處理,讓建制框架時能夠使用 -o3
3. 從實作方面來看,作者觀察到 libreactor 1.0 版本使用的是 read/write 這兩個常見的方式來處理封包的送收,作者將其修改成 recv/send 整個效能就提升了將近 10%。
註: write(針對 FD,更全面廣泛的用法) 與 send(針對 Socket,更針對的用法) 使用上差異不大,但是 write 於底層 Kernel 最終還是會呼叫到 send 來處理,所以基本上可以理解就是在沒有特別參數需求時,可以直接跳過幾個 kernel function 來達到加速的效果。
write kernel 內的走向: sys_write -> vfs_write -> __vfs_write -> sock_write_iter -> sock_sendmsg
send kernel 內的走向: sendto -> sock_sendmsg
4. 作者觀察到火焰圖中有一些 pthread 相關的資料,進而發現 libreactor 會創造一個 thread pool 來處理非同步的 DNS 名稱解析問題。對於一個 HTTP Client 來說,如果今天要發送請求到多個不同的 domain,而每個 domain 都會需要進行一個 blocking 的解析過程,透過這種方式可以減少 DNS 解析造成的 blocking 問題。然而對於 HTTP Server 來說,這個使用情境帶來的效益似乎就稍微低了些,畢竟 Server 只有 Bind Socket 之前可能會需要去解析一次 DNS 而已。
大部分的情境下, thread pool 都是應用程式初期會去創造而接者就不太會管她,但是對於錙銖必較的效能除錯人來說,任何能夠調整的部分都可能是個值得探討的地方。
作者透過修改 Server 端(準確來說是 libreactor 框架內的程式碼)關於 Thread Pool 的一些用法,成長的讓整個效能提升了 2~3%
結論來說,透過上述四個概念來提升的程式碼效能。
1. vCPU 盡量使用: 25%-27%
2. 使用 gcc -O3 來建置框架的程式碼: 5%-10%
3. 使用 march=native 等參數來建置最後的 server 應用程式: 5%-10%
4. 使用 send/recv 而非 write/read: 5%-10%
5. 修改 pthread 的用法: 2%-3%
註: 作者強調每個最佳化的結果並非是單純累積的概念,反而還會有互補的效果。
可能前述的操作實際上也會讓後續的操作達到更好的效果,
譬如如果先跑 vCPU 的調整,效能大概提升 25%,但是如果先執行別的最佳化過程,最後再來調整 vCPU,就可以達到 40% 的效果,主要是 CPU 可以共有效率的去執行程式。
最後,這個部分讓整個處理封包能力從 224k 提升了 55% 到 347k (req/s)。
從火焰圖來看,整個 user-space 的範圍縮小許多,同時 send/recv 的處理也有使得整體的高度下降一點點(大概四格..)
為了避免文章過長,本篇文章就探討第一個最佳化的過程,剩下的就敬請期待後續!
https://talawah.io/blog/extreme-http-performance-tuning-one-point-two-million/
dns是什麼 在 Facebook 的精選貼文
DNS-C 課間閒聊
很多時候上課的討論,常會有非常多的啟發。
老師也聊到,針對dns原則的訓練,不同的身份會有不同的mindset。
如果今天是患者,因為身體明顯有傷或疼痛,可能他們會相對願意慢下來練好基礎動作。
但如果今天是是一般練習者,瑜伽,重訓,有氧都好,他們想的都是相對難的動作,這時候你要讓他們慢下來做好基礎動作的難度相對高,所以老師覺得這反而值得鼓勵。
舉我自己當例子,我可以從地板兩隻手推到倒立的變化停留一陣子沒問題,但是,有些看似簡單的動作,其實我做到超級抖而且還無法完美的做好。
這樣到底哪個比較難?的確是值得思考的問題。
老師一直提醒的,就是physiology,到處怎樣的練習方法,比較符合生理的原則,不需要要求完美,而是盡量的去符合生理的原則。
而我自己在教學,也會不停問自己如何在教導動作的同時,盡量符合身體的使用原則,即使我的學生的練習,從倒立,後彎,開髖,到基礎的練習都有。
不過這個還是牽扯到每個人對身體的價值觀啊。
當初你練習的目的到底是什麼?
這真的是個很好的問題。
Physiology is the science of life.
#dns
#kensyogalife