Answer the question
In order to leave comments, you need to log in
Need advice on high load projects
Dear habra community!
Sorry if I'm posting in the wrong place.
I really need advice from a specialist in high-load projects. At the moment, I am developing a project with a team of programmers, which must withstand 1000 online visitors. Experience / knowledge of developing high-load projects is not enough, so I would be very grateful if a specialist who had experience in creating high-load projects and who can help with an online consultation (for example, via Skype) can help with the following:
- How to properly organize the PHP architecture?
— How to properly organize the MySQL database architecture?
I would be very grateful and ready to pay the consultant for the time spent.
Thank you!
Answer the question
In order to leave comments, you need to log in
The project of the training direction - as an analogue I can cite as an example lingualeo.ru
/ I don’t know if this will be the answer - a little about the project:
- Registration of people who will be trained;
— Different levels of access to materials;
- Large archive of multimedia files;
— Personal pages, interaction between students and teachers;
- Some social functions (wall, private messages, likes) We
start from the fact that the project architecture will be MVC. We need a person who will not solve our problems, but who will tell us how best to do it (he will direct him in the right direction, and then we will study ourselves):
- How to properly organize the PHP architecture (what are the pitfalls, maybe hacks)? What class architecture should be applied to MVC to improve it? Perhaps there are better architectures?
How to optimize database queries?
— Optimization of the database itself (internal and foreign keys)
— Optimization of PHP scripts
1000 online? This does not say anything, for example, and in general it does not pull on a highload under any sauce.
For high load, you can use the following architecture:
front end
nginx + php-fpm
mysql - slave servers (required number)
For static files - a separate server
Caching - memory_cache (several levels)
back end - apache + php
mysql - master server
In general, 1000 people really nothing
To answer your question, you need to know the specifics of your "1000 visitors" - either they peacefully read the news, or they are looking for a partner from a database of en millions of profiles, or they communicate in an online chat.
If your users perform one action per minute, then one server will survive, with php-fpm behind nginx. (unless, of course, everything will be done on a heavy framework). If they update the page like crazy (or have lively conversations in real-time chat), you should think about moving the functionality to java.
And in general - write to your personal mail, I will help in any way I can. Worked as an optimizer (not one that rewrites texts :)) on a dating site, the load was more than 5 million per day
Search the Internet for Alexey Rybak's speeches at various conferences - PhpConf, Highload, etc.
He constantly talks about the architecture of highly loaded services there (using badoo as an example).
Well, anyway, you can read topics on Habré about general things - architecture, caching, etc., you can ask about specific things in Q&A, well, or in a personal, for example, I will help in any way I can.
Good luck to you.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question