My team and I make heavy use of Spring Boot to build microservices that power our applications at our company. We've even gone so far as to write our own custom auto configurations to ease development. We package these auto configurations along with other goodies into what we call our platform.Recently, after releasing a new platform version, we encountered an issue where one of our microservices would fail to start at what appeared to be random intervals. After further digging, we noticed specifically...
Eventually you'll reach a point where you need to run multiple instances of an application or a service for high availability or to manage increased load. That's what load balancers are for. There's generally two different types:What many people would call a "load balancer" is actually a server-side load balancer. It can be implemented in hardware or software. The traffic is sent to a dedicated service that decides where to send the traffic, using an algorithm like round-robin, to one of the...
Django is a great framework for developing fast web applications with python, and it can certainly save you a ton of time if you are using python. It's one of my favorite frameworks that is around right now, and I think they do best at describing why right on their website. "Django, the web framework for perfectionists with deadlines"It's the framework that I choose if I need something up and running, yesterday, but I still want it to be something I would not be embarrassed that I'm the...
As a Software Engineer I'm always keeping up to date with technology and one of the things that helps me do that is book reviews. Right now, I'm reviewing The Book of R: A First Course in Programming and Statistics by Tilman M. Davies. R is a programming language used in statistical computing and has gained in popularity in the recent years due to the explosion of data and its applications like Machine Learning.
It's August 2016 and the Spring Boot team recently released Spring Boot 1.4 ( on July 28th, 2016 ). Some of the biggest improvements and simplifications are around unit and integration testing. We'll take a focused look at two of the newly added features: @MockBean and @SpyBeanThe newly introduced annotation, (@MockBean), adds generalized support for mocking of any Spring bean. If you've used Mockito Annotations before, @MockBean is simliar to @Mock but with Spring support.Suppose we have a simple...
Debian 8 (Jessie) doesn't contain RoundCube in it's repositories. Why, I don't know :) .
In ISPConfig3, Perfect Server, Debian 8, you get SquirrelMail, but I don't like how it looks.
With some trouble setting it up, I managed to configure RoundCube on Debian 8 and make it wokring with ISPConfig3. Used many sources to make it work and decided to create this manual that you’re reading.I presume that you have configured your server with Perfect Server Debian 8 (Apache, BIND, Dovecot, ISPConfig 3) configuraton...
How to initiate git through sshlogin using shh~~~git
$ ssh [email protected]
~~~creating a folder
$ mkdir folder_name
~~~changing to that newly created folder~~~git
$ cd folder_name
~~~initiating as a master branch~~~git
$ git init --bare
~~~changing the windows pack~~~git
$ git config pack.window 0
~~~##step 5 : clone to local machine usingcloning the newly created folder to local~~~git
$ git clone [email protected]
~~~adding the all files which are created
This article will show how to calculate the distance beween two addresses using Google Maps API. Blog.I was looking to an easy way to calculate the distance between two addresses using SQL and Google Maps Distance Matrix API and I found this post from stackoverflow very useful.Here is how I use the Google Maps Distance Matrix API:CREATE PROCEDURE [dbo].[CalculateDistance] (
@ToAddress NVARCHAR(100) = '',
@FromAddress NVARCHAR(100) = '',
@DistanceistanceInKm FLOAT OUTPUT )
One of the most requested features for Microsoft Edge is extensions – and for good reason!Many of us take for granted being able to use browser based plugins such as LastPass’s password manager or extensions for existing applications such as EverNote, OneNote & Skype. One of the first things I noticed when playing with Edge was the lack of a password manager which made everyday use very hard.The omission of extensions in a browser has the potential to severely impact uptake from every day users...
A progress resource is usually a temporary resource that is created automatically by the server to provide status on some long running process that has been initiated by a client. It is used to provide feedback to an end user and point to the results of an operation once it has completed.HTTP is a client/server request and response protocol. It does not provide for server initiated communications. If a client makes a request to a server that is likely to take a long time, e.g. 5 seconds or longer,...