SymfonyDay 2017

If you are a Symfony developer you can’t miss the annual SymfonyDay conference in Italy. It’s always been a great day to listen to interesting talks and do some networking. As Madisoft we strongly believe both in this amazing framework and in such events. So, also this year, we decided to…

Provisioning Playbooks

In the previous article we showed you how we created our infrastructure as code. This article describes how to configure services within our EC2 instances.  Provision Backend Let’s start with a bash script to run the playbooks:

Here is the playbook used to configure backend services:

Let’s focus on php…

Infrastructure scripts

In the previous article we described the reasons that made us change the provider.  In this article we will describe how we built our infrastructure as code. As a first step let’s create a bash script to run the playbook:

With the flexibility of AWS & Ansible we can easily craft an isolated…

Nuvola: a tale of migration to AWS

In this series of articles we will describe our migration experience to AWS. Why a migration? Our old provider had limits. We had to overcome. In particular: No automation No flexibility No autoscaling If we wanted to grow it was necessary to migrate to a provider with these features. Need…

Method order assertion in PHPSpec: Deferred Expectations

Disclaimer This post title can be misleading. Method order is just an implementation detail that should not be tested as PHPSpec philosophy is to test your public API, not the implementation as it would lead to fragile tests. Fundamentalists might say that following example should not be performed in PHPSpec but with…

Symfony sharding

In a previous post we’ve seen how leverage Doctrine sharding functionalities. But how can we tell our app to use a specific shard? A common web app has usually at least two sources: http requests and cli commands. Let’s see one at the time. Http request As you already know HTTP is a…

Doctrine sharding

In the previous article we explored why sharding by tenant is a very good solution for us. In this article we dig into how to divide our Symfony app by shard. Doctrine We chose Doctrine as our ORM so let’s see what it offers to us. First of all you have to…

Data migration to AWS

In this article, I’ll tell you how we migrated our databases from our previous provider to AWS RDS. Our previous DB infrastructure was already in the cloud and the entire db was sharded, so we had about 350 GB of data split in about 1000 databases. Want to know more about…

Madisoft speaks at AWS Summit

We are very proud to have been invited by Amazon at AWS Summit Milan 2017 as speakers. Our speech will focus on how we’re using AWS RDS to leverage our relation data. As you may already know, our software Nuvola is a data-heavy SaaS and we currently manage more than…

RDS infrastructure automation with Ansible

In this article we are going to describe how we realized our RDS infrastructure using Ansible as automation tool. We’ve completely avoided using AWS GUI, both for implementation and management activities. Our aim was to develop a parametric infrastructure, able to adapt to all of our projects simply by changing few parameters in…

1 2 4