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…

Symfony form pills – form type options

Today we are going to tackle a problem that I’ve recently faced with Symfony form types. Scenario: I need a choice type of a certain entity (Foo) with values that follows a certain logic

I’ve built up a FooChoiceType because I don’t want to inject fooAdapter in each form where I’m…

Symfony and multi-tenant apps: sharding

In part 1 of this series we stated that Nuvola is a multi-tenant software and using a single db for every tenant can quickly become a problem as your data grow. Let’s dig a bit about pros and cons about multi-tenant sharding. Pros Scalability Splitting each tenant data in its storage can easily…

The subtle difference of Prophecy doubles

Did you know that “under the hood” PHPSpec use Prophecy as library to create doubles? If you did not, now you do! If you read Prophecy documentation you may end up with some questions, so this guide is meant to be a quick tutorial to let you start working with the library:…

Symfony and multi-tenant apps: Nuvola

This article starts a series of posts regarding a case-study about Symfony and multi-tenancy. Subject of the case-study is our flagship software Nuvola, a multi-tenancy product for schools, used since 2013 by more than 1 thousands Italian schools. Nuvola let them fulfill their administrative tasks, teachers completely accomplish their work online (grade…

SymfonyDay Italy: videos

Hello everybody, we are pleased to announce that finally videos of SfDayIT2016 have been posted by GrUSP onto Vimeo channel. If you don’t know that we were selected as speakers for that event, well, now you are aware  😀 Below you can find Matteo’s talk about scaling with Symfony (we suggest to read…

1 2 3 4