text:
This chapter describes the OWLCS deployment topologies in the following sections:
Section 16.3, "Oracle WebLogic Communication Services Enterprise Deployment Topology"
The following terms are used in this chapter:
Administration Server--a special server instance within a domain to configure and manage all resources in the domain. There is just one Administration Server in a domain.
Domain--a logically related group of server resources
High Availability (HA)--refers to a system or component that is continuously operational for a desirable long length of time
JVM--Java Virtual Machine
Managed Server--a server instance within a domain where resources are deployed. There can be one or more managed servers within a domain.
Node--a physical machine
OWLCS Client--a client application that can connect to OWLCS server and use it's features -Presence, Instant Messaging (IM), VoIP, Presence Web Service, and Messaging Web Service. For example: Oracle Communicator.
OWLCS supports single-node and multi-node deployment topologies:
All-In-One Managed Server--All OWLCS components are deployed on a Managed Server within a domain on a physical machine. An Administration Server installed on the same domain is used to configure and manage OWLCS components.
Figure 16-1 All-in-One Managed Server
See Section 16.2.1, "Single-node Topologies" for more information.
All-In-One Administration Server--All OWLCS components are deployed on an Administration Server within a domain on a physical machine. There are no managed servers. Configuration and management of OWLCS components is done using the same Administration Server.
Figure 16-2 All-in-One Administration Server
See Section 16.2.1, "Single-node Topologies" for more information.
Enterprise Deployment--This is the minimal recommended HA topology for Enterprise Deployment for OWLCS. OWLCS components are separated as SIP Infrastructure, Services and Presence components. Each group of components is deployed within its own domain on two different machines.
Figure 16-3 Enterprise Deployment
See Section 16.3.1, "Introduction to OWLCS Enterprise Deployment Topology" for more information.
Both the All-In-One Administration Server and All-In-One Managed Server Topologies are intended to provide an out-of-box experience in which Presence, Instant Messaging, Voice-Over-IP, Third Party Calling, and Presence and MessagingWeb Services work with an OWLCS client. These topologies are recommended for use in a test and evaluation environment, not in a production environment. They do not include High-Availability support.
In an All-In-One Administration Server topology, the one and the only server (the Administration Server) runs in a single JVM. In an All-In-One Managed Server topology, the Managed Server runs in one JVM and the Administration Server runs in a separate JVM.
This section describes the Oracle WebLogic Communication Services (OWLCS) high-availability topology: Enterprise Deployment. The following sections are included:
Section 16.3.1, "Introduction to OWLCS Enterprise Deployment Topology"
OWLCS supports a multi-node deployment topology. A SIP Container cluster is defined as a set of SIP Container instances that share state related to the applications. A cluster consists of multiple nodes, with each node running one instance of OWLCS.
A highly available OWLCS cluster provides the following:
Replication of objects and values contained in a SIP Application Session
Database backed location service data
Load balancing of incoming requests across OWLCS SIP nodes
Overload protection protects the server from malfunctioning in the event of overload and rejects traffic which cannot be handled properly.
Transparent failover across applications within the cluster. If an instance of an application fails, it becomes unresponsive and the session can fail over to another instance of the application, on another node in a cluster.
Note:For more information on OWLCS as a scalable Presence deployment, see Appendix G, "Deploying a Scalable Presence Deployment"
Note:For information on installing and configuring OWLCS Enterprise Deployment topology, see Oracle WebLogic Communication Services Installation Guide.
Oracle WebLogic Communication Services start scripts use default values for many JVM parameters that affect performance. For example, JVM garbage collection and heap size parameters may be omitted, or may use values that are acceptable only for evaluation or development purposes. In a production system, you must rigorously profile your applications with different heap size and garbage collection settings in order to realize adequate performance. See Oracle WebLogic Communication Services Administrator's Guide for suggestions about maximizing JVM performance in a production domain.
Because a typical Oracle WebLogic Communication Services domain contains numerous engine and servers, with dependencies between the different server types, you should generally follow this sequence when starting up a domain:
Start the Administration Server for the domain. Start the Administration Server in order to provide the initial configuration. The Administration Server can also be used to monitor the startup/shutdown status of each Managed Server. You generally start the Administration Server by using either the
startWebLogic.sh/cmd script installed with the Configuration Wizard, or a custom startup script.
Start Managed Servers. Next you can start managed servers using the
startManagedWebLogic.sh/cmd script or a custom startup script.
Request Flow is described in JSR 289. This specification is an enhancement to the SIPServlet specification.
For details on JSR 289, see: http://www.oracle.com/technology/tech/java/standards/jsr289/index.html
The default HTTP network configuration for each Oracle WebLogic Communication Services instance is determined from the Listen Address and Listen Port setting for each server. However, Oracle WebLogic Communication Services does not support the SIP protocol over HTTP. The SIP protocol is supported over the UDP and TCP transport protocols. SIPS is also supported using the TLS transport protocol.
To enable UDP, TCP, or TLS transports, you configure one or more network channels for an Oracle WebLogic Communication Services instance. A network channel is a configurable WebLogic Server resource that defines the attributes of a specific network connection to the server instance. Basic channel attributes include:
Protocols supported by the connection,
Listen address (DNS name or IP address) of the connection,
Port number used by the connection,
(optional) Port number used by outgoing UDP packets,
Public listen address (load balancer address) to embed in SIP headers when the channel is used for an outbound connection.
You can assign multiple channels to a single Oracle WebLogic Communication Services instance to support multiple protocols or to utilize multiple interfaces available with multi-homed server hardware. You cannot assign the same channel to multiple server instances.
When you configure a new network channel for the SIP protocol, both the UDP and TCP transport protocols are enabled on the specified port. You cannot create a SIP channel that supports only UDP transport or only TCP transport. When you configure a network channel for the SIPS protocol, the server uses the TLS transport protocol for the connection.
As you configure a new SIP Server domain, you will generally create multiple SIP channels for communication to each engine tier server in your system. Engine tier servers can communicate to SIP state tier replicas using the configured Listen Address attributes for the replicas. Note, however, that replicas must use unique Listen Addresses in order to communicate with one another.
Installation, configuration and deployment create the following artifacts for OWLCS.
.ear files for deploying your applications are found in your middleware home directory (for example):
$MW_HOME/as11gr1wlcs1/communications/applications. They are typically easily-identified by their names (for example:
sdpmessagingdriver-smpp.ear for deploying SMPP driver).
Configuring components is accomplished through various .xml files. They can be found in your middleware home directory (for example):
$DOMAIN_HOME/config/communications. They are typically easily-identified by their names (for example:
usermessagingdriver-smpp_Plan.xml for configuring SMPP).
Components of a highly available OWLCS topology are detailed below. Figure 16-4 shows details of the OWLCS hosts that support the topology.
Figure 16-4 Host details for OWLCS
Note:For more information on configuring these components, see Oracle Fusion Middleware Enterprise Deployment Guide for Oracle WebCenter.
Figure 16-5 OWLCS High Availability detail
OWLCS extends the core WebLogic Server platform with a SIP Container compliant with JSR 289. This enables the development of J2EE applications that processes SIP in addition to HTTP for any advanced communications application. The platform enables the development of complementary communications services that integrate with SIP-based IP-PBXs as well as other SIP elements such as standard SIP clients. For more information on SIP Container, see Oracle WebLogic Communication Services Administrator's Guide.
Two or more SIP Containers are linked to one another through OWLCS SIP state replication. The OWLCS SIP state on each computer is replicated to other nodes in the SIP State Tier so that if one SIP Container node fails, another container node takes over, using the replicated state of the failed node.
A third-party load balancer balances the load of incoming traffic. It also redirects traffic from failed nodes to operational ones. Your Load Balancer must be capable of routing both HTTP and SIP traffic, and must be configured to do so. For more information about Load Balancers, see Oracle Fusion Middleware Enterprise Deployment Guide for Oracle WebCenter.
The OWLCS Proxy Registrar combines the functionality of a SIP Proxy Server and Registrar. Its main tasks include registering subscribers, looking up subscriber locations, and proxying requests onward. The Proxy Registrar stores user location and registration data on the Oracle database. This is an optional component. For more information on Proxy Registrar, see Section 14.1, "Proxy Registrar".
OWLCS includes a Presence Service that acts as the aggregator of presence information and provides a subscribe/notify for applications and end-users to consume presence information. An application can integrate either using web services or by using a compliant SIP-based end-user client.
OWLCS enables Web Service clients to access presence services through its support of the Parlay X Presence Web Service as defined in Open Service Access, Parlay X Web Services, Part 14, Presence ETSI ES 202 391-14. A Parlay X Web Service enables an HTTP Web Service client to access such presence services as publishing and subscribing to presence information. The Parlay X Presence Web Service does not require developers to be familiar with the SIP protocol to build such a Web-based client; instead, Parlay X enables Web developers to build this client using their knowledge of Web Services.
The Third Party Call Parlay X 2.1 communication services implement the Parlay X 2.1 Third Party Call interface, (Standards reference: ETSI ES 202 391-2 V1.2.1 (2006-12), Open Service Access (OSA); Parlay X Web Services; Part 2: Third Party Call (Parlay X 2). For more information on Third-Party Call Control Web Services, see Oracle WebLogic Communication Services Developer's Guide.
The Aggregation Proxy authorizes web service calls and authenticates XCAP traffic. The Aggregation Proxy then proxies this traffic to the Parlay X Web Service and XDMS. This is an optional component.
The Authentication Proxy is a SIP application that upon successful authentication populates a P-Asserted-Identity header into the request. The authentication itself is not performed by the Authentication Proxy application. SIP digest-based authentication is configured in a standard way, as for all SIP applications. The P-Asserted-Identity header value will be the externally stored (for example, in Oracle Identity Management or Database) preferred SIP- and/or TEL-URL for the authenticated user.
OWLCS includes an Oracle-proprietary file transfer service enabling users to transfer files to one-another.
Messaging Services implements support for a subset of the operations in the SendMessage, ReceiveMessage, and MessageNotificationManager interfaces, as they are defined in ETSI ES 202 391-5 V1.2.1 (2006-12), Open Service Access (OSA), Parlay X Web Services Part 5: Multimedia Messaging (Parlay X 2).
The OWLCS STUN Service implements STUN (Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs)). For more information on STUN Service, see Section 14.2, "STUN Service".
DAR Configuration. Application Router is a SIP application that routes incoming SIP requests to the correct application. The Application Router routes requests by placing route headers in each SIP request it processes. A number of route headers can be placed in a request, each representing a different destination URI. The SIP request is either sent through the chain of destination URIs, or proxied to a new URI upon arriving at its first destination.
Oracle Communicator is a client communication application that enables users to keep in touch with others in their organization. You can see your Contacts' presence (that is, their availability), and communicate with them by sending instant messages and sharing files.
The Oracle WebLogic Communication Services SIP state tier node manages the application call state for concurrent SIP calls. The SIP state tier may manage a single copy of the call state or multiple copies across the cluster as needed to ensure that call state data is not lost if a server machine fails or network connections are interrupted.
The User Dispatcher enables the Presence and XDMS applications to scale. The User Dispatcher is a proxy that dispatches SIP and XCAP (over HTTP) requests to their appropriate destinations on a consistent basis.
Because the Presence application maintains the states for all users in a deployment, User Dispatcher enables scaling (distribution) of the Presence application. The User Dispatcher supports request dispatching to the Presence Server and XDMS sub-applications, which use the SIP and XCAP (over HTTP) protocols.
Oracle RDBMS should be installed and operational in an Oracle RAC environment. The supported versions are 10.2.0.4 and 22.214.171.124. Refer to Oracle Clusterware Installation Guide 11g Release 1 (11.1.), Oracle Real Application Clusters: For 11g Release 1 (11.1) and Oracle Real Application Clusters Installation Guide 11g Release 1.
The Oracle WebLogic Communication Services SIP state tier is a cluster of server instances that manages the application call state for concurrent SIP calls. The SIP state tier may manage a single copy of the call state or multiple copies as needed to ensure that call state data is not lost if a server machine fails or network connections are interrupted.
The SIP state tier cluster is arranged into one or more partitions. A partition consists of one or more SIP state tier server instances that manage the same portion of concurrent call state data. In a single-server Oracle WebLogic Communication Services installation, or in a two-server installation where one server resides in the engine tier and one resides in the SIP state tier, all call state data is maintained in a single partition. Multiple partitions are required when the size of the concurrent call state exceeds the maximum size that can be managed by a single server instance. When more than one partition is used, the concurrent call state is split among the partitions, and each partition manages an separate portion of the data. For example, with a two-partition SIP state tier, one partition manages the call state for half of the concurrent calls (for example, calls A through M) while the second partition manages the remaining calls (N through Z).
In most cases, the maximum call state size that can be managed by an individual server is limited by the heap size in the Java Virtual Machine.
Additional servers can be added within the same partition to manage copies of the call state data. When multiple servers are members of the same partition, each server manages a copy of the same portion of the call data, referred to as a replica of the call state. If a server in a partition fails or cannot be contacted due to a network failure, another replica in the partition supplies the call state data to the engine tier. Oracle recommends configuring two servers in each partition for production installations, to guard against machine or network failures. A partition can have a maximum of three replicas for providing additional redundancy.
The sections that follow describe some common Oracle WebLogic Communication Services installations that utilize a separate SIP state tier.
A single-partition, two server SIP state tier represents the simplest state tier configuration.
For example, the
datatier.xml configuration file shown in Example 16-1 creates a two-replica configuration.
Multiple partitions can be created by defining multiple
partition entries in
datatier.xml, as shown in Example 16-2.
Example 16-2 Two-Partition SIP State Tier Configuration
<?xml version="1.0" encoding="UTF-8"?> <data-tier xmlns="http:...."> <partition> <name>Partition0</name> <server-name>DataNode0-0</server-name> </partition> <partition> <name>Partition1</name> <server-name>DataNode1-0</server-name> </partition> </data-tier>
Replicas of the call state can be added by defining multiple SIP state tier servers in each partition. Example 16-3 shows the
datatier.xml configuration file used to define a system having two partitions with two servers (replicas) in each partition.
Example 16-3 SIP State Tier Configuration for Small Deployment
<?xml version="1.0" encoding="UTF-8"?> <data-tier xmlns="http:...."> <partition> <name>Partition0</name> <server-name>DataNode0-0</server-name> <server-name>DataNode0-1</server-name> </partition> <partition> <name>Partition1</name> <server-name>DataNode1-0</server-name> <server-name>DataNode1-1</server-name> </partition> </data-tier>
Oracle WebLogic Communication Services enables you to store long-lived call state data in an Oracle RDBMS in order to conserve RAM. When you enable RDBMS persistence, by default the SIP state tier persists a call state's data to the RDBMS after the call dialog has been established, and at subsequent dialog boundaries, retrieving or deleting the persisted call state data as necessary to modify or remove the call state.
Oracle also provides an API for application designers to provide hints as to when the SIP state tier should persist call state data. These hints can be used to persist call state data to the RDBMS more frequently, or to disable persistence for certain calls.
Oracle WebLogic Communication Services can use the RDBMS to supplement the SIP state tier's in-memory replication functionality. To improve latency performance when using an RDBMS, the SIP state tier maintains SIP timers in memory, along with call states being actively modified (for example, in response to a new call being set up). Call states are automatically persisted only after a dialog has been established and a call is in progress, at subsequent dialog boundaries, or in response to persistence hints added by the application developer.
When used in conjunction with an RDBMS, the SIP state tier (the term state tier is used interchangeably with data tier in this document) selects one replica server instance to process all call state writes (or deletes) to the database. Any available replica can be used to retrieve call states from the persistent store as necessary for subsequent reads.
RDBMS call state storage can be used in combination with an engine tier cache, if your domain uses a SIP-aware load balancer to manage connections to the engine tier.
Geographic Redundancy ensures uninterrupted transactions and communications for providers, using geographically-separated SIP server deployments.
A primary site can process various SIP transactions and communications and upon determining a transaction boundary, replicate the state data associated with the transaction being processed, to a secondary site. Upon failure of the primary site, calls are routed from the failed primary site to a secondary site for processing. Similarly, upon recovery, the calls are re-routed back to the primary site. See Oracle WebLogic Communication Services Administrator's Guide for more information
In the preceding figure, Geo-Redundancy is portrayed. The process proceeds in this manner:
Call is initiated on a primary Cluster site, call setup and processing occurs normally.
Call is replicated as usual to the site's SIP State Tier, and becomes eligible for replication to a secondary site.
A single replica in the SIP State Tier then places the call state data to be replicated on a JMS queue configured on a replica site.
Call is transmitted to one of the available engines using JMS over WAN.
Engines at the secondary site monitor their local queue for new messages. Upon receiving a message, an Engine in the secondary site persists the call state data and assigns it the site ID value of the primary site.
Oracle's High Availability solutions include failover support for all levels of your system. During failover, the functions of a component that is malfunctioning or non-operational are addressed by a standby or replacement component. This is done without manual intervention, and in most cases end users will not be able to detect that the system is taking failover actions. There are two main types of failover: Session Failover and Service Failover.
Session Failover occurs when the session, connection, or power are interrupted. During Session Failover, ongoing calls or requests are handled by backup nodes, and users do not detect that the condition arose. The SIP Container provides services to upper-levels to help recover from session failure. The SIP protocol rebuilds state at certain pre-defined times (for example, every hour). This is designed to protect unreliable networks.
When Service Failover occurs (such as when a node in a cluster of nodes goes down), the load is handled by other nodes in the cluster. If an individual request is being processed at the time, it will fail, but subsequent requests will be picked up by the functioning nodes.
In its High Availability configuration, services running in the wlcs-services domain such as Proxy Registrar, Third-Party Call Control, and other distributable applications support Session Failover, while services running in the wlcs_presence domain such as Presence and other non-distributable applications support Service Failover.
OWLCS Presence, when multiple nodes are used in a High Availability deployment, distributes its services across nodes (servers). When a request for the Presence information for an entity (E1) is made, the request goes to node 1 (N1). If N1 goes down during the request, the user will see a failure. Upon resubmitting the request, it (the request) will be handled by node 2 (N2). No failure occurs during the re-request, or during any other requests that are made after the initial failure.
Fail-over is a technique that can be used by the User Dispatcher to assert a higher level of availability of the Presence Server. Since the Presence server does not replicate any state (such as established subscriptions) the state has to be recreated by the clients on the new server node by setting up new subscriptions. Also, since a subscription is a SIP dialog and the User Dispatcher is not record routing, it cannot fail-over a subscription from one node to another. All subsequent requests will follow the route set and end up on the "old" node.
This is not a problem when failing over from a "failing" server since that node is not processing the traffic anyway and any request within a dialog will eventually get a fail response or timeout and the dialog will be terminated. However, when migrating back a user from the backup node to the original node (when it has been repaired), which has to be done to maintain an even distribution after the failure, this is a problem that can lead to broken presence functionality. The only way to migrate a subscription from one running server to another is to either restart the client or the server.
However, the server that holds the subscription can actively terminate it by sending out a terminating NOTIFY and discarding the subscription state. This will force the client to issue a new initial SUBSCRIBE to establish a new dialog. For a subscription to migrate from one live node to another the User Dispatcher must fail-over the traffic (which is only affecting initial requests) and instruct the current server to terminate the subscriptions.
Presentities must be migrated when the set of nodes have changed. This involves having the Presence application to terminate some or all subscriptions to make the migration happen.
The most basic approach is to contact the Presence application on all nodes to terminate all its subscriptions. The problem with this is that a burst of traffic will be generated although spread out over a period of time. This time period results in incorrect presence states since the longer the termination period is the longer it will take until all users get a correct presence state.
To optimize this you could terminate only those subscriptions that actually need to be terminated (the ones that has been migrated). The problem is that the User Dispatcher does not know which users these are (since it does stateless distribution based on an algorithm) and the Presence application does not either (since it only knows what users it has). However, if the Presence application could iterate over all its subscriptions and for each of them ask the User Dispatcher if this user would go to this Presence node, then the Presence server could terminate only those that will not come back to itself. This may be a heavy operation, but under the constraint that each Presence server is collocated with a User Dispatcher each such callback would be within the same JVM.
Another solution is to have the Presence servers guarantee that a user only exists on one Presence node at any given time. This can be done by having the Presence application broadcast a message to all its neighbors when it receives a PUBLISH or SUBSCRIBE for a new presentity (a presentity that it does not already have a state for). If any other Presence node that receives this broadcast message already has active subscriptions for this presentity, that server must terminate that subscription so that the client can establish a new subscription with the new server.
With this functionality in the Presence application, the User Dispatcher would not have to perform additional steps to migrate a user from one live node to another.
Another approach is to have a standby pool of servers that are idling ready to take over traffic from a failing node. When an active node fails the User Dispatcher will redistribute all its traffic to one server from the standby pool. This node will now become active and when the failing node eventually is repaired it will be added to the standby pool. This will eliminate the need for migrating users "back" from a live node when a failing node resumes.
This approach requires more hardware and the utilization of hardware resources will not be optimal.
There are several types of failures that can occur in a Presence server and different types of failures may require different actions from the User Dispatcher.
If the failure is fatal all state information is lost and established sessions will fail. However, depending on the failure response, subscriptions (presence subscribe sessions) can survive using a new SIP dialog. If the response code is a 481 the presence client must according to RFC 3265 establish a new SUBSCRIBE dialog and this is not considered to be a failure from a presence perspective. All other failure responses may (depending on the client implementation) be handled as an error by the client and should therefore be considered a failure.
After a fatal failure the server does not have any dialog states from the time before the failure, which means that all subsequent requests that arrive at this point will receive a 481 response back. During the failure period all transactions (both initial and subsequent) will be terminated with a non-481 error code, most likely a 500 or an internal 503 or 408 (depending on if there is a proxy in the route path or not, and what the nature of the failure is).
Typically a fatal failure will result in the server process or the entire machine being restarted.
A temporary failure is one where none or little data is lost so that after the failure session states will remain in the server. This means that a subsequent request that arrives after the server has recovered from the failure will be processed with the same result, as it would have been before the failure.
All requests that arrive during the failure period will be responded with a non-481 failure response, such as 503.
In general a temporary failure has a shorter duration, and a typical example is an overload situation in which case the server will respond 503 on some or all requests.
The User Dispatcher can take several actions when it has detected a failure in a Presence server node. The goal with the action is to minimize the impact of the failure in terms of number of failed subscriptions and publications and the time it takes to recover. In addition to this the User Dispatcher needs to keep the distribution as even as possible over the active servers.
The fail-over action to be used in this version of the User Dispatcher is to disable the node in the pool. This approach is better than removing the node because when the ResizableBucketServerPool is used since the add and remove operations are not deterministic. This means that the result of adding a node depends on the sequence of earlier add and delete operations, whether as the disable operation will always result in the same change in distribution given the set of active and disabled nodes.
An activated overload policy can indicate several types of failures but its main purpose is to protect from a traffic load that is to big for the system to handle. If such a situation is detected as a failure, fail-over actions can lead to bringing down the whole cluster since if the distribution of traffic is fairly even all the nodes will be in or near an overloaded situation. If the dispatchers remove one node from the cluster and redistribute that node's traffic over the remaining nodes they will certainly enter an overload situation that causes a chain reaction.
Since it is difficult to distinguish this overload situation from a software failure that triggers the overload policy to be activated even though the system is not under load, it might still be better to take the fail-over action unless Overload Policy is disabled. If the system is really in an overload situation it is probably under dimensioned and then the fail-over should be disabled.
The User Dispatcher will not fail over when it has detected a 503 response (which indicates overload policy activated). However, if a server is in the highest overload policy state where it drops messages instead of responding 503 the User Dispatcher monitor will receive an internal 408, which can never be distinguished from a dead server and failover will occur.
Depending on the failure detection mechanism there may be a need to synchronize the fail-over events (or the resulting state) between the different dispatcher instances. This is required if the detection mechanism is not guaranteed to be consistent across the cluster, such as an Error Response. For instance one server node sends a 503 response on one request but after that works just fine (this can be due to a glitch in the overload policy). If there was only one 503 sent then only one dispatcher instance will receive it and if that event triggers a fail-over then that dispatcher instance will be out of sync with the rest of the cluster. Further, even if the grace period is implemented so that it takes several 503 responses over a time period to trigger the fail-over there is still a risk for a race condition if the failure duration is the same as the grace period.
The following methods can be used to assure that the state after fail-over is synchronized across the cluster of dispatcher instances:
In this approach each dispatcher instance have to send a notification to all other instances (typically using JGroups or some other multicast technique) when it has decided to take a fail-over action and change the set of servers. This method can still lead to race conditions since two instances may fail-over and send a notification at the same time for two different server nodes.
Since the Presence application can generate an exponentially increasing load due to the fact that every user subscribes to multiple (potentially a growing number of) other users, there is a need for a way to dynamically expand the cluster without too much disturbance. Compared to for instance a classic telecom application where it may be acceptable to bring all servers down for an upgrade of the cluster during low traffic hours, a Presence system may have higher availability requirements than that.
Expanding the cluster may involve both adding Presence nodes and User Dispatcher nodes.
When a new Presence server is added to a cluster, some presentites must be migrated from old nodes to the new node in order to keep a fairly even distribution. This migration needs to be minimized to avoid a too big flood of traffic on the system upon changing the cluster.
When a new User Dispatcher is added to the cluster that User Dispatcher node must achieve the same dispatching state as the other dispatcher nodes. This may depending on the pool implementation require a state being synchronized with the other dispatcher nodes (for instance when using the bucket pool implementation with persistence).
Note:Each User Dispatcher within the Presence Cluster must be configured to include all the Presence Server instances in the cluster in its list of presence servers to which they will dispatch.
Depending on the algorithm used to find the server node for a given presentity, different number of presentity will be "migrated" to another node when a new node is added or removed. An optimal Pool implementation will minimize this number.
When the node set has been updated some Presentites may have to be migrated to maintain an even distribution. The different ways to do this are described in "Presentity Migration".
These use cases illustrates how the User Dispatcher reacts in different failure situations in one or several Presence server nodes.
The cluster consists of four Presence servers, each node consisting of one OWLCS instance with a User Dispatcher and a Presence application deployed. 100,000 users are distributed over the four servers evenly (25,000 on each node). Due to an abnormally long GC pause on one of the servers, the processing of messages is blocked by the Garbage Collector, which leads to the SIP queues getting filled up and the overload policy is activated. 60s later the processing resumes and the server continues to process messages.
The User Dispatcher will not do any fail-over but keep sending traffic to the failing node. In this case no sessions will be migrated to another node since all PUBLISH and initial SUBSCRIBE requests will be sent to the failing node. The initial SUBSCRIBES that arrives during the failure period will fail with a non-481 error (likely 503). It is up to the client to try and setup a new subscription when the failing one expires or report a failure. All PUBLISH requests and initial SUBSCRIBE request will generate a failure.
When the failing node resumes to normal operation all traffic will be processed again and no requests should fail. The time it takes until all presence states are "correct" again will be minimal since no sessions were failed-over.
If the monitoring feature is implemented in a way that detects the node as "down" in this case, then some users will be migrated to another node and when this node comes back they will be migrated back again. This will generate some increased load for a duration of time. If the overload policy was activated because of a too high traffic load this migration is bad, since is will most likely happen again and since the other servers will most likely also be close to overload. This could lead to a chain reaction resulting in the whole cluster going down and a complete loss of service.
This use case describes a Presence server that is going in and out from overload with short time periods such as 5 seconds. This is common if the system is under dimensioned and can barely cope with the traffic load, but it could also be caused by some other disturbance only on that particular node. The User Dispatcher will behave exactly as in "One Presence Server Overloaded for 60 Seconds" and the result will be the same except that the number of failed sessions and failed-over sessions will be smaller due to the shorter failure period.
A failure in the OWLCS software or an application deployed on top of it causes all threads to be locked (deadlock). This will eventually lead to that the in queue is filled up and the overload policy is activated even though the system is not actually overloaded. This is a permanent error that can only be solved by restarting the server.
Depending on if and how the monitor function is implemented the number of affected users can be minimized. However this cannot be distinguished from a "real" overload situation in which case a fail-over may not be the best thing to do.
The cluster consists of four Presence servers, each node consisting of one OWLCS instance with a User Dispatcher and a Presence application deployed. 100,000 users are distributed over the four servers evenly (25,000 on each node). One of the presence servers crashes due to a hardware failure. A manual operation is required to replace broken server with a new one and only after two hours is the server up and running again. Depending on the type of the failure the response code sent back on transactions proxied to the failed node will be 408 or 503.
In this case all sessions on this node will fail since the failure duration is (most likely) more than the expiration time for the subscriptions. If a monitor server is implemented with fail-over then the failure time will be minimized to the detection time (seconds). The users will be migrated by the migration feature, which will create an increased load for a duration of time.
Because the User Dispatcher was also running on the failed node, all the persisted data for the user dispatcher will be lost when replacing the server with a new machine.
The cluster consists of 3 Presence servers, each node consisting of one OWLCS instance with a User Dispatcher and a Presence application deployed. 100,000 users are distributed over the four servers evenly (33,000 on each node). A new node is installed and added to the cluster. The following sequence of operations are performed to add the new node:
The User Dispatcher and the Presence application on the new node are configured with the same settings as the rest of the cluster. This includes synchronizing the distribution state to the new User Dispatcher in case of a pool implementation with persistence.
The addServer JMX operation is invoked with the new node on the cluster User Dispatcher MBean. This will invoke the addServer operation on all User Dispatcher nodes (including the new node).
The Load Balancer is reconfigured with the new node so that initial requests are sent to the new User Dispatcher node.
Depending on the migration approach an additional JMX operation may be invoked on the Presence application (using the cluster MBean server).
The result of this is that the new distribution of users is 25,000 on each node after 8,000 users have been migrated. Depending on the migration method this will generate an increased load of traffic on the system over a period of time.
The cluster consists of four Presence servers, each node consisting of one OWLCS instance with a User Dispatcher and a Presence application deployed. 100,000 users are distributed over the four servers evenly (25,000 on each node). One Presence node is removed from the cluster. The following sequence of operations are performed to remove the node:
The Load Balance is reconfigured to not include the node to be removed.
The removeNode JMX operation is invoked to remove the node from all the User Dispatcher's in the cluster. The cluster MBean is used to delegate the operation.
Depending on the migration approach an additional JMX operation may be invoked on the node to be removed.
When all users have been migrated from the node to be removed (the duration of this depends on the migration method) the node is finally stopped and removed from the cluster.
The result of this is that the new distribution of users is 33,000 on each node after 8,000 have been migrated.
Consider a four-node cluster with a User Dispatcher and a Presence application deployed on each node. The Presence server JVM on one of the nodes crashes and OPMN restarts the process. The restart takes one minute.
Due to a software bug or misbehavior in the application, 503 responses are sent for all incoming traffic. The SIP server itself is not under a significant load and the Overload Policy has not been activated. This may or may not be a permanent error condition.


text:
unalz (A decompression utility for alz)
unalz is an open source program that can decompress alz files.
alz is an archive format developed for alzip.
Alzip is an archiver that can compress/decompress in such formats
as zip, rar, alz, and etc.
Here is a tip : UHC is the same as CP949, and CP949 contains the
EUCKR character set.
Maintained by: crocket
Keywords: alz,unalz,archiver,decompression,archive
ChangeLog: unalz
Download SlackBuild:
unalz.tar.gz.asc (FAQ)
(the SlackBuild does not include the source)
|Individual Files:
| slack-desc
| unalz.SlackBuild
| unalz.info
| unalz_makefile.diff
© 2006-2018 SlackBuilds.org Project. All rights reserved.
Slackware® is a registered trademark of Patrick Volkerding
Linux® is a registered trademark of Linus Torvalds
Web Design by WebSight Designs | Managed Hosting by OnyxLight Communications

subset: commoncrawl


text:
Kiteboarding: Passion or Pass-Time?
By Allan Wiinamaki, Nokomis, FL
I couldn't take my eyes off the TV as I sat eating my usual Ruben sandwich for lunch at the busy cafÈ just around the corner from my office. The screen was flashing vibrant colors, a shimmering blue ocean and a bright yellow arc of kite set in a clear blue sky. Following the kite was what looked like a wake boarder ripping through the surf. Without warning he launched 30 feet into the air twisting and spinning. Nothing could wrench my attention from the screen; not even my favorite combination of salty meat, sour topping and golden brown butter on dark rye bread. I listened intently over the din of the lunch crowd and discovered I was watching an exhibition of the fledgling sport of kiteboarding. That was it! I knew I just had to get into kiteboarding.
I have always enjoyed a new challenge. I looked at this opportunity as an adventure - a discovery of more than just a new sport. It would be a discovery of how far I could push the limits of my strength and skills, a discovery of the simple beauty of harnessing the elements of nature - wind and water. Finally, it would be a discovery of the brotherhood of a small group of guys who share the passion of a little known sport. A tight knit group of guys who watch out for one another through the hidden and unexpected dangers of an extreme sport.
My adventure began with a search for an expert who could quench my thirst for answers to the many questions buzzing through my head. I figured a town of any size, like my quiet beach community, would surely have a local shop that could hook me up. After a little investigating, I found myself wading through a sea of sails, kites and boards of all kinds in a little shop just off the beach. When I finally came up for air, I was overwhelmed with the array of gear available.
But, my efforts were rewarded. It turned out the owner of the shop, Laurel, is a local kiteboard instructor with a great reputation for safety and experience. What a job! She spends most of her time on the water doing what she loves and it shows. She is a talented, knowledgeable sailor. Some guys would not admit it, but I have to give her credit. She is one of the women that has excelled in the sport and promoted its advancement.
The lessons I took were very informative and provided the experience I needed to navigate the trials of learning my newly chosen craft. I went through the newbie stage with the typical highs and lows that everyone goes through. I had to earn my degree through the school of hard knocks just like everyone else.
My trials included getting dragged to the edge of mangroves and barely avoiding becoming a shishkabobed kiteboarder; inadvertently flying my kite into another kiteboarder who was perturbed but gracious enough about my blunder; drifting, floating and dragging downwind only to march the walk of shame often miles back up the beach; and losing my board while attempting to acquire that initially elusive skill of dragging upwind to retrieve a recently untethered board.
I think the one that topped them all was trashing another guy's brand new board. It was my first day in more than 15 knots of wind. I was still on a directional board and struggling to stay upwind. I learned a hard lesson about taking advice from other kiteboarders. Some guys are fearless and will do just about anything. You might say some are a little lacking in sound judgment or common sense. Sometimes they just don't consider the skill or abilities of the person they are giving advice to. Most guys are fairly cautious, but this day, I got the line, "Hey, the best way to learn is to just get out there and GO for it!" An inexperienced rider in fairly strong winds, in an unfamiliar pass with a strong outgoing tide was a recipe for disaster. I was so excited about finally getting out in good wind that I went for it. I was doing fine for a couple runs. My confidence was building and I was letting out the reigns a little bit at a time. It was not long before I was cruising at a pretty good clip, just on the edge of control. I was attempting to juggle all this new information in my head simultaneously. I thought, "stay upwind, keep the kite moving, and keep the board in control." Oh, oh, into my peripheral vision entered another rider coming right at me. Mild panic started to set in as I struggled to process it all and make a decision as to what to do next. My first thought was, "No problem, I can stay upwind of him and everything will be OK." "Shit, I am going too fast and drifting downwind." In an instant I was on him. Now all I could focus on was trying to keep my kite from crossing and crashing into his. Smack! My feet were taken right out from underneath me as my board crashed intoÖ you guessed it, his board! It was floating in the water near him and I was guided to it like a mid-air missile collision. Somehow I kept my kite aloft as I struggled to keep it from becoming a weapon of death. I managed to get back up on my board and limp back to the beach.
At that point, my only thought was, "I don't belong here with these experienced sailors." So, I decided to just do a down-winder and stay out of everyone else's way. After sailing a short distance, I noticed a spunky little guy trailing down the beach trying to get my attention. At first I thought it was some tourist. Then I realized it must be the guy I just had the run-in with. I made it back to the beach again and by this time it hit me. I must have damaged his board. Duh! You would think I would have realized that right away, but since there was no damage to my board it never entered my mind that his would be trashed. Well, it was and he was understandably upset. I reassured him that I would do whatever it took to make it right. He was just disappointed to have to cut short his first day on a brand new board. I bought him a new board and even though he was upset, he was pretty cool about it. I, on the other hand, was devastated. I was convinced the other kiteboarders would think I was a jerk, unsafe to sail with, and that I didn't belong on the water with them. I came as close as ever to quitting right then. But everyone was really cool about it and just doled out a little good-natured ribbing.
There were plenty of highs as well. I was stoked when I managed to get up on the board in the third hour of my lessons. It was bittersweet though, because I went too far and crashed the kite with a loud smack into the water while trying to get back to the beach. I was still offshore some distance and feeling tangled in my board leash and kite lines. I was a little bewildered about what to do next when I had my first experience with the look-out-for-each-other attitude of the kiteboarders. It wasn't long before Zack, one of the more accomplished and experienced kiteboarders deftly cruised by, yelled out, "Let go of the lines!" and grabbed the kite all in one swift, graceful motion. He came back after dropping the kite on the beach and offered to drag me in, but I felt the least I could do was swim my own ass back to the beach.
Then there is the thrill of getting big air. At first, I wasn't too sure I even wanted to try jumping. But, before long I was hopping tentatively here and there. Then it was boosting and crashing hard back to the surface. Eventually I learned to launch like a rocket and return with that magic, gentle floating descent. The next step for the serious "airheads" is to build a repertoire of tricks. I just started with a simple back roll, but it was enough to get me hooked on getting air.
Early on, it wasn't hard meeting and getting to know the other guys. There is always someone willing to help launch your kite, catch your kite or retrieve a drifting board. At first, I didn't think I would fit in. I joked with my wife that I might have to get a tattoo. She didn't laugh. Every kiteboarder likes to talk about his passion and share the common frustration with the usual lack of wind. We all have our war stories and tales of glory enthusiastically unloaded on anyone willing to listen. In fact, a kiter's wife showed up once and groaned, "Do I have to listen to the same stories all over again?" We all laughed realizing that of course she was right. Then there was a pregnant pause with some uncomfortable shuffling, blank stares, and averted glances. We were fruitlessly searching our mental files for suitable non-kiteboarding topics; simultaneously discarding each one as uncool compared to kiteboarding. Finally, someone cleared his throat, broke the silence and offered, "So, they're forecasting 15 to 20 out of the northwest tomorrow, huh?" Relieved sighs followed with exclamations of, "Yeah, cool, should be ripping." Kiteboarders have their rituals too, like sharing a beer after a session. Each guy takes turns supplying the beer. It is a great time to learn the ropes regarding equipment, technique and the best places to sail for specific wind conditions.
Like every other kiteboarder I know, it was not long before kiteboarding became an all out obsession for me. The highs are hard to explain, but a fluttering flag had the uncanny ability to make my heart skip a beat in anticipation of an awesome kite session. I know some guys have a hard time containing their evangelistic zeal. Dave, an enthusiastic kiteboarder from New Zealand, is a good example. I enjoyed just listening to his accent, so his zeal didnít bother me. But, before I got into kiteboarding, a friend of mine said, "I just have to avoid the guy because he has such a one track mind and is so persistent." Don't get me wrong, kiteboarding is a blast, but at some point it can begin to interfere with having a happy, balanced life. Relationships, family, work, and faith can suffer. I decided to take a break from kiteboarding for a while to clear my head and refocus. After I had a chance to rest and reflect, I found a more balanced perspective of life. I discovered I could be enthusiastic about kiteboarding without it being a detrimental obsession. The consistent winds of the approaching winter would provide ample opportunity to choose when to rip it up with a great group of kiteboarders.


text:
I know it was only the first of 82 games but I am freakin ecstatic that Knicks won tonight. No disrespect to the Nets – there will be plenty of time to disrespect the Nets later in the year – but beating Miami was so much cooler than beating the Nets would have been to start the season. The Knicks were not flawless tonight but they played aggressive, were tough on D and hit about a thousand three pointers. Everyone predicted tonight would be a blowout but no one thought it would be one for the Knicks and I guess that is why you play the game. Here are my thoughts on tonight:
- This is why it is nice to have actual point guards. The triple headed monster of Felton-Kidd-Prigi looked real good tonight.
- Dwayne Wade said tonight's game should not have been played and apparently in honor of that statement Miami took the night off.
- Carmelo was awesome then not awesome and then awesome again. I feel like Carmelo is going to drive me crazy all season but I loved the fact that he had energy and actually tried on defense.
- JR Smith was not awesome. At some points it seemed like he was having a contest with Carmelo to see who could take a more ill-advised shot.
- I don't know about you but I sure missed Amare's lack of defense and lane clogging on offense.
- Hey Novak, I love you!!! Every time Novak is open behind the arc the Knicks better pass to him.
- Hey Ronnie Brewer, I get it you're rusty on offense/you don't know how to play offense. I definitely appreciate the effort though on defense.
- Chandler was 5-5 which frustrates me because the Knicks need to get him more shots especially with Amare out. Hey three headed monster at PG, you might want to try the pick and roll more with this guy.
- I didn't know the crowd could suggest and actually get player substitutions. Is this always the rule at MSG or does it only work when they call out Rasheed?
- I kept calling for THE COPE especially when the Knicks started looking stagnant on offense. Then Copeland went in with two minutes to go and looked completely lost. DOH!!!!! I do predict that Copeland will be a worthwhile asset at some point this year.
- Imagine how good this team would look with Camby and Shumpert out there.
- On a side note: Hey Boston, sorry to hear your 0-2. Hey Oklahoma, good call trading the league MVP to Houston before the season started. Hey Charlotte, did you really start the season 1-0???


text:
Martin 'Buddy' Rein, honored pharmacist
Nov. 8, 1933 – April 7, 2013
Martin "Buddy" Rein, of Williamsville, a pharmacist who attained state and national honors for his innovative ideas and his contributions to the profession, died April 7 in Millard Fillmore Suburban Hospital, Amherst, after a lengthy illness. He was 79.
Born in Brooklyn, he came to Buffalo with his family when he was 6 months old. He was a 1951 graduate of Bennett High School and earned his degree from the University of Buffalo School of Pharmacy in 1955.
He was an owner of Keller's Pharmacy at 744 Seneca St. during the 1960s and sole proprietor of Fisk & Pfennig Pharmacy at Colvin Boulevard and Highland Avenue in the Town of Tonawanda until he retired in 1996. He continued working part time for Rite-Aid until 2003.
Mr. Rein received the Pharmaceutical Society of the State of New York Bowl of Hygeia Award in 1967 for his authorship and compilation of an education manual for training student interns in community practice settings. He helped establish a local internship program for UB pharmacy students.
In 1973, he was honored with the Daniel B. Smith Award from the American Pharmaceutical Association as the top community pharmacist in the nation. During the presentation at the association's annual convention, he was praised as "a model community pharmacist."
The award cited his pioneering work in developing informational handouts for his customers to instruct them in the proper use of the prescription medications, a service that is now a standard feature at pharmacies.
A former smoker, he once gave more than $400 in profits from cigarette sales to the American Cancer Society after putting a sign in his window that declared, "If you can't stop it, we don't want the profit." Later he sold cigarettes to customers at discount rates in return for a donation to cancer research.
He also donated toys to hospitals for every $1 in sales and provided his customers with convalescent aids without charging rental fees.
For several years, he taught pharmacology to nursing students at Daemen College. He often was called to be an expert witness in legal trials involving pharmacological issues. In 1973, he was the keynote speaker at the UB Pharmacy School commencement.
He was a past president of the Erie County Pharmaceutical Association, the Maimonides Pharmacy Society, the UB Pharmacy Alumni Association and the alumni chapter of Rho Pi Phi pharmaceutical fraternity.
A lifelong musician, he started playing drums when he was 7 years old and played in bands throughout his college years.
In 1991, he organized Buffalo's Own Klezmer Band, which played Eastern European Jewish music at religious and nonreligious events.
He and his wife, the former Lenore Jacobs, would have celebrated their 56th wedding anniversary in June.
Also surviving are a son, Douglas, and a sister, Arlene "Sis" Saltzman.
Services were held April 8 in Amherst Memorial Chapel, Getzville.


text:
SACRAMENTO — About 17,000 Californians with serious medical problems will be moved from a state-run stopgap health insurance program to a federal plan starting in July, ensuring they will have no break in medical coverage until the national health care reforms kick in next year, state officials announced this week.
The state board that oversees the California Pre-Existing Condition Insurance Plan said participants will continue receiving benefits from the federal government until 2014. That's when the state's health benefit exchange, known as Covered California, goes online, and insurers will be required to accept all applicants, regardless of medical history, under President Barack Obama's health care law.
State officials said they will work with the Centers for Medicare & Medicaid Services to ensure benefits for people who cannot get health care coverage elsewhere. The transition program has become a lifeline for the so-called uninsurables — patients who applied for insurance but were turned down because of such pre-existing conditions as cancer or heart disease.
"While this will be a change for our subscribers, it is a positive one in that it ensures their health coverage through year's end," said Cliff Allenby, chairman of the Managed Risk Medical Insurance Board, which oversees the pre-existing condition insurance plan, in a statement.
California is among 18 states in which the program is being taken over temporarily by the federal government. The money available to the states was capped at $5 billion, but the pot is running out because the care for the beneficiaries turned out to be more costly than expected. California law also stipulated that no state money could be used in the program.
About 100,000 people participate nationwide.
While health coverage will continue, state officials said out-of-pocket costs could rise. For example, the state's annual in-network deductible is $1,500 for each member but $2,000 under the federal program. Preventive care and doctor's office visits are fully covered by both.
Starting next year, subsidized private insurance will be available through Covered California, and the state is working on an expanded version of Medicaid for low-income people. At the same time, virtually all Americans will be required to carry a health insurance policy or pay a fine.


text:
Parents, students or employees of the school need to contact the school administrators to set up an account. Once it is set up an email with your login details is sent to your registered email id / mobile. To get in touch with your school admin please see the contact information listed at the bottom of this page.
Copyright © 2011 - KNEWCLEUS - All rights reserved.


text:
I have played this game a bit during the beta and loved every minute of it. I however decided to not get to into the beta as I wanted to wait for the release.
My main question is will the devs allow a way to set the resolution for windowed mode? I can;t say myself as I have never programmed in Unity. Thanks for the awesome game guys!


text:
Audiovisual-Multimedia Department
To place requests for service, see the following Request Policy for service and equipment.
Request Policy
- A minimum of 48 hours *ADVANCE NOTICE* is required for all service and equipment.
- The Law School Multimedia Department is closed on weekends. No event services are provided on weekends.
Contact Multimedia Department personnel:
via e-mail at email@example.com, in person, or
by phone: (314) 935-7667.
Multimedia Department Location:
Rooms 245, Anheuser-Busch Hall (2nd floor, southeast corner)
Please supply the following information when making the request:
- Date and time of requested service
- Location(s) for requested service
- Type of service and equipment requested
- Your name and e-mail or telephone number for contact
Multimedia Staff
Director of Multimedia Technology
|Darryl Barker
|E-mail: firstname.lastname@example.com
Phone: 935-6412
Multimedia Specialist
|Bill Mathews
|E-mail: firstname.lastname@example.com
Phone: 935-4803
Multimedia Specialist
|Kevin Roberts
|E-mail: email@example.com
Phone: 935-4016
AV Helpline -
|General Requests
|E-mail all AV requests to :
Phone: 935-7667


text:
Course Details
EDU546 Secondary Curriculum
Explores the values and goals of education, past and present social forces affecting the secondary school curriculum, and methods for curriculum development and revision. Curriculum study include human development and learning styles as they relate to the development of curriculum appropriate to transescents, and young adults in language arts, mathematics, science, social studies, and other subjects of the secondary curriculum. 3 Credits


text:
Whether you earn your degree online or in a classroom setting, you'll get the same benefits we offer all our students—a dedicated team of advisors, small classroom sizes and experienced instructors. In addition to degree programs, many of our campus locations offer professional development workshops, tutoring, computer labs and other resources designed to give you the support you need to accomplish your academic goals. Our accessible education has made it possible for nearly half a million working professionals to earn their degrees. Start investing in yourself. Visit one of our locations near you today.
Locations near you:
Central Florida Main Campus
8325 South Park Circle Suite 100
Orlando, FL, 32819
Phone: 407.345.8868
West Florida Learning Center
12802 Tampa Oaks Blvd. Suite 100
Temple Terrace, FL, 33637
Phone: 813.626.7911


text:
It's no secret that restaurants are strong supporters of the communities in which they serve. They are, after all, the face of the hospitality industry. This year Scalo Northern Italian Grill received the New Mexico Restaurant Association's Restaurant Neighbor Award, sharing accolades with sister restaurant Brasserie La Provence. Their ongoing contributions have supported many Duke City groups including schools, churches, civic organizations and, notably, Dismas House, a transitional living facility.
The force behind Scalo and Brasserie is Steve Paternoster, himself the recipient of NMRA's 2010 Cornerstone Humanitarian of the Year for New Mexico. If there is an opportunity to make a difference, Paternoster is there. He hosted Scalo and Brasserie's booths at the 22nd Annual Equestrian Wine and Food tasting last month along with P'tit Louis Bistro, in which he is also a partner.
Sitting with Paternoster during a rare quiet moment at Scalo, we talk about how he came to the industry at a very young age, spending time at his dad's place—Duffy's Tavern in El Paso, Texas. His Northern Italian ancestry gave him a foothold in Upper Michigan where, as a child, he visited the extended family who had put down roots in the rugged Upper Peninsula mining towns. He worked the hospitality trade from the bottom up, learned to hunt, fish and dress venison, and experienced the camaraderie of a neighborhood pub at Duffy's. During a few wild years he had a short-lived stint running a Gallup bar. But a job as an airline host developed the connections he needed to focus his career in management and introduced him to food of intercontinental quality.
Over the years, Paternoster has seen many facets of the hospitality business. He once applied for a management job at Whites City Hotel near Carlsbad Caverns. He was wearing his college class ring and a mason's pin. He was hired on the spot with the weight of those icons in his favor—yet another example of the importance of community to the up-and-coming restaurateur.
Paternoster takes pride in his restaurants, and patrons recognize the quality in the food and service—top-notch in the Albuquerque scene. But he will be the first to give the credit for his modus operandi to his dad. To this day, the senior Paternoster stands as a model for his life and work.
"He still calls and checks on me regularly," Paternoster says. "Asks how things are going; keeps an eye on me."
I expect Paternoster's neighbors figure he's doing just fine.


text:
Latest Features
Lightning Recall Richard Petiot
The Tampa Bay Lightning have recalled overaged prospect defenseman Richard Petiot from the Norfolk Admirals on an emergency basis, Executive Vice President and General Manager Brian Lawton announced.
Petiot, 26, is a 6-foot-3, 200-pound native of Daysland, Alberta who has skated in 46 AHL games between the Admirals and the Toronto Marlies this season, recording three goals, 14 points and 59 penalty minutes. He made his Admirals debut on Sunday in Wilkes-Barre/Scranton.
Originally drafted in the fourth round, 116th overall, by Los Angeles at the 2001 NHL Entry Draft, Petiot made his NHL debut with the Kings against the Atlanta Thrashers on January 19, 2006, and recorded two penalty minutes in two games with the Kings. He was acquired by the Lightning from Toronto on March 4, 2009 in exchange for Olaf Kolzig, Jamie Heward, Andy Rogers and a fourth-round pick in 2009.
In 162 career AHL games with the Norfolk, Toronto and Manchester, Petiot has recorded 10 goals, 37 points and 192 penalty minutes. Prior to turning pro Petiot played four seasons at Colorado College (2001-05), tallying 11 goals, 33 points and 220 penalty minutes. In 2005 he helped the Tigers reach the NCAA's Frozen Four.
- 1612 reads
- Printer-friendly version


text:
You are here
5 Active Indoor Games
Beat dreary-day doldrums with one of these energy burning indoor games
- prev
- Next
- 1 of 6
Weplay's Rocking Seesaw will keep them on board. Better than a traditional wooden balance board, this racy red plastic version won't splinter and has gripper pads for safe rockin' and rollin', no shoes required! ($44.64; munchkinfield.com)
Ask a kid
What do you do if you're bored? Ask Mom if I can go over to a friend's house. If it's raining? Play Pet Vet 3D on my computer. What do you like about this toy? You could pretend you're surfing. -- Ava, 6, tester
Space is tight? This mini-Foosball Table easily fits on a coffee table and folds in half for trouble-free transport to Grandma's or a buddy's. And it's made of heavy-duty wood, plastic, and metal. ($59; landofnod.com)
The Speed Stacks StackPack ratchets up the fun of cup stacking (yes, there's an official term for what your kid does with the Dixie cups) with a playing mat, timer, and glow-in-the-dark cups. ($59.95; amazon.com)
Boochie players roll out the target, then try to hit it with balls and hoops. The wrist trackers keep score and give new throwing challenges every round (toss between your legs!). ($34.99; gamewright.com)
Your kids normally: fighting. With Active Edge Easy Catch: working together, coordinating their launching and catching to keep the foam (i.e., living-room-friendly) balls airborne. ($28.99; smallworldtoys.com)


text:
It speaks volumes about the state of our language � and the nature of our political discourse � that the most looked-up English word in Merriam-Webster�s online dictionary in a single day all year was �malarkey.� Fitting, too.
If ever we were treated to a steady diet of malarkey � an old Irish-American word for nonsense � it was in the 2012 presidential campaign, mercifully laid to rest a month ago, let us pray. Joe Biden, of Irish ancestry and no stranger to street talk, used the word in his eerie vice-presidential debate on Oct. 11 with Congressman Paul Ryan. It went viral, as they say, and spiked the highest of any word in any 24-hour period on the dictionary�s website.
It also generated 30,000 messages in a single minute on Twitter, none from me, I might add. The last thing I ever want to do is abandon TV for the Internet when there�s anything as entertaining as Biden on the tube.
Ryan was questioning the response of the Obama administration to the murders of four Americans, including our ambassador, at the Libyan consulate in Benghazi, when Biden jumped into the fray. �With all due respect,� he said, a longtime favorite opener for political debaters, �that�s a bunch of malarkey.�
My father�s family was of Scots-Irish ancestry � Scots who emigrated to Ireland � so the word �malarkey� was no stranger to our household. My dad used it in polite company when he was inhibited about employing the initials he customarily used to call something nonsense. And like Biden, he always talked about malarkey as being �a bunch,� not, say, a pile of it or a slew or a mess.
Like coconuts and roses, malarkey, the genuine article, apparently always shows up in bunches. According to the folks at Merriam-Webster, �malarkey� made the top 10 in its annual finalists for Word of the Year, an honor I tend to follow more closely than Time�s Man of the Year since I find most words generally more interesting than most men, especially celebrities.
Other words among the top 10 in 2012 were democracy, globalization, marriage, bigot, touch�, Schadenfreude and professionalism, showing how much government and politics have taken over our national conversation.
�Democracy?� Who has to look that one up?
If we don�t know the meaning of democracy, we really are in a pile of doo-doo. And when was the last time anybody used �globalization� in anything but some kind of highbrow seminar on C-Span?
As for �marriage� and �bigot,� which seem like strange bedfellows at first glance, I suppose all the talk about same-sex marriages this year is what got them into the finals.
�Touch� is a French word and should be banned from competition, except maybe in relation to fencing. �Schadenfreude,� meaning taking pleasure in the troubles of others, is a German word, and similarly suspect. �Professionalism� seems like a stretch to me as well. You don�t see much of it in real life, not even in political debates.
Maybe people are looking for a good definition from the professionals who write our dictionaries � if there are that many left. Maybe it�s just me, but sometimes I think life is less a bowl of cherries than it is a bunch of malarkey.
Reach Sid McKeen at email@example.com.


text:
Our wonderful three-year-old, wool-coated Labradoodle, Atticus, loves puppies beyond words. As you know, not all adult male dogs share that affection. But our boy has a preternatural fondness for puppies, so much so that the trainer we use, who also boards him when we travel, refers to him as her "puppy-nanny."
A neighbor on our block in the Upper West Side of New York City recently got a miniature Schnauzer puppy named Rufus. Like most four-month-old puppies, Rufus is a pistol; and like most Terriers, he plays hard. But no amount of ear-biting, belly-crawling, sumo-wrestling, or you-name-it stymies Atticus. He's game for it all. Period.
Well, on the day this shot was taken, a group of more than a dozen bystanders stood around watching in amusement as the these two played on the sidewalk. They really went at it—so much so, in fact, that Rufus eventually pooped out and decided he needed a nap. And where better to lay his puppy-head than on the fluffy paw of his big friend? Which he did. Whereupon Atticus thought it best to protect him by placing his other paw over him. To boot, our boy kindly looked up when asked. And, voilà! This shot resulted. OK, Karen took it with an iPhone, not the best quality. But still, I think it's priceless.
—David Ballon and Karen Reisler, NYC, N.Y.
Send us your photos. Topics include Dog Is My Co-Pilot, My Dog Tickles My Funny Bone, or just about anything that captures your dog's special something. Send the photo with a brief description, to email@example.com. Winners online receive a subscription (new or renewal) to Bark magazine. Winners in the magazine receive all that plus a snazzy Dog Is My Co-Pilot T-shirt.


text:
Philip Hoffmann, PhD, 1936-2006
July 27, 2006
Philip Hoffmann, PhD, 1936-2006
July 27, 2006
A respected neuropharmacologist and a revered teacher, Philip C. Hoffmann, PhD, professor emeritus in the department of neurobiology, pharmacology and physiology at the University of Chicago, died Friday, July 21, at the University of Chicago's Bernard Mitchell Hospital after a long battle with prostate cancer. He was 70.
In collaboration with colleagues Alfred Heller and Beatrice Garber, Hoffmann spent more than two decades studying how the nerve cells that communicate via the chemical messenger dopamine connect with one another in the developing brain. The three scientists assembled small aggregates of nerve cells, known informally as "mini-brains," and used them to study how specific groups of neurons in the brain find each other and establish connections. They subsequently used these clusters of neurons to study how various drugs of abuse, such as methamphetamine, could disrupt that process and damage those connections.
Hoffmann was also known on campus as a devoted and inspirational pharmacology teacher who won many awards for his work with students in the undergraduate college of the University of Chicago and with graduate and medical students. He taught the basic pharmacology course to second-year medical students for 30 years.
"He was a fantastic person," said Heller, professor of neurobiology, pharmacology and physiology and former chairman of the department. "He was respected for his broad knowledge and his theoretical approach to the science. But he was also known as an outstanding teacher. He was totally open to his students, and he spent an enormous amount of time preparing for each class."
"Philip was a splendid person," said Eugene Goldwasser, the Alice Hogge and Arthur A. Baer professor emeritus of biochemistry and molecular biology at the University of Chicago. "He began his career as a creative and meticulous researcher, but he became more and more involved in teaching, to which he was absolutely devoted. He never shortchanged his students, and many of them kept in contact with him for years after they had finished his class and moved on to other institutions."
Philip Craig Hoffmann was born June 18, 1936, in Evanston, Illinois. His father was a naval engineer, and the family moved often as he grew up. He attended high school in Utah and South Carolina before enrolling in 1953 at the University of Chicago, where he spent most of his career.
He completed a bachelor of science degree in 1957, spent one year in graduate study at the University of California at Berkeley, then returned to Chicago, where he earned his PhD in pharmacology in 1962. After a year of post-doctoral research in Germany and Sweden, he joined the faculty at the University of Chicago in 1963 as an instructor in pharmacology.
Hoffmann rose steadily, becoming an assistant professor in 1966, an associate professor in 1971 and a professor in 1980. He took on additional teaching and administrative duties, serving as senior adviser, and later collegiate master, for teaching biological sciences to undergraduate students. He received the university's coveted Quantrell award for excellence in undergraduate teaching in 1971, the basic science teaching award from the Pritzker School of Medicine in 1977, 1982 and 1984, and the Amoco Foundation award in 1994 for distinguished contributions to undergraduate teaching.
One of his undergraduate students, Guy Le Breton, was inspired by Hoffmann's course to become a pharmacology major. "The U of C was one of only two universities that granted bachelor's degrees in pharmacology," Le Breton said. Later he worked in Hoffmann's lab and returned to graduate school at Chicago, where he got his PhD "Phil stuck his neck out for me. He was like a surrogate father. When my son Phillip was born, of course I had him in mind when we chose the name." Le Breton is now a professor of pharmacology at the University of Illinois at Chicago.
"Philip was a superb teacher," said Donald Steiner, the A.N. Pritzker professor of biochemistry and molecular biology, professor of medicine and a Howard Hughes Medical Institute investigator at the university. "He was always enormously helpful, extremely well informed and had a wide range of interests. He retained the ability to connect with students and to keep his material fresh despite teaching the same course for three decades." By the time Hoffmann retired, Steiner said, "the field had become so specialized it was difficult to find anyone who could replace him."
In 1999, Hoffmann was appointed chair of the university's newly created council on teaching, a faculty advisory board. "Good teaching doesn't just happen," he said in a 1999 interview, "it has to be nurtured."
Hoffmann emphasized teaching by discussion, rather than by lecture. "Some of my colleagues may not agree with that as an appropriate pedagogical method for the sciences," he said, noting that some prefer to convey facts in the most direct manner. "But I feel very strongly that--particularly at the Common Core level--students need to know how we arrive at those tentative facts. The only way to do that is to discuss the nature of the evidence."
Even after he formally retired, Hoffmann continued to teach in the part-time Master of Liberal Arts program, where his classes focused on the social and political implications of pharmacology. In 2002 he received the university's Gold Key award for service to the division of biological sciences and the university. Michael Goode, a student in the MLA program, became an expert in the neurobiological and physiological aspects of stage fright, thanks to Hoffmann's guidance. Said Goode, "I'd never have this career as a stage-fright consultant without him. He was a real mentor--one of those brilliant, bright lights who let me have free rein to research and discover."
Despite his considerable teaching load, Hoffmann remained active in the laboratory, publishing more than 50 journal articles, primarily on the development and aggregation of dopaminergic neurons and the neurotoxicity of amphetamines. He translated a popular German textbook on pharmacology into English in 1973. He also served for many years on the editorial board of the Journal of Pharmacology and Experimental Therapeutics and on study sections on pharmacology and on biomedical sciences for the National Institutes of Health.
Much more than a pharmacologist, Hoffmann was a lifelong devotee and supporter of opera, theater, music and architecture, not to mention history and baseball. "In our household, he was the go-to guy for all the sports and history crossword puzzle clues," said Chris Lonn, Hoffmann's partner of 34 years, together with whom he spent much of his retirement at their Michigan summer home and traveling with the Chicago Architecture Foundation.
In addition to his partner, Hoffmann is survived by his brother Bob Hoffmann of Bethesda, Maryland, and many other relatives. A memorial service on the University of Chicago campus is planned for the first week of October.


text:
Each year, guests with compelling stories are invited to attend the president's State of the Union address. This year is no different.
On hand for this Tuesday's speech will be around two dozen people vicitimized by gun violence, either personally or through the loss of a loved one. Former Ariz. Rep. Gabby Giffords, who survived a gunshot wound to her head two years ago, will attend. So will members of the Sandy Hook Elementary community. Here are some of the tragic stories behind the faces you'll see tonight:
Josh Stepakoff
Stepakoff was just 6 and attending summer camp when he was shot at the North Valley Jewish Community Center in 1999. He was one of three children injured by gunman Buford Furrow, who targeted Jews and minorities in his attack. Now 19 years old, Stepakoff is pushing for tougher gun control laws.
Cleopatra Cowley-Pendelton and Nathanial A. Pendleton Jr.
The parents of Hadiya Pendleton will there on behalf of their daughter, an innocent bystander who was caught in the crossfire of gang violence on Chicago's South Side. Hadiya, an honor student, was killed just one week after participating in President Obama's inauguration. Two men have been charged in the 15-year-old's murder.
Natalie Hammond
Hammond, a lead teacher at Sandy Hook Elementary, is one of a few survivors of Adam Lanza's assault on the school. She was shot several times but managed to crawl behind a door to safety. Hammond is a mom to a tween daughter.
Carlos Soto Jr.
His sister, Victoria Soto, was hailed as a hero after she used her body to shield and protect the students in her Sandy Hook first grade class. Carlos, a high school student, has set up Victoria Soto Scholarship Memorial Fund with his family to help aspiring teachers.
Kaitlin Roig
A first-grade teacher for six years at Sandy Hook Elementary, Roig protected her students by hiding them in the classroom bathroom and then barricading the door.


text:
Hello all!
My name is Joe and I'm new to this forum. I'm in my mid-twenties and I enjoy playing casually. Skill wise I'm about a 2.5-3.0.
If anyone is planning on going out in the afternoon and would like a partner I'm game!
Hope to get out there today!
- Joe
Views: 149
Replies to This Discussion
Hey Joe,
Looks like they fixed the link for this group. Anyway, I'm (3.0) player, and if you are still playing tennis I'm looking for a hitting partner, or someone to play a match with.
A link was broken? I haven't used this site enough since I joined last Friday to notice. Yeah, I still play, albeit casually...and not as often as I would like. I am usually free after 5:30-6:30pm. I work in north SJ, but live in south SJ. I won't be free until 8-8:30pm tonight or Friday after work/Saturday in the morning. Let's play!
Awesome! I live in Campbell, but work in SJ. I'm usually free weekdays after 5pm, and anytime weekends. Might be a bit late tonight, but why don't we shoot for tomorrow or Friday after work? Otherwise definitely Saturday. Let me know...Also, if you have any courts you prefer, otherwise I'll look some up around SJ. I work off the 880/101 junction close to the airport.
Wallenberg Park in Willow Glen is a favorite. I live on the east side of 87 and I assume you live on the west side of 17. That middle area seems pretty good. Tomorrow I'm busy in the evening. Friday evening or Saturday night sound good.
Perfect. I can meet you there @ 5:30 or so Fri after work. Let me know if that works for you, otherwise Sat is good too.
How about 5:45pm? Traffic is the worst.
No problem. I'll see ya there!
Are we still good for today at Wallenberg park @ 5:30-
Yep...I'll be there!
© 2018 Created by Mark / The Mayor. Powered by


text:
Simply better performance. CLAAS TELEMATICS.
Machine performance and machinery costs are two of the main factors that are crucial to your profit margin. For contractors and larger farms, keeping track of all machine and personnel resources is a challenging task. And maximum efficiency is essential at all times: getting to the right field quickly, seamless order completion, short logistics chains.
Click here to go to the TELEMATICS website and access the demo
Good reasons to use TELEMATICS:
- Improve work processes: operating time analysis
- Optimise settings: detailed analysis of performance and adjustment parameters
- Simplify documentation and increase transparency: data capture
- Reduce maintenance time and increase reliability: remote diagnostics
TELEMATICS allows targeted optimisation of operations in many areas.
- It is an established fact that combine harvesters only use about 50% of their output potential in the field
- Output varies by up to 40% between drivers (in the same conditions). Mandatory documentation requirements and prompt, accurate invoicing involve a large amount of administration work – but farmers believe that their skills are better employed in field, livestock and machinery management rather than in the office.
TELEMATICS – example of combine harvesters:
Studies from Germany and the UK have demonstrated that TELEMATICS can:
- increase the available harvesting time by up to 7%
- improve throughput by up to 10%
- reduce losses by up to 0.5%
- save up to 3 harvest days per season
- or harvest up to 150 ha more per combine per season. This means potential savings of up to € 15,000 per year
- Increased productivity directly in the fieldFurther information
- Machine control and performance optimisation directly from the cabFurther information
- Keep a close eye on cropping potentialFurther information
- Software solutions for farmsFurther information


text:
U.S. Rep. AARON SCHOCK, R-Peoria, got some notice last week for campaign fund spending, including $2,600 for cuff links, and for spending $340,000 for travel and meals over the years.
But while some may look like weird purchases, Schock�s new political director, KAREN McDONALD, said there are legitimate reasons for those payments.
Schock, 32, has been in the House since 2009. The recent notice came in a front-page story of the Chicago Tribune about spending by Illinois members of Congress from campaign funds.
Schock raises money through funds including his own Schock for Congress fund, which had more than $2.9 million on hand as of the end of September; a Generation Y fund, which is a leadership political action committee; and a Schock Victory Fund, which also helps raise money for others.
�Maintaining the (Republican) majority in the House is a must, and Aaron is a top-tier fundraiser,� McDonald said. �Making money also requires spending money.�
Other Schock expenses mentioned in the Tribune story include $407 at a Lombard studio that offers ultrasounds for expectant mothers and $452 at a Peoria maternity boutique. It said the campaign buys flowers monthly from a Peoria florist and has spent $3,500 on flags.
Since 2011, the campaign also spent more than $19,000 on hotel rooms and parties in the mountain resort town of Vail, Colo.
And there were expenditures of $310, $334 and $677 at three different Washington, D.C., restaurants on a single day.
Schock, McDonald said, takes rules and laws overseeing his election expenditures �very seriously.� Flowers, she said, are often sent for funerals or as gifts to fundraiser hosts. Cuff links and flags are given to supporters, or charities that can use them as auction items. Baby gifts, she said, also go to supporters.
Schock raises $3 million to $4 million per two-year election cycle through various committees, McDonald said.
�For every dollar that comes in, Aaron spends on average 10 cents to make that dollar,� McDonald said. �Are there times when the expenses are closer to 20 cents to raise that dollar? Sure. But that also depends on the venue� and costs incurred. �We always try to be frugal with our spending.�
As for the three restaurants in one day, McDonald said, Schock �always errs on the side of caution, which is why his campaign often picks up the tab over public funds.�
There are two Democrats � ROB MELLON of Quincy and DARREL MILLER of Danvers � vying for their party�s nomination to take on Schock next fall in the 18th Congressional District.
McDonald, meanwhile, is a former political reporter for the Peoria Journal Star. She�s 36, a Peoria native and a journalism graduate of the University of Illinois. She said she worked part time for Schock�s congressional office for a couple of years, and was making $2,000 a month there before joining his campaign two months ago.
New headquarters?
ROSEMARIE LONG, who chairs the Sangamon County GOP, said a fundraising campaign by the Sangamon County Republican Foundation has goals including construction of a party headquarters.
�In time, we�d probably save money instead of always having to rent,� Long said.
The party did pay rent for years at its former headquarters in a building owned by then-chairman IRV SMITH. The next chairman, TONY LIBRI, bought the current headquarters building near the Illinois State Fairgrounds in 2007 and planned to sell it over time to the party for his purchase price of $150,000.
In early 2012, Libri sold the building for $158,000 to an entity linked to the American Legion Post 32, just to the west.
Long said the party pays $1,800 per month in rent, and there is no timetable for construction of a new headquarters.
�But it�s one of the goals,� she said.
Sangamon County Board Chairman ANDY VAN METER also chairs the foundation.
�There really hasn�t been any thought about this,� Van Meter said when asked about the new headquarters idea. �We are quite far away from the goal. The foundation might also purchase an existing building or supply funds to the party to make the purchase.�
Former Gov. JIM EDGAR, now a Springfield resident, penned a letter early this month urging people to donate to the foundation.
Long is on the foundation board, along with Smith; FRANK VALA, who is CEO of Community Care Systems; BOB KJELLANDER, former treasurer of the Republican National Committee; former state Sen. LARRY BOMKE; former Springfield Mayor KAREN HASARA; and JAMES W. BRUNER, vice president and general counsel of United Contractors Midwest.
Bruner, of Springfield, is a son of JAMES P. BRUNER of Jacksonville, president of the road-building firm.
Foundation officers besides Van Meter are BRUCE STRATTON, secretary of the Sangamon County GOP, as legal counsel; DRINDA O�CONNOR, a member of the Springfield Metro Sanitary District Board, as treasurer; and Sangamon County Administrator BRIAN McFADDEN as secretary.
JANIS CELLINI, sister of BILL CELLINI, former chairman of the foundation and treasurer of the county party, is the volunteer executive director. Bill Cellini recently finished a stay in prison for a federal corruption conviction.
The foundation, established in the early 1980s to provide the local GOP with support services such as mailings and polling, had more than $230,000 on hand as of the end of September.
The foundation has generated a bit of controversy over the years, including the time in 2000 that it had to fend off a complaint that it had been raising money illegally because it didn�t have a chairman.
The State Board of Elections dismissed the complaint at the time, in part because by then, there was a new chairman. The post had been left vacant with the death in 1994 of FRANK MASON, and Bill Cellini took over the job in 1999.
A report to the board at the time said that TONY LEONE, longtime executive director of the foundation, acted �for all intents and purposes� as chairman.
Leone last week recalled that in 1999, he told Bill Cellini that he would like to be named chairman. Cellini then told him, Leone said, that he had always wanted the job himself, and got the title.
�I thought it was disingenuous,� Leone said, because Cellini could have had that role �any time that he wanted to.�
Leone said he and his late mother, EVELYN, who also worked for the foundation, both then left the organization � and left it in good financial shape, with about $240,000 on hand.
In the 2000 report to the State Board of Elections from STEVE SANDVOSS, now the board�s general counsel, Smith was quoted as saying Leone was doing �an excellent job� running the foundation, and it would have been disrespectful to name somebody else as chairman after Mason�s death. But Smith also said at the time, according to the report, that Leone was not named chairman because of concern that it would place too much power in the hands of one individual.
Messages left for Bill Cellini at his Leland Grove home and Janis Cellini at the foundation office were not immediately returned. Van Meter said he didn�t know about Leone telling Cellini he wanted to be chairman.
�It all predates me,� Van Meter said.
Contact political columnist Bernard Schoenburg: 788-1540, firstname.lastname@example.com, twitter.com/bschoenburg.