To support ASP. NET5 cross-platform, Jexus adds new initiatives,
Jexus runs on Linux/FreeBSD platform to support ASP. NET is famous for its high-performance HTTP server and reverse proxy server. After the 5.6 version completes the support for the OWIN standard applications, it focuses on ASP. NET5 support.
However, because ASP. NET5 and the previous ASP. compared with. NET, Jexus has undergone revolutionary changes in both the runtime environment and the deployment mode, and it is difficult for Jexus. NET Era, put ASP. NET5 is easily included in its working process and runs directly.
Supports ASP. NET5, there are a variety of options to be selected in front of Jexus, such as using the OWIN protocol for ASP. NET5 develops dedicated adapters or uses the reverse proxy function of Jexus, and so on. However, after repeated trade-offs, Jexus 5.8.1 selects a more direct and practical solution: A new function similar to "port forwarding" is used to bridge the website port with the application host port.
The reason for choosing this solution is that the current limitations of other solutions are relatively large:
1. OWIN solution. Because mono and. NET Core is a completely different operating platform. In essence, it is very different. It creates great difficulties for the development of OWIN adapters running in the Jexus process, and ASP. NET5 is still developing, and there are considerable uncertainties in architecture and API;
2. Reverse Proxy solution. Jexus supports reverse proxy and can be used for load balancing. However, the reverse proxy needs to parse and reorganize the request packets sent by external users and the response packets sent by the working server to varying degrees, which will inevitably consume a certain amount of computing resources. In addition, reverse proxy supports WebSocket and other technologies with great difficulty and higher performance consumption;
3. Rewrite Jexus Based on. NET Core. This solution is obviously unrealistic: one of the reasons is that Jexus must continue to support the "pre-ASP.. NET ", if it is based on core rewrite, it will appear with" pre-ASP. NET "compatibility issues and even the risk of" disconnection ", which is not something Jexus users are willing to see. Second, Jexus is already a mature WEB server developed over the years, rewriting Jexus is by no means a simple task. It takes a considerable amount of time and effort.
Port "forwarding" has the direct effect of class port "bridging", which not only avoids the development difficulty of the OWIN solution, it also avoids the performance consumption of the reverse proxy solution and the limitations of the application layer interaction protocol. More importantly, this solution supports Microsoft for ASP. the Kestrel host server customized by NET5 also supports other self-host applications with a wide range of patterns, such as Tomcat and node. the js service enables Jeuxs to be integrated to provide services with port 80. This is also feasible.
Jexus 5.8.1 BETA1 has been released and interested friends can go to http://www.linuxdot.net/to download.