在ServiceStack网站上列出,它表明ServiceStack可以在Mono上运行,并且可以:
这些不同的配置是什么?Mono上的Web Services首选哪种配置?
从v4.5.2版本开始,
ServiceStack现在支持.NET
Core,它比Mono有了显着的性能和稳定性改进,Mono是从共享的跨平台代码库派生而来的,并得到了Microsoft的资源丰富,活跃且响应迅速的团队的支持。如果您当前在Mono上运行ServiceStack,我们强烈建议升级到.NET
Core,以利用其卓越的html" target="_blank">性能,稳定性和自上而下支持的技术堆栈。
我们建议在Linux和Mono上托管ASP .NET网站的安装程序是使用nginx /
HyperFastCgi。我们已经发布了分步指南,从头开始创建一个Ubuntu VM,并在mono-server-
config上完成了deploy /
install / conf / init脚本。
在注意到几个稳定性和性能问题后,我们不再建议使用MonoFastCGI。这篇博客文章对Mono中不同ASP.NET
Hosting选项的性能,内存使用情况和稳定性进行了很好的分析。
XSP与VS.NET WebDev服务器类似-VS.NET
WebDev服务器是用C#编写的简单独立ASP.NET WebServer。这适合于开发或小工作量。您只需从ServiceStack
ASP.NET主机的根目录运行它,即可在处使用它http://localhost:8080
。
对于外部Internet服务,您通常希望将ServiceStack
Web服务托管为功能齐全的Web服务器的一部分。Linux上2种最受欢迎的功能齐全的Web服务器是:
使用Mono FastCGI在Nginx中托管ServiceStack
ASP.NET主机。
使用mod_mono将ServiceStack
ASP.NET主机托管在Apache HTTP Server中。
ServiceStack还支持自我托管,这使您可以在独立的Console应用程序中(即没有Web服务器的情况下)自己运行ServiceStack
Web服务。当您不需要功能齐全的Web服务器的服务时(例如:您只需要在Intranet上内部托管Web服务),这是一个好主意。
默认情况下,相同的ServiceStack Console应用程序二进制文件可同时在Windows / .NET和Mono /
Linux上运行。尽管您愿意,但是可以轻松地守护程序将其作为Linux守护程序运行,如此处所述。Wiki页面还包含有关将自托管Web服务配置为在Nginx或Apache反向代理之后运行的说明。
由于它非常适合Heroku的并发模型(如其12个因素的应用程序自托管中所述),我们将在不久的将来为该领域提供更多支持。
servicestack.net网站本身(包括所有实时演示)使用Nginx + Mono FastCGI 在Ubuntu hetzner
vServer上运行。
此命令用于启动FastCGI后台进程:
fastcgi-mono-server4 --appconfigdir /etc/rc.d/init.d/mono-fastcgi
/socket=tcp:127.0.0.1:9000 /logfile=/var/log/mono/fastcgi.log &
哪个宿主/etc/rc.d/init.d/mono- fastcgi
使用XSP的WebApp文件格式指定的文件夹中*
.webapp文件中定义的所有应用程序,例如:
ServiceStack.webapp:
<apps>
<web-application>
<name>ServiceStack.Northwind</name>
<vhost>*</vhost>
<vport>80</vport>
<vpath>/ServiceStack.Northwind</vpath>
<path>/home/mythz/src/ServiceStack.Northwind</path>
</web-application>
</apps>
这将在后台运行FastCGI Mono进程,您可以通过将此规则添加到nginx.conf来使Nginx连接到该进程:
location ~ /(ServiceStack|RedisAdminUI|RedisStackOverflow|RestFiles)\.* {
root /usr/share/nginx/mono/servicestack.net/;
index index.html index.htm index.aspx default.htm Default.htm;
fastcgi_index /default.htm;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /usr/share/servicestack.net$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
它将以/ServiceStack
或/RedisAdminUI
等开头的任何路由转发到FastCGI单服务器进程进行处理。以这种方式托管的一些示例应用程序:
对于那些感兴趣的人,可以下载
servicestack.net的完整Nginx + FastCGI配置文件。
问题内容: 我正在尝试运行从未知来源的C代码编译的程序。我想确保该程序无论如何都不会损害我的系统。例如,该程序可能在源代码中有类似东西,除非对代码进行彻底检查,否则无法检测到。 我想到了以下两种方法 在VMWare之类的VM中运行它 在Linux上构建Windows exe并在wine上运行 两者都不是很好的解决方案,我无法实现它们的自动化。并且在1的情况下可能会损坏VM。 任何帮助,将不胜感激。
我是顶点的新手。 我有接受HTTP请求的主垂直和四个其他垂直。 请告诉我垂直运行的最佳方式。 第一 第二 垂直运行的最佳方式是什么?
问题内容: 目前,我正在使用类似: 我对这种方法不是很满意,因为它会创建大量数组(可以包含一本书)。 有没有更好的解决方案来迭代a的行? 问题答案: 您可以使用: 并使用方法:
问题内容: 是否有适用于javascript的良好分析器?我知道firebug对分析代码提供了一些支持。但是我想确定更大范围的统计数据。想象一下,您正在构建大量的javascript代码,并且您想确定代码中实际上是什么瓶颈。首先,我想查看每个javascript函数和执行时间的配置文件统计信息。接下来将包括DOM函数。这与放慢速度的操作(如对渲染树的操作)相结合将是完美的。我认为,如果在我的代码,
问题内容: 什么是最好的实践方式得到一个唯一的机器ID 的架构? 除了地址,还有什么好办法吗? 问题答案: 根据您的内核,可以通过sysfs获得DMI信息。试试那些: 或使用工具
如果是,则返回“EC2”。 我可以用来判断脚本是否运行在Google Cloud Compute Engine实例上的等价物是什么?