C# - Strange Webserver Exception After Patching Web Farm?
Mar 28, 2011We recently patched our 12 servers, now have been getting the following exceptions across all servers when hitting URL similar to this.(URL has been modified)
[code]...
We recently patched our 12 servers, now have been getting the following exceptions across all servers when hitting URL similar to this.(URL has been modified)
[code]...
Web farm is used for multiple request and multiple user using switching among them.
Web Garden creates worker processes for every processor individually for one user.
Is it possible to use worker process as a switch and convert it into Web Farm that can allocate multiple processor on bases of algorithm?
Currently have an asp.net web site which is contained on 2 web servers which are load balanced i.e. web farm.
I would like to have some code which would allow me to call a particular server and execute a method on it. I WANT TO do this so that i can force all web servers to refresh their cache via a web page on the site.
Use Case is: Admin user logs into site and makes a change to a setting which is cached and then clicks "Refresh web server cache" button which then calls the update cache method on each of the servers. this is to prevent me from having to restart the app pool every time a cached setting is changed.
Given the idea of a web application (.NET 3.5+)
Browser
web app
the authentication using forms will result in a similar line of code
FormsAuthentication.SetAuthCookie(strUsrNm, True)
this is fine in a non load balanced server instance. how does authentication work in a load balanced stuation (no sticky session/infinity), and you cannot store the client IP, users password or login in the browser.
Browser
Load balancer
Web app (on server 1) || Web app (on server 2)
limitations: no database sessions, no AD server (for example: cater for external users)in short - in a load balanced situation how does the appliation know who the user is if they authenticated against the other server without re-authenticating.
difference between the Web Farm and Web Garden with some real time scenario?
View 2 RepliesMy web app must access database via web service, and can not access databse directly.
In case my web app is deployed into a web farm, to remember the user's preference, I think I can't use ASP.NET Profile directly.
We have a small web farm(2 servers) balanced by the built in network load balancer in Windows 2003. We have a few pages that use page caching. My question is: Is it possible that that a given user could cause a page to be cached and another user see that content? Here is the page directive for the page in question:
<%@ OutputCache Duration="1" NoStore="true" VaryByParam="none" %>
The reason the duration is set to "1" is to ensure that the page isn't cached any longer than 1 second because of transactions that actions on the page can trigger.
So I have an ASP.Net web forms application that is using URL Routing. It works great on the old single server shared web hosting account. It has been moved over to a new platform that appears to be a web farm. When a postback happens it now just refreshes the page and the event handler is not envoked. Another thing I've noticed is they put the application into a sub-folder on the account and are using ISAPI Rewrite to point the domain to the sub folder.how to get the postback to execute on this web farm?
View 1 RepliesI am working on a project where we want to provide link to download excel file.We are using NLB for load balancing,NLB cluster contains 3 machines.constraint is that excel file to be downloaded is available on a single machine.How to ensure that HTTP request underneath will served from the same mahine?
View 1 RepliesI'm considering using the HttpContext.Items HashTable to store reuseable user data (per user) instead of in the Session,
I'm hoping that this data is stored on the client and not on the server, but I did not see anywhere that this is the case...
Also, is there any drawback or loss of data that can happen when using web farm or clustered web servers ?
We have an array of about 12 servers serving a website. Over the past few hours, one single server has started throwing exceptions for WebResource.axd and ScriptResource.axd requests.
Exception
System.Web.HttpException - This is an invalid script resource request.
Stack Trace
at System.Web.Handlers.ScriptResourceHandler.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Broken server URL
/WebResource.axd?d=S6kjkBsrIKni9uO5HCkv0c8eYObzibWXn9R6A7Yr_Fy7CW4dRFZm1HfcnUTEZ8xBYZDM-5zeTVk1tTgC1hp7d5YYw3o1&t=634308186300177825
All other servers URL
/WebResource.axd?d=yj6PW1hbOvqhMkOh2gYGlw2&t=634207187366247462
I have checked the web.config, machine.config for every server and they're all identical. The only difference been able to find so far is that prior to the problem commencing, the servers were patched, after which, the problematic server looks to be using different version of the System.Web.dll to the others?
in my ASP.NET app happen asynchronously (i.e in background threads without any access to HttpContext). Let me take an example of one such action. The app would be deployed to a web farm soon.
The background threads would be processing files deposited to a network share location. So, when the app starts, I create a FilesystemWatcher to monitor activities on the desired network share folder.
As soon as a new file arrives, the code processes it and marks it as completed processing.
The problem is with multiple servers watching the same network share, the same file might get processed on different machines, meaning redundant results. On a single server, I use locking mechanisms to prevent race conditions.
Now how to prevent the same on a web farm?
I have about 50 web-sites, load-balanced across 5 web-servers. They all use Enterprise Library Caching, and access the same Caching database. The items in the Caching database are refreshed every few hours, using an ICacheItemRefreshAction implementation.I want to guarantee that only one web-site ever refreshes the cache, by putting the refresh code in a critical section. If the web-sites were running in a single app-pool on a single server, I could use a lock()If the web-sites were running in separate app-pools on a single server, I could use a Mutex.However, these will not ensure the critical section across multiple web-servers.Currently, I am creating a new key in the caching database to act as a mutex. This will generally work, but I can see a slim chance that 2 processes could enter the critical section.
public class TakeLongTimeToRefresh : ICacheItemRefreshAction
{
#region ICacheItemRefreshAction Members
[code]...
I just stumbled across the concept of a "Web Garden" in an IIS App Pool. That is, when more than one process serves the same webpage. From what I understand, this means ASP.NET InProc sessions have the same problems as a web farm.
My question is, assuming your production environment is a web farm but your development/test environment is not, would it be to set up a "Web Garden" in dev/test? I'm thinking this would help catch any multi-process/server issues early on, or at least confirm that everything works as expected.
I need to deploy my application under web-farm. I have a following code:
[Code]....
Will it work under web-farm or not?
What changes are required in web.config file to configure Web Farm ?
View 1 RepliesI trying to understand how a server farm would use MembershipProvider / RoleProvider. If I have a million users, I do not want to have multiple copies of the MembershipProvider / RoleProvider database. I would like to have one set of machines used for login but then redirect users to other machines in the server farm depending applications the users decide to use. However, once they are redirected to the new machine, I do not want the user to have to relogin. I want the credentials and role information to be available.
Does anyone know how MembershipProvider / RoleProvider is configured for this type architecture?
I want to configure ASP.NET Website Project using WCF Service[NetTcp] (both in c#) for web-farm (for website) and NLB Load balancing (for service). I would like to configure following options for same.
NetTcpBinding.maxConcurrentCalls, NetTcpBinding.ListenBacklog and NetTcpBinding.MaxConnections
Note: During single machine configuration when I changed value of NetTcpBinding.ListenBacklog and NetTcpBinding.MaxConnections in WCF Service project to more that 10, which is default value. I got exception. When I changed this value in Website it was working fine. Due to this I had to keep in default configuration. Not sure why this is the case. Following reference gives idea how to configure in given environment but does not tell how to go about it. Ref: [URL] Update: Let me simplify a bit. Lets say I have following configuration.
2 IIS servers in Web Farm.
3 WCF Service Servers (NetTcp) in NLB
Default config. for single instance.
NetTcpBinding.ListenBacklog: 10
NetTcpBinding.MaxConnections: 10
NetTcpBinding.maxConcurrentCalls: 16
Now what will be my configuration setting in this environment. Will it be same as above or will be as follows.
NetTcpBinding.ListenBacklog: 30 (10*3)
NetTcpBinding.MaxConnections: 30 (10*3)
NetTcpBinding.maxConcurrentCalls: 48 (16*3)
I'm working on an ASP.net web application. I'm getting errors on some of my pages where I get runtime JavaScript errors. I've narrowed the problem down to a single ASP Menu control on the master page. I created a blank page with just the ASP Menu control. The ASP Menu control is bound to Web.sitemap. The page intermittently gives runtime errors. However, if I refresh the page, the error may or may not appear on any given page load. Sometimes, it works; sometimes, the browser throws runtime errors when loading the page or when I mouse over the ASP Menu control.
When I catch the error in Visual Studio, the message is "microsoft jscript runtime error 'sys' is undefined". When I Google for this message, I find that it is usually associated with AJAX. However, the ONLY thing on the page is a single ASP control. There is absolutely no Javascript on the page except for what gets generated by the .net framework. What could be causing this problem? UPDATE I've found out that my environment actually has load balancing with a web farm of three servers servicing the URL. When I access the application on any one of the servers individually by IP address, everything works fine.
To clarify, I understand that when a user hits the public-facing URL, it resolves to x.x.x.1. x.x.x.1 is the address for a switch which routes the request to either x.x.x.2, x.x.x.3, or x.x.x.4. When I use the public-facing URL, I find that some of the axd file requests are intermittently rerouted to Error.aspx! WTF? I'm told that this is the result of a security feature that is meant to protect me from cross-site scripting and other assorted bad stuff. What can I do? Update After taking out some error page auto-redirects, I get a more meaningful error message: ASP.NET Ajax client-side framework failed to load.
I have an asp.net application running on a web farm that allows users to upload files and download them later via link to that file. Currently, I use Windows DFS to replicate the local IIS directory where the files are stored across the web farm servers. However, as this solution does not scale out, I want to implement a more scalable solution by partitioning the documents. Specifically, say I set up multiple file storage servers (Fs1, Fs2, Fs3, etc.) on the network. Further, let's say I change my upload page to save the uploaded file to one of the file storage servers on the local LAN (based on some logic). I assume so far I am safe with ASP.NET doing this much assuming I have the correct permission for the ASP.NET process ID. The question I have is withregards to download links. When a user gets served a download link to their document (e.g. http://www.testco.com/data/doc1.txt) is there a way for me to "intercept" that HTTP request and underneath the coversserve the doc1.txt from the file storage server (e.g. Fs2) it resides
View 5 RepliesI've got extremely strange behavior on one of my pages. I was able to get a work-around in place, but I'd like to get input on why this error is happening (and why my work-around actually works).
(Let me also say that this is in no way, shape, or form my code...so please don't bash me too hard)
When loading the page, we're getting
BC30456 'InitializeCulture' is not a
member of...
I worked through the tips here and nothing worked:
BC30456 Fixes
I was able to get the page back up and working by changing
<%@ Page Language="VB" AutoEventWireup="false"
CodeFile="newsproduct_rss.aspx.vb" Inherits="product_nrss" %>
to
<%@ Page Language="VB" AutoEventWireup="false"
CodeFile="newsproduct_rss.aspx.vb" Inherits="product_nrss" Debug="true" %>
i need to restore Database.mdf; I create a blank new database exactly the same name as the .mdf file. However, I could not restore the database.
The error message prompted was:
TITLE: Microsoft SQL Server Management Studio Express
An exception occurred while executing a Transact-SQL statement or batch.
(Microsoft.SqlServer.Express.ConnectionInfo)
ADDITIONAL INFORMATION:
Cannot open backup device 'C:inetpubwwwrootTCPSystemApp_DataDatabase.mdf'. Operating system error 32(error not found).
RESTORE HEADERONLY is terminating abnormally. (Microsoft SQL Server, Error: 3201)
click: [URL]
BUTTONS:
OK
I am working on a 3-tier asp.net application. Currently I'm stuck up in a situation where I need to handle a specific type of exception (User Defined) in DAL and Show alert to the user if that exception occurs in DAL.
I tried following things:
1) I raised that exception from the DAL and catch it in BLL and throw a new BLL exception to for that DAL exception and finally catch it in the UI layer to show the alert to the user. I've successfully implement this in my project. But there are some issues in this approach. First of all I feel this is not right way to do this as it may lead to performance related issues. Secondly, the application contains more than 500 pages and classes. so I need to attach additional catch block in every method to catch the BLL exception. which is the last option i'd like to take.
2) in second approach I logged the the DAL exception into a text file. but problem in this approach is that how could the UI layer know that exception has occurred and show the alert to the user. Is there any event in asp.net where i could handle all this activities?
my question is what is the best approach to handle this type of situation? Will Exception handling block help me in this?
I've tried reading many articles on this but i couldn't get an answer for my question? I might not be using right keywords for my search.
In ASP.NET,How can i know the Specific details about an exception (like What kind of Exception it is (FileNotFound /Arithmentc etc..) )from a General Exception class object.
View 2 Replies Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.
Time to tiime a get that kind of error and i dont really have clue.