This article was written by Arturo Iglesias, an Adobe Commerce Back-End Developer at Conexio by Nearsure.
The challenge: Ensuring a smooth Adobe Commerce setup and migration
We know from experience that setting up and migrating Adobe Commerce projects is no easy feat. Since it requires a structured approach that ensures performance, long-term maintainability, and more, a poorly planned migration can lead to downtime, performance issues and even security vulnerabilities –all of which can disrupt business operations. That’s why, at Conexio by Nearsure, we follow a systematic review process to proactively identify and address these challenges before they arise.
In this article, we’ll take a deep dive into our process for ensuring seamless Adobe Commerce (also known as Magento) setup and migration experiences.
A structured approach to Adobe Commerce setup and migration
To achieve optimal performance and effective security practices, a comprehensive review of Adobe Commerce projects is absolutely essential. Let’s take a look at our in-house process:
- We begin by accessing the client’s code repository and making sure that the database is properly extracted when necessary. This way, the local environment mirrors the production environment as closely as possible.
- Next, we verify the repository structure, so that the vendor folder doesn’t get pushed to the repository. While this may seem like a basic check, we often find that projects include this folder, which should instead be managed by Composer.
- Once the repository is structured correctly, we move on to setting up the local environment. Using Warden, we configure all the necessary services, identify the Adobe Commerce version, and determine whether an upgrade is feasible. At this point, we make any necessary adjustments to secure compatibility, and the project is installed and validated in a controlled environment.
- Following the installation, we review the app folder and Composer setup. Then, we assess third-party extensions, and where possible, we recommend migrating them to Composer for better dependency management. Another critical step here is synchronizing with sandbox services. This helps to guarantee that all service versions align with the client’s configuration. It’s at this stage that we make any necessary database adjustments.
- After confirming that the environment is properly set up, we push the code and initiate rigorous testing to validate functionality. This ensures that all components work as expected before deployment.
Common issues in Adobe Commerce migration
Often, platform migrations present challenges, especially in database handling and repository structure. One common issue is database migration, where some databases cannot be directly imported to the cloud. In these cases, our database team supports a smooth transition.
Another frequent issue is the improper handling of Composer and vendor folders, because custom code inside the vendor folder can introduce complications and should be avoided. Ensuring that repository management follows best practices helps maintain compatibility and simplifies future updates.
Key areas for Adobe Commerce project reviews
To maintain security, scalability and performance beyond setups and migrations, several key areas have to be evaluated. Let’s explore them!
- One of the most important things to consider is the Adobe Commerce version that’s in use. If an upgrade isn’t immediately possible, then it’s essential that the latest security patches are applied to maintain system integrity.
- The app code and third-party extensions also require thorough review. The app/code directory is assessed for extensions, ensuring they are managed via Composer whenever possible. If any extension contains custom modifications, they are flagged for further evaluation, as these changes can complicate future upgrades.
- Another area to focus on is the front-end performance. Using Lighthouse, we analyze and address performance bottlenecks that may impact the user experience. For instance, security headers are reviewed to verify that the appropriate configurations are in place, helping us be sure that the project adheres to industry security standards.
- Finally, we also review coding standards and code duplication with the goal of keeping a clean and maintainable codebase. Identifying unnecessary code duplication helps reduce complexity and improve the overall maintainability of the project.
Thoroughly reviewing these key areas helps us maintain a secure, scalable and high-performing Commerce project. Regular evaluations or health checks both prevent potential issues and set the foundation for long-term success, making future updates smoother and more efficient.
Adobe Commerce plugins and preferences: Best practices
Both plugins and preferences play a significant role in the flexibility of an Adobe Commerce project, but they must be implemented correctly. We recommend avoiding around method plugins as much as possible, considering they increase stack traces and negatively impact performance. The only valid use case for an around plugin is when the execution of all further plugins and the original method have to be terminated. In most cases, after method plugins provide a more efficient solution.
On the same note, we also recommend using preferences with caution. Overriding entire methods or classes should be a last resort, since this approach can introduce conflicts and reduce maintainability. Whenever possible, alternative extensibility options such as event observers and plugins should be used instead.
Conclusion: Scalable and secure Adobe Commerce projects
To maintain a high-performing and secure implementation, it’s important to take a structured approach to setup, migration and ongoing review. By applying industry best practices, technical teams can easily improve security through regular updates and patches, optimize performance for a seamless user experience, and secure long-term maintainability with a well-structured and scalable codebase.
If your company is looking to optimize your Adobe Commerce implementation, we highly recommend carrying out a detailed project review to identify areas for improvement while keeping smooth transitions to a stable and high-performing system.