Articles

Today, we’re going to talk about JUnit and unit testing, one of the key skills for any software developer. You may already know that JUnit and Mockito are two of the most popular testing libraries for Java applications, and you will find them in almost every Java application classpath. I often meet and work with Java developers who know Java well but haven’t written a single unit test. When I ask them why don’t you write unit tests, they come up with many excuses like they don’t have time for writing unit tests, there is always deadline pressure, and some of the honest guys will tell you that they tried writing but give-up after 10-15 minutes due to difficulty in testing their code.

Whatever your reason for not writing a unit test, I don’t think it’s going to work anymore because, in today’s world of DevOps and automation, there is increased focus on code reviews, unit testing, and integration testing, and you just can’t get away with not writing tests.

Source de l’article sur DZONE

The Istio traffic management model basically allows for the decoupling of traffic from infrastructure scaling, allowing operations personnel to specify the rules to apply to traffic using Pilot instead of specifying which pods/VMS should receive traffic. Decoupling traffic from infrastructure scaling allows Istio to provide a variety of traffic management functions independent of application code. The Envoy sidecar proxy implements these functions.

In a typical mesh, you often have one or more finalizing external TLS connections at the end to guide traffic into the mesh’s load balancer (known as a gateway); the traffic then flows through internal services after the sidecar gateway. The following figure illustrates the use of gateways in a mesh:

Source de l’article sur DZONE

In a previous article, we explained the importance of monitoring the performance of your servers. Keeping tabs on metrics such as CPU, memory, disk usage, uptime, network traffic, and swap usage will help you gauge the general health of your environment as well as provide the context you need to troubleshoot and solve production issues.

In the past, command line tools, such as top, htop, or nstat, might have been enough, but in today’s modern IT environments, a more centralized approach for monitoring must be implemented.

Source de l’article sur DZONE


"Apps without search is like Google homepage without the search bar."

Image title

It’s hard to design an app without a good search. These days, it’s also hard to find a database without a built-in search. MySQL to NoSQL, Sybase to Couchbase, every database has text search support — built-in like Couchbase or via integration to Elastic — as is the case in Cassandra. Unlike SQL, text search functionality isn’t standardized. Every application needs best of the breed search, but not every database provides the same text search functionality. It’s important to understand the available feature, performance of each text search implementation and choose what fits your application need. After motivating text search, you’ll learn about the text search features you’d need for an effective, compare and contrast those features in MongoDB and Couchbase with examples.

Source de l’article sur DZONE

As I covered in a previous post, monad transformers have poor performance properties in languages and runtimes unequipped to deal with them — including the Scala programming language and the JRE.

There’s a general technique to improving performance that involves something I call effect rotation.

Source de l’article sur DZONE

Not too long ago, in the Sensu Community Slack, the question: “Why Sensu instead of Nagios?” arose. Specifically, “How do I convince my boss to choose Sensu over Nagios?” I responded to the thread but decided it was worthwhile to share my response with the wider community. At Willis Towers Watson, we moved from Nagios to Sensu 1.2 almost a year ago (and now, we’re upgrading to Sensu Go). In this post, I’ll share what we learned and why we migrated (and why you should, too).

Sensu bean, that is.

Source de l’article sur DZONE

Before you start: If you don’t know what Katalon Studio is, read this first, and get to know why I picked it to build web automation.

Katalon Studio at a Glance

To be mentioned, before looking at the studio, Katalon project offers an IDE tool for Chrome, called Katalon Recorder. It’s an extension that records actions, captures web elements, plays the automated test case you recorded and speaks Selenese.

Source de l’article sur DZONE

Ask any developer to estimate how long it will take for them to finish a project. You will see the loathing in their eyes. And for good reason. Estimates have been wrongly used for decades by a lot of managers who then hold the team accountable to their estimate as if it were the actual deadline. Even more frustrating, in many cases, those managers only act on the lowest number they hear from you! It’s as if they had a min() function, and they just keep trying to get the number lower. But engineering is not magic!! No wonder the hashtag #NoEstimates has become famous.

For this to happen, we (well…especially managers) need to abide by a few rules. Then we’ll see how estimates can improve the quality of your software. Yup, you read that right. Well, in my opinion, obviously.

Source de l’article sur DZONE

SOAP is a messaging protocol specification for exchanging structured information in the implementation of web services. Its purpose is to induce extensibility, neutrality, and independence. It uses XML Information Set for its message format and relies on application layer protocols.

SOAP is used in a variety of messaging systems. It is delivered via a variety of transport protocols and the initial focus of SOAP is remote procedure calls transported via HTTP.

Source de l’article sur DZONE

This is part 3 in a series on alert fatigue. Read up on parts 1 and 2.

In many cases — as you’re monitoring a particular state of a system — you probably know some steps to triage or in some cases automatically fix the situation. Let’s take a look at how we can automate this using check hooks and handlers.

Source de l’article sur DZONE