{"repo":"fiber-net-gateway/fiber-net-gateway","free":true,"listed":false,"github":"https://github.com/fiber-net-gateway/fiber-net-gateway","clone":"git clone https://github.com/fiber-net-gateway/fiber-net-gateway.git","description":"A low code API gateway | FaaS framework based on script engine. The implemented function is to execute a script for each HTTP request received. Used for protocol conversion, reverse proxy, service orchestration, BFF, etc. 基于脚本引擎的低代码 API 网关 ｜FaaS 框架，用于 FaaS BFF，服务编排等。","language":"Java","stars":18,"topics":["api-gateway","interpreter","low-code","netty-http","coroutine","asm","bytecode-manipulation","faas-framework","servless"],"license":"Apache-2.0","category":"workflow-automation","readme_excerpt":"fiber-net-gateway 中文版 A low-code API gateway FaaS framework based on a script engine. The function implemented is to execute a script for responding HTTP requests. In the script, you can write some calls to http, dubbo services and other simple logic, which can implement protocol conversion, reverse proxy, service orchestration, BFF and other functions. The project comprises three fundamental components: - Netty-based asynchronous HTTP server. - Netty-based asynchronous HTTP client, supporting https, DNS and connection pooling. - Scripting engines with both interpreter and AOT (Ahead of Time Compilation). The performance is very high, and it is the fastest java gateway FaaS framework in the world (without any other one), It is 1.5 times faster than nginx-luajit and 4.4 times faster than spring-mvc (Performance Test). There are some highlights as follows: - A scripting language designed specifically for scenarios such as FaaS API gateway, which is different from other complex and difficult-to-understand configurations for gateways and is simple and easy to understand. - All components are asynchronous, no thread pool is used, and there are no other threads except for Netty's IO threads. There are two ways to execute scripts, and both support Coroutine (Principle Description): - Interpreter mode: Compile the script into a series of assembly-like instructions, and simulate the execution of the instructions in Java, similar to a Lua interpreter; - AOT (Ahead of Time Compilation) ","default_branch":null,"files":null,"tree":[],"storefront":"/r/fiber-net-gateway","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/fiber-net-gateway/fiber-net-gateway/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}