Blockchain systems have seen much growth in recent years due to the immense potential attributed to the technology behind these systems. However, this popularity has outlined a critical scalability issue that most blockchain systems are now confronted with. With their increasing popularity comes an increasing amount of load on the system. Several scaling solutions that modify either the functioning of the underlying protocol or that build on top of them have already been proposed; however, each of these solutions comes with their advantages and disadvantages. This paper aims to survey the current state-ofthe-art of rollups as a scaling solution. We discuss the mode of operation of the different types of rollups, outline state-of-the-art implementations of each type together with their features and limitations. We also conduct a performance analysis comparing these implementations. Finally, we outline avenues for future research around rollups as a scaling solution.