題圖:play的官網作的很清新和現代,官方文檔也是。可是,好看就必定好用麼?咱們一塊兒來見證。html
015.現場.快用Scala(4月)
不等不靠,有囧有料。終日乾乾,或躍在淵。java
play是全棧式框架,借鑑了MVC和ROR,
有PHP/ROR的開發速度和JAVA的健壯。
天生異步,事件驅動,無狀態熱替換。react
@史榮久 / 2015-04-29 / CC-BY-SA-3.0git
觀看視頻
內容摘要
- play是全棧式框架,借鑑了MVC和ROR,有PHP/ROR的開發速度和JAVA的健壯。
- type safety,編譯器和IDE作智能檢查和提示,提升代碼質量和開發效率。
- play相比於servlet:無狀態熱替換,非阻塞全異步,線程與CPU核心數相關。
- play基於Actor,自然的伸縮性(scalability),性能高於Servlet容器。
- 不科學粗糙測試(
siege -c N -r 50
),N: tomcat=500,play=1000。
- play和新技術結合緊密,支持長鏈接,Coffee,LESS,JSON,大數據等。
- actor-based是事件驅動,簡單講比object-based多了異步消息機制。
- actor始於1973年,業界案例是erlang,HA到9個9,整年31ms不可用。
- PS:2個不相干的設計模式:NIO的reactor,AIO的proactor模式。
- play的Session是一個token,使用cookie,不該該作cache。
- play有4個線程池。使用阻塞資源(JDBC/BIO/WS),須要使用Future。
- idea社區版,不支持play,開發scala正常,view模版不能高亮和提示。
- eclipse(scala-ide)進行測試(unit-test),調試(debug)。
- sublime裝play2插件,語法標亮,適合閱讀代碼。
- sbt中的fork=true時,jvm-debug和熱替換hotswapping不正常。
- sbt的evicted警告:版本統一(升或降級)或排除(
exclude(#,#)
)。
- 生成eclipse工程時,twirl產生的源碼,沒有加入src,是個bug。
- 代碼講解:電腦管理系統(bootstrap,jdbc,CRUD)。
- 代碼演示:play提供filter來跨站請求僞造(CSRF)。
- 求助(一):Firfox不顯示
activator ui
,Chrome好用。
- 求助(二):ScalaIDE在Cario-Dock裏不顯示圖標,unity好用。
參考資源
歡迎圍觀
if (you.accept(MoilionCircle.SPIRIT)) {
if(you.haveADL()){
MoilionCircle we = you.search(MoilionCircle.SLOGAN);
we.welcome(you);
}
if(you.share(this)){
We.thank(you);
We.mayFind7Moilion();
}
}
花絮後記
【2015-04-29】github
十分悲催,視頻錄製,失敗了三次,:(
週日(26),30分鐘,某樓某號,卡拉OK哥音響鋼鋼好,大半夜開動。囧!
週一(27),20分鐘,網絡忽然中斷,程序一下生活不能自理了。囧!
週二(28),40分鐘,手欠出個編譯錯誤,5分鐘沒搞定,重錄。囧!bootstrap
嘗試了大量的窗口縮放,以便看的更清,結果弄得本身眼花。
快捷鍵也作了修改,還有片頭的啓動命令。設計模式