mirror of
https://github.com/aspnet/JavaScriptServices.git
synced 2025-12-22 17:47:53 +00:00
Define DefaultNodeHostingModel in one common place so it can be changed easily
This commit is contained in:
@@ -8,11 +8,11 @@ namespace ConsoleApplication
|
|||||||
{
|
{
|
||||||
// This project is a micro-benchmark for .NET->Node RPC via NodeServices. It doesn't reflect
|
// This project is a micro-benchmark for .NET->Node RPC via NodeServices. It doesn't reflect
|
||||||
// real-world usage patterns (you're not likely to make hundreds of sequential calls like this),
|
// real-world usage patterns (you're not likely to make hundreds of sequential calls like this),
|
||||||
// but is a starting point for comparing the overhead of different hosting models and transports.
|
// but is a starting point for comparing the overhead of different hosting models and transports.
|
||||||
public class Program
|
public class Program
|
||||||
{
|
{
|
||||||
public static void Main(string[] args) {
|
public static void Main(string[] args) {
|
||||||
using (var nodeServices = CreateNodeServices(NodeHostingModel.Http)) {
|
using (var nodeServices = CreateNodeServices(Configuration.DefaultNodeHostingModel)) {
|
||||||
MeasureLatency(nodeServices).Wait();
|
MeasureLatency(nodeServices).Wait();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -21,7 +21,7 @@ namespace ConsoleApplication
|
|||||||
// Ensure the connection is open, so we can measure per-request timings below
|
// Ensure the connection is open, so we can measure per-request timings below
|
||||||
var response = await nodeServices.Invoke<string>("latencyTest", "C#");
|
var response = await nodeServices.Invoke<string>("latencyTest", "C#");
|
||||||
Console.WriteLine(response);
|
Console.WriteLine(response);
|
||||||
|
|
||||||
// Now perform a series of requests, capturing the time taken
|
// Now perform a series of requests, capturing the time taken
|
||||||
const int requestCount = 100;
|
const int requestCount = 100;
|
||||||
var watch = Stopwatch.StartNew();
|
var watch = Stopwatch.StartNew();
|
||||||
|
|||||||
@@ -6,11 +6,12 @@ namespace Microsoft.AspNetCore.NodeServices
|
|||||||
{
|
{
|
||||||
public static class Configuration
|
public static class Configuration
|
||||||
{
|
{
|
||||||
private static readonly string[] DefaultWatchFileExtensions = {".js", ".jsx", ".ts", ".tsx", ".json", ".html"};
|
public const NodeHostingModel DefaultNodeHostingModel = NodeHostingModel.Http;
|
||||||
|
|
||||||
|
private static readonly string[] DefaultWatchFileExtensions = {".js", ".jsx", ".ts", ".tsx", ".json", ".html"};
|
||||||
private static readonly NodeServicesOptions DefaultOptions = new NodeServicesOptions
|
private static readonly NodeServicesOptions DefaultOptions = new NodeServicesOptions
|
||||||
{
|
{
|
||||||
HostingModel = NodeHostingModel.Http,
|
HostingModel = DefaultNodeHostingModel,
|
||||||
WatchFileExtensions = DefaultWatchFileExtensions
|
WatchFileExtensions = DefaultWatchFileExtensions
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ namespace Microsoft.AspNetCore.NodeServices
|
|||||||
{
|
{
|
||||||
public NodeServicesOptions()
|
public NodeServicesOptions()
|
||||||
{
|
{
|
||||||
HostingModel = NodeHostingModel.Http;
|
HostingModel = Configuration.DefaultNodeHostingModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
public NodeHostingModel HostingModel { get; set; }
|
public NodeHostingModel HostingModel { get; set; }
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ namespace Microsoft.AspNetCore.SpaServices.Prerendering
|
|||||||
{
|
{
|
||||||
_nodeServices = _fallbackNodeServices = Configuration.CreateNodeServices(new NodeServicesOptions
|
_nodeServices = _fallbackNodeServices = Configuration.CreateNodeServices(new NodeServicesOptions
|
||||||
{
|
{
|
||||||
HostingModel = NodeHostingModel.Http,
|
HostingModel = Configuration.DefaultNodeHostingModel,
|
||||||
ProjectPath = _applicationBasePath
|
ProjectPath = _applicationBasePath
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ namespace Microsoft.AspNetCore.Builder
|
|||||||
var hostEnv = (IHostingEnvironment)appBuilder.ApplicationServices.GetService(typeof(IHostingEnvironment));
|
var hostEnv = (IHostingEnvironment)appBuilder.ApplicationServices.GetService(typeof(IHostingEnvironment));
|
||||||
var nodeServices = Configuration.CreateNodeServices(new NodeServicesOptions
|
var nodeServices = Configuration.CreateNodeServices(new NodeServicesOptions
|
||||||
{
|
{
|
||||||
HostingModel = NodeHostingModel.Http,
|
HostingModel = Configuration.DefaultNodeHostingModel,
|
||||||
ProjectPath = hostEnv.ContentRootPath,
|
ProjectPath = hostEnv.ContentRootPath,
|
||||||
WatchFileExtensions = new string[] { } // Don't watch anything
|
WatchFileExtensions = new string[] { } // Don't watch anything
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user