西西軟件園多重安全檢測下載網站、值得信賴的軟件下載站!
西西首頁 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專題合集

OWin 狐貍 html服務器TinyFox

1.0 官方最新版
  • OWin 狐貍 html服務器TinyFox1.0 官方最新版
  • 軟件大小:3.2M
  • 更新時間:2015-09-08 11:09
  • 軟件語言:中文
  • 軟件廠商:
  • 軟件類別:國產軟件 / 免費軟件 / 編程控件
  • 軟件等級:4級
  • 應用平臺:WinAll, WinXP
  • 官方網站:http://www.innovatechautomation.com
  • 應用備案:
好評:50%
壞評:50%

本類精品

軟件介紹

TinyFox 是一款支持OWIN標準的WEB應用的高性能的HTTP服務器,是Jexus Web Server的"姊妹篇"。TinyFox本身的功能是html服務器,所有的WEB應用,通過加載含有一個OwinMain方法的"應用程序適配器"或"插件"實現(xiàn),TinyFox與應用程序之間的數(shù)據(jù)交流格式是 OWIN規(guī)范的字典。

TinyFox特點:

1,跨平臺:支持windows、linux等常用操作系統(tǒng);

2,超輕量:功能單一而明確:除了靜態(tài)文件由自身處理外,其它的應用邏輯直接交給用戶處理;

3,高性能:底層基于 libuv 開發(fā),是完全的異步、非阻塞、事件驅動模型,上層代碼也經過了高度優(yōu)化;libuv是NodeJs的基礎庫,libuv 是一個高性能事件驅動的程序庫,封裝了 Windows 和 Unix 平臺一些底層特性,為開發(fā)者提供了統(tǒng)一的 API,libuv 采用了異步 (asynchronous), 事件驅動 (event-driven)的編程風格, 其主要任務是為開人員提供了一套事件循環(huán)和基于I/O(或其他活動)通知的回調函數(shù), libuv 提供了一套核心的工具集, 例如定時器, 非阻塞網絡編程的支持, 異步訪問文件系統(tǒng), 子進程以及其他功能,關于libuv的更多內容推薦參考電子書 http://www.nowx.org/uvbook/ 。

4,高安全性和高穩(wěn)定性:本服務器由Jexus Web Server作者開發(fā),在很大程度上承接了JWS的高安全性和高穩(wěn)定性素質;

狐貍的構成:

輕身如燕,是對這款OwinHost的最直觀評價,它非常的小,整個Host的大小用7Z打包了僅僅只有1.26M大小。拆開壓縮包之后,我們能夠發(fā)現(xiàn)幾個重要的組成,如下圖所示:

    “native”:所有這個OwinHost的支撐組建放在這里。

    “site”:我們的OWIN WebApplication 放這里。

    “tools”:里面包含了Host的適配器。

    “fox.sh”:方便在*nux中啟動Host而寫的腳本文件。

    “fox.bat”:方便在Windows中其中Host而寫的批處理文件。

    “owinhost.exe”:這個OwinHost的程序主體。

    “owinhost.exe.config”:配置文件,通過這個可以CLR版本等。

    “ReadMe”:讀我,使用方法和Q&A。

     沒了,就這幾個東西,結構很簡單,功能也很“單純”,但性能卻不簡單,采用全異步的事件驅動,同時最大化的繼承Jexus高強度抗壓抗攻擊的優(yōu)點,最大限度的保證了應用的安全性和穩(wěn)定性。

使用TinyFox的方法:

    比起嚕里八嗦的介紹,怎么使用才是讀者們真正關注的話題,這里我準備了一個NancyFX作為案例,為各位讀者講解。

    首先,很常規(guī)的,我們準備了一個采用了OWIN模式的NancyFX的新站。然后加入Adapter.cs文件,這里我把Adapter的代碼公開,有需要的讀者可以直接拷貝入項目中。 

internal class Adapter
    {        private static Func<IDictionary<string, object>, Task> _owinApp;        public Adapter()
        {            var builder = new AppBuilder();            var startup = new Startup();
            startup.Configuration(builder);
            _owinApp = builder.Build();
        }        public Task OwinMain(IDictionary<string, object> env)
        {            if (_owinApp == null) return null;            return _owinApp(env);
        }
    }


最后修改下NancyFX的默認的根目錄設置,具體操作就是新建一個類,讓他繼承“IRootPathProvider”并重寫“GetRootPath”方法即可,代碼示例如下:

public class RootPath : IRootPathProvider
{    public string GetRootPath()
    {        var basep = AppDomain.CurrentDomain.BaseDirectory;        var rp = Path.Combine(basep, "site", "wwwroot");        return rp;
    }
}

發(fā)布后,把網站的全部內容放入到“wwwroot”目錄中。

 

然后雙擊運行 owinhost.exe 。

 

我們就可以在瀏覽器中正常的訪問我們的項目了。

如何使用

整個Host的大小用7Z打包了僅僅只有1.26M大小。拆開壓縮包之后,我們能夠發(fā)現(xiàn)幾個重要的組成,如下圖所示:

windows需要安裝.NET4以及版本,非Windows操作系統(tǒng)需要安裝mono 3.12以上版本;

在 windows上,點擊 TinyFox文件夾中的fox.bat,在linux上輸入 ./fox.sh 就能運行; 當前版本的默認端口是8088,可以修改 fox.bat (windows)或 fox.sh (非windows) 腳本,在 owinhost.exe 后邊加上 "-p 端口號"。

自帶一個測試項目,訪問下面地址

http://localhost:8088/

http://localhost:8088/info

http://localhost:8088/test

你的應用需要基于OWIN開發(fā)或者在具有OWIN接口的應用層框架上開發(fā)(比如NancyFx),在此基本上,新建一個類(可稱為"適配器""接口"),這個類中,必須有一個叫"OwinMain"的方法(具體格式參見demo),然后把編譯后的dll放在網站wwwroot的bin文件夾或approot文件夾中。驚鴻哥寫了一篇文章"OwinHost再添新成員:TinyFox",文章詳細介紹了如何部署用了OWIN模式的NancyFX的應用。

Tools目錄下Jws.Owin-Adapters.zip中有三個"應用"示例,base.demo是最能體現(xiàn)OWIN原始定義,msowin.demo是在插件中加載microsoft.owin.dll進入ms處理OWIN的流程,nancy.demo是在ms owin處理流程(管道)中加載NancyFx,運行NancyFx應用層框架。

什么是 OWIN ?

OWIN 的全稱是 "Open Web Interface for .NET", OWIN 在 .NET Web 服務器和 .NET Web 應用之間定義了一套標準的接口, 其目的是為了實現(xiàn)服務器與應用之間的解耦, 鼓勵為 .NET Web 應用開發(fā)簡單模塊。

軟件截圖

其他版本下載

發(fā)表評論

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(0)條評論 > 字數(shù): 0/500

TOP
軟件下載