If you like DNray Forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...

 

Server Configurations for High Activity Projects

Started by parmothebra, May 23, 2023, 06:11 AM

Previous topic - Next topic

parmothebraTopic starter

What would be the ideal server setup for my project? The project is a blend of CRM and to-do list that targets several thousand users with constant activity. It is evident that virtual hosting won't cut it in this case, and we don't have the finances for hardware yet. Therefore, renting a server seems like our best option.

However, to avoid overspending on unused resources, I would appreciate insights from individuals who have tackled comparable tasks on the optimal server configuration.
  •  

diysolarjimmy

The load capacity of the server is yet to be determined, and it's necessary to test it independently since no one will provide the information.

Virtual hosting is not a viable choice in this scenario, but it's unclear why. However, virtual hosting could be the most optimal choice as it allows access to the necessary capacity without investing in expensive hardware. Once the load is calculated and all the bugs are fixed, it's possible to consider transferring to one's hardware to save costs.
  •  

anika.thakur

To avoid running into issues, it's important to conduct load testing before running any project. One recommended way to carry out this test is by taking advantage of the sandbox feature of your project using Apache Jmeter or its equivalent software. You can create a template of how users interact with your project, including button clicks and delays among other actions. After a test run involving 10, 50, or 100 users, you should be able to determine the amount of CPU, memory, and I/O required for scaling up.

Load testing is a vital aspect of any project development lifecycle that should not be overlooked. An excellent test result gives you confidence in your system's ability to handle user traffic while giving you an insight into potential bottlenecks.
  •  

yangss01

You can take advantage of the chance to complete the task without spending a lot of money by using the Cloud service's trial period for only $1 - https://vps.ua/cloud-hosting/. With this service, you have the flexibility to customize your server, choose the operating system that works best for you, and adjust the amount of server resources as needed.
  •  

seennyrob

To ensure a seamless user experience for your several thousand users, I recommend a cloud-based infrastructure that can scale on demand. This will enable you to dynamically allocate resources as your user base grows, without breaking the bank. Here's a suggested server setup to get you started:

Server Configuration:

CPU: A minimum of 4-6 CPU cores (e.g., Intel Xeon or AMD EPYC) to handle the constant activity and concurrent user requests. This will provide a solid foundation for your application's performance.
RAM: 16-32 GB of RAM to ensure efficient handling of user data, caching, and background tasks. This will help reduce the load on your database and improve overall system responsiveness.
Storage: A fast SSD-based storage solution (e.g., NVMe or SATA SSD) with a minimum capacity of 500 GB. This will provide ample space for your database, files, and other project assets.
Database: A robust relational database management system like MySQL or PostgreSQL, optimized for high concurrency and performance. Consider using a database clustering solution to distribute the load and ensure high availability.
Operating System: A 64-bit Linux distribution (e.g., Ubuntu, CentOS, or Debian) that's optimized for server workloads and provides a stable foundation for your application.

Additional Considerations:

Load Balancing: Implement a load balancing solution (e.g., HAProxy, NGINX, or Amazon ELB) to distribute incoming traffic across multiple servers, ensuring no single point of failure and improved responsiveness.
Caching: Integrate a caching layer (e.g., Redis, Memcached, or Varnish) to reduce the load on your database and improve page load times.
Security: Ensure robust security measures, including SSL/TLS encryption, regular security updates, and a web application firewall (WAF) to protect against common threats.
Monitoring and Analytics: Set up monitoring tools (e.g., Prometheus, Grafana, or New Relic) to track performance metrics, identify bottlenecks, and optimize your server configuration accordingly.

Cloud Providers:

When selecting a cloud provider, consider the following factors:

Scalability: Look for providers that offer easy scalability, so you can quickly adapt to changes in user activity.
Pricing: Choose a provider that offers competitive pricing, with discounts for long-term commitments or reserved instances.
Support: Opt for a provider with 24/7 support, comprehensive documentation, and a strong community presence.

Some popular cloud providers that fit the bill include Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), and DigitalOcean.
  •  


If you like DNray forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...