Aggregration Pipeline

Aggregation Pipeline: Understanding MongoDB Part 1

MongoDB is becoming more and more popular among developers due to its key attractions, which are agility and scalability. Today, we have most applications being developed in an agile environment, where changes tend to come in every sprint. MongoDB adapts well to such changes and the icing on the cake is its scalability.

Some of the MongoDB features that attracted my attention were Aggregation, Replication, and Sharding. Before we look at these in some detail, let’s refresh ourselves with some MongoDB concepts. (more…)

How to Secure WordPress

How to Secure WordPress and Protect Your Blog

Over the years, blogs running on WordPress have been the target of multiple cyber attacks designed to deface the website, interrupt service, or steal sensitive data. According to the National Vulnerability Database, WordPress went from two known vulnerabilities in 1988 to 5,733 in 2009. And this number multiplies each year with newer vulnerabilities being found.

Here is a summary of best practices to protect your blog. From version upgrade to file permissions, the below infographic shares tips on how to secure WordPress blogs and sites against the most common vulnerabilities in a WordPress installation. (more…)

Cross-Platform .NET Framework

.NET Framework Goes Cross Platform

The first .NET platform was released around 15 years ago and evolved through different framework versions. The latest change has been brought about by Microsoft, who now has open sourced the framework codes rather than keeping the source closed and copyrighted.

The .NET Framework 5 has been released by Microsoft and is being made available to both Mac and Linux by open sourcing most of the full server-side .NET core stack. Microsoft is also open sourcing RyuJit (the next-generation JIT compiler) and the .NET Garbage Collector, making them both cross-platform. (more…)

Load Testing SignalR Hub-Based Applications - Part 2

Load Testing SignalR Hub-Based Applications – Part 2

In the first part of this series, we saw how to load test a SignalR Hub-based application using our custom SignalR load test component.

Our test objective was to find the optimum server configuration that would be capable of hosting our SignalR Hub-based application, which can support a load of up to 2000 concurrent connections. We started off with an Azure VM instance with the following configuration for hosting the application: (more…)

Load Testing SignalR Hub-Based Applications - Part 1

Load Testing SignalR Hub-Based Applications – Part I

Recently, we came across a requirement where the design scenario was to support a large number of connected client apps that needed to maintain a continuous connection with the server. This would facilitate the ability to provide a server dashboard capable of doing a variety of operations, such as taking specific clients offline and bringing them back online later to manage the client applications remotely.

A WebSockets-based implementation using SignalR came as a natural choice for the technology given its versatility and flexibility along with its suitability for such connected application scenarios. However, there were a few hurdles to be crossed before proceeding with the implementation. (more…)

eCommerce UX: Are You Frustrating Customers?

eCommerce UX: Are You Frustrating Customers?

If you are an eCommerce merchant who spends a lot of money on advertising and is still not seeing expected sales, it’s time to set aside time for eCommerce UX.

Usually, people think UX or user experience has only to do with usability and design. This is actually not true. Studies have proved that UX can heavily impact business sales. In fact, UX is said to beat advertising to it—always! (more…)

etcd - An Introduction

etcd – An Introduction

One of the huge bottlenecks associated with distributed systems is ensuring the configuration information (database connection details, cache settings, etc.) reaches safely and consistently across all machines in a system. It is in such scenarios that etcd could fit in. etcd from CoreOS is a highly-available key-value store for shared configuration and service discovery.

etcd is inspired from its predecessors Apache ZooKeeper and Doozer. etcd uses Raft consensus algorithm instead of Paxos used in Doozer. (more…)