Crafting a microservice that fits your needs
Blog post from Upsun
Facing the challenge of modernizing an aging Drupal monolith while addressing user abuse, a development team opted to implement a microservice architecture, ultimately creating a Symfony-based service called Know Your Customer (KYC). This microservice approach allowed for faster iteration and deployment of anti-abuse features without adding complexity to the existing monolithic system. The team employed PHP with the Symfony framework, leveraging tools like PHPUnit, GitLab CI/CD, and various Symfony bundles to build and maintain the service. By focusing on a small, independent service, they achieved rapid releases and resource savings while addressing the need for user identity checks and risk assessment. Despite the benefits, challenges included maintaining data sync with the source of truth and managing the operational overhead of a distributed system. The team emphasized the importance of starting small, keeping service ownership clear, and investing in logging and tracing to manage the complexity of microservices effectively.