1 20 50 150 500
欢迎来到云客软件站,找素材,搜软件,就上云客软件站!
当前位置 >首页 >软件下载 >电脑软件 >编程开发 >编程其他

OWin 狐狸 html服务器TinyFox 1.0 官方最新版

软件信息
  • 分类:编程其他
  • 大小:3.2M
  • 语言: 中文
  • 环境: WinAll, WinXP
  • 更新:2024-11-13
  • 评级:
  • 系统: Windows Linux Mac Ubuntu
  • 软件类别: 国产软件 / 免费软件 / 编程控件
  • 插件情况:
  • 相关链接: http://www.cr173.com

TinyFox 是一款支持OWIN标准的WEB应用的高性能的HTTP服务器,是Jexus Web Server的"姊妹篇"。TinyFox本身的功能是html服务器,所有的WEB应用,通过加载含有一个OwinMain方法的"应用程序适配器"或"插件"实现,TinyFox与应用程序之间的数据交流格式是 OWIN规范的字典。

TinyFox特点:

1,跨平台:支持windows、linux等常用操作系统;

2,超轻量:功能单一而明确:除了静态文件由自身处理外,其它的应用逻辑直接交给用户处理;

3,高性能:底层基于 libuv 开发,是完全的异步、非阻塞、事件驱动模型,上层代码也经过了高度优化;libuv是NodeJs的基础库,libuv 是一个高性能事件驱动的程序库,封装了 Windows 和 Unix 平台一些底层特性,为开发者提供了统一的 API,libuv 采用了异步 (asynchronous), 事件驱动 (event-driven)的编程风格, 其主要任务是为开人员提供了一套事件循环和基于I/O(或其他活动)通知的回调函数, libuv 提供了一套核心的工具集, 例如定时器, 非阻塞网络编程的支持, 异步访问文件系统, 子进程以及其他功能,关于libuv的更多内容推荐参考电子书 http://www.nowx.org/uvbook/ 。

4,高安全性和高稳定性:本服务器由Jexus Web Server作者开发,在很大程度上承接了JWS的高安全性和高稳定性素质;

狐狸的构成:

轻身如燕,是对这款OwinHost的最直观评价,它非常的小,整个Host的大小用7Z打包了仅仅只有1.26M大小。拆开压缩包之后,我们能够发现几个重要的组成,如下图所示:

    “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高强度抗压抗攻击的优点,最大限度的保证了应用的安全性和稳定性。

使用TinyFox的方法:

    比起噜里八嗦的介绍,怎么使用才是读者们真正关注的话题,这里我准备了一个NancyFX作为案例,为各位读者讲解。

    首先,很常规的,我们准备了一个采用了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;
    }
}

发布后,把网站的全部内容放入到“wwwroot”目录中。

 

然后双击运行 owinhost.exe 。

 

我们就可以在浏览器中正常的访问我们的项目了。

如何使用

整个Host的大小用7Z打包了仅仅只有1.26M大小。拆开压缩包之后,我们能够发现几个重要的组成,如下图所示:

windows需要安装.NET4以及版本,非Windows操作系统需要安装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开发或者在具有OWIN接口的应用层框架上开发(比如NancyFx),在此基本上,新建一个类(可称为"适配器""接口"),这个类中,必须有一个叫"OwinMain"的方法(具体格式参见demo),然后把编译后的dll放在网站wwwroot的bin文件夹或approot文件夹中。惊鸿哥写了一篇文章"OwinHost再添新成员:TinyFox",文章详细介绍了如何部署用了OWIN模式的NancyFX的应用。

Tools目录下Jws.Owin-Adapters.zip中有三个"应用"示例,base.demo是最能体现OWIN原始定义,msowin.demo是在插件中加载microsoft.owin.dll进入ms处理OWIN的流程,nancy.demo是在ms owin处理流程(管道)中加载NancyFx,运行NancyFx应用层框架。

下载地址

热门软件

Top