What is Application Performance Management (APM)? Like a lot of good
questions, it depends on your business needs. What is the goal of an ideal
APM? Does it mean 99.999% availability? Perhaps it is a favorable overall
end user experience when using the application but, as compared to what?
My point is that Application Performance Management / Monitoring means
different things to different businesses and it can even depend on the
application involved.
What is the Goal of APM
“Begin with the goal in mind.” I wish I could take credit for that
quote. What is the goal of the APM? Have you listed out the objectives you
hope to obtain from your APM strategy? This approach will help your team
ensure satisfaction with the final solution chosen. Here are some examples.
Minimum of 99.999% availability with lower Mean Time To Know (MTTK) and Mean
Time To Repair (MTTR) Less ... (more)
This article describes the design and implementation of a generic
request/response broker (RRB) for JMS. RRB augments JMS with a highly
efficient implementation of the request-response paradigm.
It's extremely important for many asynchronous applications since JMS has
somewhat weak built-in support for the request-response paradigm that might
be inadequate for high-load enterprise applications. RRB solves the following
common problems. It:
Provides a generic high-performance application and JMS provider-independent
implementation of the request-response pattern. Supports timeouts for
non-blocking clients. Allows efficient handling of a large number of
requests/responses. Lets one hide all the JMS details behind the façade
interface. Reduces performance degradation when a request travels through
multiple façade proxies. Possible Solutions and Their Performance Compar... (more)
At the end of last year, I was given a rather unpleasant assignment. This
company had several Java Remote Method Invocations (RMI) services that were
interacting with the legacies of the organization and I needed to open up an
XML interface for them.
My first idea was to use the Simple Object Access Protocol (SOAP). But the
current W3C specification and implementation of the SOAP API from Apache
presented only the HTTP binding for SOAP. Because of this, the SOAP services
had to be deployed in a Web server container. The possibility of opening up a
SOAP-based interface to the existing RMI services was limited by the
following factors:
If we convert the existing RMI services as SOAP-based and deploy them in a
Web server container, the existing clients to those services have to be
rewritten or reconfigured in order to be able to talk to the SOAP server in a
SOAP-reco... (more)
The matrix is an indispensable tool for engineers and mathematicians.
Matrices are used in many engineering applications for solving linear
equations, differential equations of n-order, and so on.
Mathematicians have developed matrix arithmetic to help engineers in solving
their engineering problems. It is generally very easy to understand and
perform. However, due to the mere size of the computations involved, it's
prone to errors. Even at the school level, students want to use a calculator
to solve (or at least verify the results of) their school assignments on
matrices. Some of the scientific calculators support Matrix Arithmetic. These
scientific calculators are not always handy.
In recent days, mobile phones have become abundant and one may dare to say
that virtually every literate person in this world possesses a mobile
handset. Many of the present-day mobile h... (more)
Welcome to M2M News Weekly, an online newsletter that consists of the most
interesting news and articles related to M2M (machine to machine) and
embedded mobile devices. I aggregate the information, include the original
links and add a synopsis of each article. I also search for the latest
market numbers such as market size, growth and trends in and around the M2M
market.
Also read Enterprise Mobility Asia News Weekly
Also read Field Mobility News Weekly
Also read Mobile Commerce News Weekly
Also read Mobile Cyber Security News Weekly
Also read Mobile Health News Weekly
Also read Mobility News Weekly
Looking for an enterprise mobility solution? Read the Mobile Solution
Directory Here!
An industry group comprising mobile operators in Asia-Pacific has unveiled a
new alliance to provide a "one-stop-shop" to support machine-to-machine
deployments in the region. Read Origin... (more)
One of the salient aspects of the Java language is the control it gives to
developers for dynamically generating and reusing code. This allows the
language to offer Java programmers the ability to write code in which the
actual behavior is determined at runtime. Of the eleven buzzwords used to
define Java, this article is going to focus on the dynamic nature of the Java
programming language.
One of the salient aspects of the Java language is the control it gives to
developers for dynamically generating and reusing code. This allows the
language to offer Java programmers the ability to write code in which the
actual behavior is determined at runtime. Of the eleven buzzwords used to
define Java, this article is going to focus on the dynamic nature of the Java
programming language.Introspection Uses Reflection
Reflection and introspection are very closely related. Refle... (more)
Serialization in Java is an operation in which an object's internal state is
translated into a stream of bytes. This binary stream or image of the object
is created in an operating system-neutral network byte order. The image can
be written to a disk, stored in memory, or sent over a network to a different
operating system. This amazing feat requires little or no work on the part of
the programmer. Just implement the serializable interface, which contains no
methods, and call the writeObject() method on your object, and it's
serialized! You can serialize an object to or from any I/O device that Java
supports.
The serializable interface doesn't contain any code or data; it's a marker
interface. If a hierarchy of classes is to be serialized, each class in the
hierarchy must implement the serializable interface. All objects that are in
an object hierarchy, or "Web of ... (more)
Delivering on its commitment to provide schools an alternative to expensive
and complex computing solutions, Sun Microsystems, Inc. announced the rollout
of the Sun Java Desktop System to the K-12 and higher education market. The
Java Desktop System for Education is an affordable, comprehensive, simple to
use and secure enterprise-class desktop solution. It introduces a business
model to education institutions that provides a single price of $25 per
desktop per year for the desktop software, maintenance, support and training.
The Java Desktop System provides a complete desktop environment of
productivity tools for students, which includes an office suite, Web browser,
e-mail, calendar, instant messaging and more. In addition, Java Desktop
System is the only environment with fully integrated Java technology, making
this "out-of-the-box" desktop ready to run thousands o... (more)
Read Eric Raymond's Open Letter to Scott McNealy: "Let Java Go"
Read "Letting Java Go" - James Gosling in 2003 on Open-Sourcing Java
As if driven by the cycles of the moon, it seems like the Java community gets
a monthly visit from that special topic that divides and angers us more than
any other: the question of whether Sun should "open source" Java? Most
recently a top open source advocate named Eric Raymond (author of The
Cathedral And The Bazaar) published an open letter to Sun urging them to "Let
Java Go." I have huge respect for the achievements of the open source
community, but I tend to stay away from the pissing contests that these
discussions about open sourcing Java often devolve into.
I think the issue is something of a bugaboo, anyway. The source code for Java
is readily available to anyone who accepts the Sun Community Source License
(SCSL.) You can fix p... (more)
Personalization, a recurring requirement in most corporate Web applications,
can be a very effective tool for streamlining Web applications and enhancing
the Web user's experience. In many cases, personalization and security
requirements go hand in hand; they can be dictated by corporate security
principles and regulations that exist in banks, insurance companies, and any
other organizations.
This article targets enterprise architects and developers who are willing to
invest a little time to develop a set of easy-to-use, reusable
personalization components that are powerful enough to meet the needs of many
enterprise applications.
The personalization components that we describe here are based on rules
declared and configured in an XML file. Personalizing Web applications with
these components requires writing little or no Java code. Web pages are
personalized usin... (more)
The Java Secure Socket Extension (JSSE) is a set of packages that enable
secure Internet communications. It implements a Java version of the Secure
Sockets Layer (SSL) and Transport Layer Security (TLS) protocols. It includes
functionality for data encryption, server authentication, message integrity,
and optional client authentication.
Although the JSSE guide provides detailed information on the JSSE API and its
use in application programming, this article dives deeper into the different
message exchanges involved when a programmatic Java client communicates with
a server over the SSL. It will help developers understand the fundamental but
often overlooked JSSE concepts of keystore, truststore, cipher suites,
certificates, and the public key infrastructure and help them solve some of
the common programmatic and configuration issues that arise when developing
Java ... (more)