xitrum簡介:
注釋:1.akka是乙個開發庫和執行環境,可以用於構建高併發、分布式、可容錯、事件驅動的基於jvm的應用。使構建高併發的分布式應用更加容易。
2.hazelcast作為乙個高度可擴充套件的資料分發和集群平台,提供了高效的、可擴充套件的分布式資料儲存、資料快取。
xitrum是基於netty和akka的非同步、集群的scala web框架和http伺服器。
xitrum是乙個令人印象深刻的作品,大概是最完整易用的scala框架了吧(guide上說比lift框架更容易)。
它是乙個真正的滿堆疊web框架,包含了很多基礎,
例如像etags的wtf-am-i-on-the-moon,靜態檔案快取標識,和自動解壓縮程式,內嵌入json轉換,攔截機制(before/around/after),
request/session/cookie/flash範圍,完整的校驗機制,內嵌快取層(hazelcast),i18n a la gnu gettext,netty (with nginx, hello blazing fast)等等。
特色(feature):
型別安全。在scala的思想中,所有的api都試圖實現型別安全。
非同步。在netty的思想中,你的請求操作並不會立即響應,他支援輪詢,分塊響應,websocket,sockjs。
基於netty的內嵌http和https網頁伺服器。xitrum的靜態檔案可以提供像nginx一樣快的服務。
大量的客戶端和服務端快取可以提供快速的響應。在web伺服器層,小檔案是被快取在記憶體中,大檔案是用nio的零拷貝。在web層,你可以自己以rails形式中宣告page,action,和物件快取,所有谷歌的最好的方法像get都可以在客戶端快取中應用。可以通過強制瀏覽器一直向server傳送請求以達到在使用前重複驗證快取的目的。
支援cors。
可以把檢視寫在單獨的scalate模板檔案或者scala內聯xml中,他們都是型別安全的。
sessions可以被儲存在cookies(更可擴充套件)或hazelcast(更安全)中。hazelcast提供了程序內分布式快取,和akka提供的pubsub功能相同。
jquery校驗被應用於瀏覽器端和伺服器端。
還支援i18n.
xitrum想要比scalatra功能更強大,且要比lift更易用。你可以更容易地建立 restful api和回發。xitrum像scalatra一樣是控制器優先,而不是像lift那樣檢視優先。
Objective c學習筆記01 簡介
如果您未曾開發過 ios 或 mac os x 平台的程式,那就需要開始了解它們的首要程式語言 objective c。objective c 並不是一種很難的語言,如果能花一點時間學習,相信您會漸漸領會到它的優雅之處。objective c 程式語言使您能進行複雜的 物件導向的程式設計。通過提供用...
Xitrum學習筆記18 日誌
任何地方都可以直接使用xitrum.log xitrum.log.debug my debug msg xitrum.log.info my info msg 如果想獲得log在 建立的資訊,應該繼承xitrum.log特質 package my package import xitrum.log ...
機器學習筆記01 機器學習簡介
機器學習是人工智慧的乙個分支,它業是一類演算法的總稱。這些演算法能夠根據提供的訓練資料按照一定的方式來學習,最終用於 或者分類。更具體的說,機器學習可以看作是尋找乙個函式,輸入是樣本資料,輸出是期望的結果,只是這個函式過於複雜,以至於不太方便形式化表達。需要注意的是,機器學習的目標是使學到的函式很好...