Tinyfox 简易教程之:Hello World!

一,什么是 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 键)。

相关推荐
k4m7v2pz20 小时前
Rust 高并发 WebSocket 连接管理:从线程地狱到 tokio 异步架构
websocket·架构·rust·并发编程·tokio
Sylvia33.2 天前
篮球数据API的技术架构与工程实践:基于火星数据WebSocket实时推送体系
java·python·websocket·网络协议·架构
Sylvia33.3 天前
从轮询到推送:足球数据API架构演进与火星数据技术拆解
java·服务器·网络·python·websocket·架构
kels88993 天前
实战排坑:黄金实时API开发,XAUUSD Tick报文异常处理实践
开发语言·python·websocket·网络协议·信息可视化
agent8975 天前
实战升级|SpringBoot WebSocket实现多轮对话AI流式问答(上下文记忆+自动重连+会话隔离)
人工智能·spring boot·websocket
sunywz7 天前
【从零搭建物联网智能充电桩系统】4、Netty WebSocket 服务:小程序实时推送背后的长连接管理
物联网·websocket·小程序
贾天佑忆月 迷失的昵9 天前
客户端与服务器持续同步解析(轮询,comet,WebSocket)
运维·服务器·websocket
李昊哲小课9 天前
fastapi sse websocket 奶茶店实时订单看板
人工智能·python·websocket·网络协议·fastapi·sse
李昊哲小课10 天前
fastapi sse websocket 智能家居实时控制台
python·websocket·智能家居·fastapi·sse
花生了什么事o10 天前
WebSocket 与 SSE:实时通信方案的选择
网络·websocket·网络协议