![]() ![]() When the heartbeat monitor component is remote from the components that it's monitoring, it has no way of knowing what's really wrong. If you look back to the list of possible failures in a distributed application presented at the beginning of this chapter, you can see the problem with the debugging scenario that I just discussed. You never do establish what went wrong, or why. Sure enough, when you try to log into server XYZ again, the login works perfectly and the heartbeat status page is now showing a smiley face again for component ABC. ![]() After another 10 minutes, they phone you back to say that the network switches appear to be functioning normally. Having established that you're on a different network segment than the server support team, you ring the network support team to report a possible network switch issue. They take 5 more minutes to respond, but then they tell you that they can log into server XYZ without a problem. So you phone the server support team to report a nonfunctioning server. You use Terminal Services to log into machine XYZ, but after 5 minutes you're still waiting for the login to happen because the server doesn't seem to be responding. This is an application-critical component, so you need to respond fairly fast. ![]() So now a member of your application support team phones to tell you that component ABC on server XYZ has stopped broadcasting a heartbeat. Each of the heartbeat monitors has a list of components that it's supposed to watch, and it displays a status page with a "smiley" face to represent a healthy component (i.e., a component transmitting a regular heartbeat) and a "frowny" face for any component that has missed more than one heartbeat. One of the most common ways to monitor individual components running as part of a distributed application is to use "heartbeats." The idea behind this is that each component transmits a regular heartbeat across the local network to an associated heartbeat monitor running on another machine. In this section I investigate why this specific monitoring pattern is particularly effective. In the previous section I discussed the HeartbeatMonitor application as a design pattern for monitoring distributed applications. ![]()
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |