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

OWin 狐貍 html服務(wù)器TinyFox

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

本類精品

軟件介紹

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

TinyFox特點(diǎn):

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

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

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

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

狐貍的構(gòu)成:

輕身如燕,是對這款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。

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

使用TinyFox的方法:

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

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

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的默認(rèn)的根目錄設(shè)置,具體操作就是新建一個類,讓他繼承“IRootPathProvider”并重寫“GetRootPath”方法即可,代碼示例如下:

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

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

 

然后雙擊運(yùn)行 owinhost.exe 。

 

我們就可以在瀏覽器中正常的訪問我們的項(xiàng)目了。

如何使用

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

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

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

自帶一個測試項(xiàng)目,訪問下面地址

http://localhost:8088/

http://localhost:8088/info

http://localhost:8088/test

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

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

什么是 OWIN ?

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

其他版本下載

發(fā)表評論

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

TOP
軟件下載