Netage Lecture Series 1

2,769 views
2,727 views

Published on

Проектиране на уеб приложения за голямо натоварване. Слайдовете са от първата презентация от Netage Lecture Series.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,769
On SlideShare
0
From Embeds
0
Number of Embeds
58
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Netage Lecture Series 1

    1. 1. Проектиране на уеб приложения за голямо натоварване
    2. 2. Кои сме ние? <ul><li>Дейност: уеб проектиране, дизайн и разработка </li></ul><ul><li>Фокус: големи и сложни уеб проекти </li></ul><ul><li>Начало: 1998 / България </li></ul><ul><li>Екип: 65 </li></ul><ul><li>Клиенти: 170 </li></ul><ul><li>Проекти: 270+ </li></ul>
    3. 3. Защо сме тук? <ul><li>Да споделим опит </li></ul><ul><li>Да се запознаем </li></ul><ul><li>Да пием по бира заедно  </li></ul>
    4. 4. Защо точно тази тема? <ul><li>Приключихме договора с УМГ </li></ul><ul><ul><li>www.topsport.bg </li></ul></ul><ul><ul><li>www.news.bg </li></ul></ul><ul><ul><li>www.money.bg </li></ul></ul><ul><ul><li>www.lifestyle.bg </li></ul></ul><ul><ul><li>www.vsi4ko.bg </li></ul></ul><ul><ul><li>international.news.bg </li></ul></ul><ul><ul><li>www.ibox.bg </li></ul></ul><ul><li>Нарастващ брой запитвания за “уеб портали” </li></ul>
    5. 5. Малко история <ul><li>Запитването </li></ul>
    6. 7. Малко история <ul><li>Запитването </li></ul><ul><li>Подхода </li></ul><ul><ul><li>custom framework </li></ul></ul><ul><ul><li>единна платформа </li></ul></ul>
    7. 8. Малко история <ul><li>Запитването </li></ul><ul><li>Подхода </li></ul><ul><ul><li>custom framework </li></ul></ul><ul><ul><li>единна платформа </li></ul></ul><ul><li>Резултати </li></ul>
    8. 9. Резултати <ul><li>Администратори: 100 </li></ul><ul><li>Материали: 500 / ден </li></ul><ul><li>Общо материали: 270 000 </li></ul><ul><li>Коментари: 10 000 / ден </li></ul><ul><li>Pageviews: 650 000 / ден </li></ul><ul><li>Рекламни показвания: 3 000 000 / ден </li></ul>
    9. 11. По същество (съдържание) <ul><li>Що е то? </li></ul><ul><li>Проблеми </li></ul><ul><li>Решения </li></ul><ul><li>Въпроси и дискусия </li></ul>
    10. 12. Голямо натоварване / Performance <ul><li>Какво разбират клиентите под “Искам сайта ми </li></ul><ul><li>да работи добре при голямо натоварване”? </li></ul><ul><li>Availability </li></ul><ul><li>Scalability </li></ul><ul><li>Response time </li></ul>
    11. 13. Често срещани проблеми <ul><li>База данни: ограничен брой връзки към базата </li></ul><ul><li>Уеб сървър: ограничен брой едновременни заявки </li></ul>
    12. 15. Решаване на проблеми с базата <ul><li>Купуваме по-мощен ДБ сървър </li></ul><ul><li>Клъстерираме базата данни </li></ul><ul><li>Кешираме съдържанието </li></ul>
    13. 16. Техники за кеширане на съдържанието <ul><li>Кеширане на целия request (цяла страница) </li></ul>
    14. 17. Техники за кеширане на съдържанието <ul><li>Кеширане на целия request (цяла страница) </li></ul><ul><li>Кеширане на резултатите, които се връщат от базата </li></ul>
    15. 18. Техники за кеширане на съдържанието <ul><li>Кеширане на целия request (цяла страница) </li></ul><ul><li>Кеширане на резултатите, които се връщат от базата </li></ul><ul><li>Кеширане на отделни автономни части от съдържанието </li></ul>
    16. 19. … кеширане на отделни автономни части от съдържанието
    17. 20. Проблеми при кеширане на съдържанието <ul><li>Актуалност на данните </li></ul>
    18. 21. Проблеми при кеширане на съдържанието <ul><li>Актуалност на данните </li></ul><ul><ul><li>Инвалидация базирана на време </li></ul></ul>
    19. 22. Проблеми при кеширане на съдържанието <ul><li>Актуалност на данните </li></ul><ul><ul><li>Инвалидация базирана на време </li></ul></ul><ul><ul><li>Инвалидация базирана на събития </li></ul></ul>
    20. 23. … инвалидация базирана на събития
    21. 24. … инвалидация базирана на събития
    22. 25. Проблеми при кеширане на съдържанието <ul><li>Актуалност на данните </li></ul><ul><ul><li>Инвалидация базирана на време </li></ul></ul><ul><ul><li>Инвалидация базирана на сигнали </li></ul></ul><ul><li>Брой на кеш файловете </li></ul>
    23. 26. ... разпределяне на кеш файловете <ul><li>/cache/ 2 / 1 /211m.php </li></ul><ul><li>/cache/2/5/255-BLOCK-MOST-COMMENTED.php </li></ul><ul><li>/cache/2/5/256-BLOCK-MOST-VIEWED.php </li></ul><ul><li>/cache/2/ 4 /2 4 7-BLOCK-TOP-MATERIAL.php </li></ul>
    24. 27. Решаване на проблемите с уеб сървърите <ul><li>Клъстър от уеб сървъри: load balancer, squid </li></ul>
    25. 28. ... клъстър от уеб сървъри
    26. 29. Решаване на проблемите с уеб сървърите <ul><li>Клъстър от уеб сървъри: load balancer, squid </li></ul><ul><li>Memcached – съхраняване на потребителската сесия на едно място </li></ul>
    27. 30. Решаване на проблемите с уеб сървърите <ul><li>Клъстър от уеб сървъри: load balancer, squid </li></ul><ul><li>Memcached – съхраняване на потребителската сесия на едно място </li></ul><ul><li>Споделен файлов сървър </li></ul>
    28. 31. ... споделен файлов сървър
    29. 32. Решаване на проблемите с уеб сървърите <ul><li>Клъстър от уеб сървъри: load balancer, squid </li></ul><ul><li>Memcached – съхраняване на потребителската сесия на едно място </li></ul><ul><li>Споделен файлов сървър </li></ul><ul><li>Отделен домейн за статичното съдържание </li></ul>
    30. 33. И да припомним за какво говорихме
    31. 34. Последно <ul><li>Въпроси? </li></ul><ul><li>Идеи? </li></ul><ul><li>Коментари? </li></ul>
    32. 35. Благодаря за вниманието! <ul><li>Георги Иванов </li></ul><ul><li>[email_address] </li></ul><ul><li>Венера Александрова </li></ul><ul><li>[email_address] </li></ul><ul><li>www.netage.bg </li></ul>

    ×