“SolidService.link” is designed using the SOLID principles. Through these five principles, our services are designed to be maintainable and extensible (they can allow the addition of capabilities and functionality).
SOLID is a mnemonic acronym for the five design principles in software development, i.e.:
Single Responsibility Principle - This principle states “There should never be more than one reason for a class to change.”
Open/Closed Principle - This principle states “Software entities should be open for extension but closed for modification.”
Liskov Substitution Principle - This principle states “Functions that use pointers or references to base classes must be able to use objects of derived classes without knowing it.”
Interface Segregation Principle - This principle states “Many client-specific interfaces are better than one general-purpose interface.”
Dependency Inversion Principle - This principle states “Depend upon abstractions not concretions.”
Using these principles, Solid Service offers state-of-the-art tech with serverless infrastructure design. Going serverless means that users no longer have to scale, maintain, and provision servers to run their applications, databases or storage systems.
This new serverless infrastructure design has numerous benefits for the user. While traditional cloud-based or server-centric infrastructure has been the go-to for a while, serverless computing has its benefits.
As you focus on design, deployment, and delivery, we worry about management, capacity provisioning, and hardware maintenance. This reduces the investment necessary in DevOps freeing up time and resources for you to create and expand your applications without worrying about capacity.
With a pay as you go plan, you are only charged for what you use. Solid Service provisioning is dynamic, precise, and in real time. You no longer need to predict how much server-capacity you need, simply pay as you go for server capacity you actually use.
Imagine the convenience of scaling automatically as usage increases? Solid Service is able to handle an unusually high number of requests just as easily as it processes a single request from a single user. With a traditional structure, the fixed amount of server space can be overwhelmed by a sudden increase in usage.
You do not need backend configuration to release your creations.you can choose to upload one function at a time or upload the entire code all at once. This allows you to quickly make updates. Fix. patch, or add new features to your application, without necessarily making changes to the whole application.
By eliminating the origin server, we decrease latency so that your code can run from anywhere.
Applications are not a monolithic whole, they are a collection of smaller parts that run together. Each small part that makes up an application is referred to as a microservice. It performs one service only, runs independently of other microservices, stores its own data, and operates in its own environment.
Constructing your applications using microservice architecture has its advantages :
One microservice breaking or crashing does not necessarily affect other parts of your application. This means that your application can still run as you fix the broken microservice, offering your users a better experience.
Scalability for the entire application can be a nuisance. Using microservices allows you to scale only the microservices that get a lot of usage. It saves you a lot of time and resources without compromising on user experience.
You no longer have to update the entire application all at once. You can update different features one at a time. Consistent updates ensure that your application runs without any issues. By updating one feature at a time, you can concentrate on the said feature, ensure that it is optimally performing, and roll it out with confidence knowing that it is running at its best.
Different microservices can be written in different languages and have their own libraries, which makes work easier for developers. This is especially useful if you are working as a team with developers who have different specialisations. It makes work easier and faster, therefore providing better results for the entire team.
Amazon Web Services offers a wide range of web solutions. AWS is “the world’s most comprehensive and broadly adopted cloud platform.” By using the leading cloud platform, we ensure that our clients are connected to the most flexible and secure cloud computing environment.
AWS is built to satisfy the requirements for high sensitivity organisations like banks and the military, so you can rest assured that your work is protected at all times. With an end-to-end approach, your security comes first.
AWS has the latest technologies, allowing our users the opportunity to use cutting edge technology at a continually accelerating pace of innovation.
Solid service is easy to use regardless of your operating system, programming language, web application platform or database, you can load all the software and services that your application requires making migration for existing applications easy, while providing options for building new solutions.
For all our projects, services and middlewares, we use different technologies that allow us to create powerful, secure, and user-friendly software solutions for our clients. The technologies used in our projects are listed in the home page of each of them. Here is an example with the main technologies that we use :
Route53 for DNS
Certificate Manager for SSL/TLS
Cloudfront for WebApp router CDN (load assets)
S3 for file storage
API-Gateway for HTTP API router (API only)
Lambda serverless hosting
RDS Aurora MySQL for SQL database
DynamoDB for NoSQL DB & Caching
SES for emails
SNS to chain services together (AKA Async)