我在已分配5个IP的服务器上运行此应用程序.我使用HttpWebRequest从网站获取一些数据.但是当我建立连接时,我能够指定连接的5个IP中的哪一个.HttpWebRequest是否支持此功能?如果不能,我可以从中继承一个类来改变它的行为吗?我在这里需要这样的想法.
我的代码现在是这样的:
System.Net.WebRequest request = System.Net.WebRequest.Create(link);
((HttpWebRequest)request).Referer = "http://application.com";
using (System.Net.WebResponse response = request.GetResponse())
{
StreamReader sr = new StreamReader(response.GetResponseStream());
return sr.ReadToEnd();
}
Run Code Online (Sandbox Code Playgroud) 我正在运行Windows 2008服务器(具有1GB RAM的VPS),并安装了SQL Server Express和IIS 7。在该网站上,我托管了一个NopCommerce 1.7网站,其中包含约26 000个产品的数据库。
现在,我是该网站的唯一用户(该网站正在开发中),并且从中获得的效果也很差。为了更具体,每次我发出请求时,工作进程都会在几秒钟内达到90-100%的CPU使用率。是我还是一个NopCommerce网站的用户很多?有什么想法为什么会发生这种情况,以及我可以做些什么来纠正或进一步调查?
PS:工作进程使用100MB-400MB的内存(私有工作集),而带有此数据库的SQL Server大约为160MB。除了明显的建议之外,您还有其他建议要获得更多的RAM吗?我打算再增加一个GB,但是我担心这不能解决cpu的使用问题。
我有以下查询开头:
var query = from p in db.Products
from pc in p.NpProductCategories
where pc.CategoryId == categoryId
select p;
Run Code Online (Sandbox Code Playgroud)
我正在对它应用更多的过滤,最后我想对结果进行排序:
if (orderBy == ProductSortingEnum.Name)
query = query.OrderBy(x => x.Name);
else
query = query.OrderBy(............);
Run Code Online (Sandbox Code Playgroud)
我的大问题(来自不知道linq太好了)就是这里的ELSE.如何按不在当前结果集中的列对结果进行排序?我想以某种方式链接到orderby中的另一个linq查询.我试图实现的排序是使用ProductId链接到NpProductVariants查询以匹配NpProductVariant和Products,并按NpProductVariant的价格排序