一,什么是 Tinyfox:

Tinyfox 是一款自带 HTTP 服务器的以 WebApi、WebSocket 及“动态HTML”为核心功能的超轻量级的独立性极强的高性能 Web 应用程序基础框架。

Tinyfox 简单易用,性能强劲,跨平台,既支持 Linux 也支持 Windows,既支持 x86 硬件环境,也支持 ARM、LoongArch 等 CPU 环境。同时,Tinyfox既支持传统的 .NET Framework环境,也支持 .NET6 以上的“.NET新世界”,对各种.NET项目都有很好的适应能力。

另外,Tinyfox 自身已经去除了影响 .NET 程序“Native化”的各种因素,所以,Tinyfox 能很好地支持 .NET NativeAOT,这个特点为基于 Tinyfox 开发高性能、高价值的商用程序提供了关键性的基础条件。

 二,Tinyfox的使用场景:

根据 Tinyfox 的自身特点,Tinyfox 适合于在下列场景中使用:

  • 快速开发、快速部署或者需要大量节省开发投入和运营成本的网络服务程序开发场景;
  • WebAPI、微服务场景。可以做得“小而精、小而快”是 Tinyfox 的最大特点之一,因此在高性能 WebApi、微服务等场景中,Tinyfox 是非常合适的选择;
  • 信息及数据双向及时交互场景,比如开发各种在线交互类服务程序、网络游戏软件的后端服务程序等等;
  • 因为Tinyfox内置“动态HTML”功能,因为,Tinyfox也能用于网站项目的快速建设场景;
  • 对关键源码保护级别要求很高的或商业性质的网络服务程序开发场景,因为 Tinyfox 已经从基础层面避开了破坏程序“Native化”的各种因素;
  • 对程序大小、独立性、稳定性要求很高的应用场景,比如开发出提供给工控设备、物联网设备、机顶盒设备使用的网络服务程序;
  • 大并发、高负载的网络服务场景。
  • 跨平台场景。

三,Tinyfox的获取:

Tinyfox 是一款免费组件,通过 www.nuget.org 公开发布,开发者可以直接在 Visual Studio 中通过 nuget 管理器直接引用。

四,Hello World:

1,启动 Visual Studio(Visual Studio),创建一个控制台项目,假设项目名称为TinfoxTest:

2,在项目中,添加Tinyfox引用:

3,在该项目的 Program.cs 的“Main()”方法中添加代码:

4,(按F5)启动该程序:

5,打开浏览器访问,查看效果:

五,小节

从上属示例项目创建过程中可以看出,创建一个Tinyfox Web服务项目包括如下步骤:

1,在VS中新建 .NET/c# 项目,可以是控制台类型的,也可以是WinForm类型的;

2,在VS中,用 NuGet 包管理器浏览并安装 Tinyfox 包;

3,在代码中 using Tinyfox、Tinyfox.WebApiEngine、Tinyfox.WebApiEngine.Results 等名字空间;

4,在程序 Main() 方法中,通过Fox静态类的属性对Tinyfox的服务端口、绑定的IP地址、上传文件大小限制等等运行参数进行配置(如果有必要的话);

5,通过 Fox.Router 属性设置路由(请求路径与处理方法之间的映射关系);

6,用 Fox.Start() 方法启动服务并用 Fox.WaitExit() 方法阻止程序直接退出(等候程序主动关闭或收到外部终止信号,如按下了 ctrl+c 键)。

Tinyfox 简易教程之:Hello World!的更多相关文章

  1. [转]搬瓦工教程之九:通过Net-Speeder为搬瓦工提升网速

    搬瓦工教程之九:通过Net-Speeder为搬瓦工提升网速 有的同学反映自己的搬瓦工速度慢,丢包率高.这其实和你的网络服务提供商有关.据我所知一部分上海电信的同学就有这种问题.那么碰到了坑爹的网络服务 ...

  2. jQuery EasyUI教程之datagrid应用(三)

    今天继续之前的整理,上篇整理了datagrid的数据显示及其分页功能 获取数据库数据显示在datagrid中:jQuery EasyUI教程之datagrid应用(一) datagrid实现分页功能: ...

  3. jQuery EasyUI教程之datagrid应用(二)

    上次写到了让数据库数据在网页datagrid显示,我们只是单纯的实现了显示,仔细看的话显示的信息并没有达到我们理想的效果,这里我们丰富一下: 上次显示的结果是这样的 点击查看上篇:jQuery Eas ...

  4. jQuery EasyUI教程之datagrid应用(一)

    最近一段时间都在做人事系统的项目,主要用到了EasyUI,数据库操作,然后抽点时间整理一下EasyUI的内容. 这里我们就以一个简洁的电话簿软件为基础,具体地说一下datagrid应用吧 datagr ...

  5. kali linux 系列教程之metasploit 连接postgresql可能遇见的问题

    kali linux 系列教程之metasploit 连接postgresql可能遇见的问题 文/玄魂   目录 kali linux 下metasploit 连接postgresql可能遇见的问题. ...

  6. kali Linux系列教程之BeFF安装与集成Metasploit

    kali Linux系列教程之BeFF安装与集成Metasploit 文/玄魂 kali Linux系列教程之BeFF安装与集成Metasploit 1.1 apt-get安装方式 1.2 启动 1. ...

  7. Kali Linux系列教程之OpenVas安装

    Kali Linux系列教程之OpenVas安装 文 /玄魂 目录 Kali Linux系列教程之OpenVas安装 前言 1.  服务器层组件 2.客户层组件 安装过程 Initial setup ...

  8. Playmaker Input篇教程之PlayMaker菜单概述

    Playmaker Input篇教程之PlayMaker菜单概述 Playmaker InputPlayMaker菜单概述 Playmaker插件被导入游戏项目以后,会自动为Unity编辑器添加一个名 ...

  9. Playmaker Input篇教程之Playmaker购买下载和导入

    Playmaker Input篇教程之Playmaker购买下载和导入 Playmaker Input篇认识Playmaker Playmaker是Unity的插件,其标志如图1-1所示.开发者使用它 ...

  10. Xamarin Anroid开发教程之Anroid开发工具及应用介绍

    Xamarin Anroid开发教程之Anroid开发工具及应用介绍 Xamarin开发Anroid应用介绍 如今智能手机已经盛行了好几年,而针对这些智能手机的软件开发也变得异常火热.但是在Andro ...

随机推荐

  1. PythonDay1Base

    PythonDay1Base 变量 即python运行过程中可以发生改变的量,如同数学中的未知数X,将一个确定的量赋值给变量. 变量定义原则 由英文大小写,数字以及下划线_组成 不能以数字开头 不能以 ...

  2. BeautifulSoup(bs4)细致讲解

    BeautifulSoup(bs4) BeautifulSoup是python的一个库,最主要的功能是从网页爬取数据,官方是这样解释的:BeautifulSoup提供一些简单,python式函数来处理 ...

  3. element-ui季度选择组件

    1.基于elementui开发的季度选择组件 2.调用 <el-quarter-picker v-model="start_time" :size="size&qu ...

  4. CTF中RSA相关题型总结(持续更新)

    e很小时: import gmpy2 from functools import reduce from Crypto.Util.number import long_to_bytes def CRT ...

  5. 树莓派4B 关闭休眠,关闭屏保

    1.安装 sudo apt install xscreensaver 2.打开xscreensaver sudo xscreensaver-demo 3.设置 参考:https://zhuanlan. ...

  6. DDCA —— 片上网络互联

    1. 路由 1.1 网络拓扑示例 Grid(网格) 网络拓扑通常是一个二维矩阵形式,每个节点(处理器)与其上下左右相邻的节点相连. 如果节点在边缘,某些方向上可能没有相邻节点(边界节点). Torus ...

  7. ASP.NET Core IHostBuilder

    HostBuilder 很显然,HostBuildr 就是用来构建 Host 的构建器. IHostBuilder 定义 通过 Build() 方法,构建器返回构建的 IHost 对象实例. 具体怎么 ...

  8. Alpine中安装telnet

    lpine Linux是一个基于musl libc和busybox的安全轻量的Linux发行版. 在Alpine中安装telnet,并不是apk add telnettelnet被移入子包busybo ...

  9. localhost 宿主机访问

    ssh -N -f -L localhost8888:localhost:8888 hostname

  10. 完美解决idea2020一直indexing,无法操作的问题

    hello,大家好,2021年的第一篇文章,希望疫情早日过去,大家早日恢复正常生活. 今天主要分享一下在使用idea 2020.3版本开发maven项目的时候,一直出现有效件index, 有时候是sc ...