Марат Мавлютов - Современный веб как сложная система

860 views

Published on

Марат Мавлютов - Современный веб как сложная система

  1. 1. Марат Мавлютов Инженер по автоматизации тестирования Что такое веб, из чего он сделан, как и почему.
  2. 2. передача и хранение информации
  3. 3. 2500000000 – регулярное число пользователей интернета
  4. 4. Современная карта интернета:
  5. 5. Как мы дошли до такой жизни? (или немного истории)
  6. 6. Военные технологии – двигатель прогресса
  7. 7. ARPANET (Advanced Research Projects Agency Network)
  8. 8. ARPANET (Advanced Research Projects Agency Network) LOGIN
  9. 9. 29 октября 1969 День Рождения Интернета!
  10. 10. 70-е •  Электронная почта
  11. 11. 70-е •  Электронная почта •  Списки рассылки
  12. 12. 70-е •  Электронная почта •  Списки рассылки •  Новостные группы
  13. 13. Карта сети ARPANET
  14. 14. Стандартизация •  Модель OSI/ISO
  15. 15. Стандартизация •  Модель OSI/ISO •  Стек протоколов TCP/IP
  16. 16. Канальный   Физический   Сетевой   Транспортный   Прикладной   Прикладной   Представления   Сеансовый   Канальный   Транспортный   Сетевой   TCP/IP OSI
  17. 17. 80-е • DNS
  18. 18. 80-е • DNS • IRC
  19. 19. 80-е • DNS • IRC • URI/URL
  20. 20. 80-е • DNS • URI/URL • IRC • HTML => HTTP
  21. 21. DNS – domain name system
  22. 22. Схема работы DNS
  23. 23. Язык разметки HTML
  24. 24. Статический HTML
  25. 25. Pros & Cons Преимущества: •  не нужно знать языки веб-программирования •  хорошая кешируемость •  минимальная нагрузка на сервер •  простота переноса Недостатки •  невозможность генерации •  трудная поддержка
  26. 26. Динамический HTML
  27. 27. Этапы формирования •  генерация на стороне сервера •  передача клиенту •  генерация на стороне клиента
  28. 28. Протокол HTTP
  29. 29. 95:~ mavlyutov$ telnet mavlyutov.people.yandex.net 80 Trying 37.9.65.57... Connected to mavlyutov.people.yandex.net. Escape character is '^]'. GET /index.htm HTTP/1.1 <html> <body> <h1>Hello!</h1> <p>This is the simple web page for apache server</p> </body> </html> Connection closed by foreign host. HTTP запрос
  30. 30. 90-е • Браузеры
  31. 31. 90-е • Браузеры • Клиент-серверная модель
  32. 32. 90-е • Браузеры • Клиент-серверная модель • Многоуровневая архитектура
  33. 33. 90-е • Браузеры • Клиент-серверная модель • Многоуровневая архитектура • Одноранговые сети
  34. 34. Браузер
  35. 35. Букет браузеров
  36. 36. Клиент-серверная модель
  37. 37. Pros & Cons Преимущества: •  отсутствие дублирования кода •  все вычисления выполняются на сервере •  все данные хранятся на сервере Недостатки •  single point of failure •  высокая стоимость оборудования.
  38. 38. Что такое сервер?
  39. 39. Сервер Программное обеспечение Аппаратное обеспечение
  40. 40. Программный сервер
  41. 41. Аппаратный сервер
  42. 42. Хостинг: •  выделенный (dedicated)
  43. 43. Хостинг: •  выделенный (dedicated) •  виртуальный (virtual private server)
  44. 44. Хостинг: •  выделенный (dedicated) •  виртуальный (virtual private server) •  разделяемый (shared)
  45. 45. LAMP – джентельменский набор •  Linux •  Apache •  MySQL •  Python/PHP/Perl
  46. 46. Операционная система •  Linux •  Windows
  47. 47. Веб-сервер •  Apache •  nginx
  48. 48. База данных •  MySQL/MariaDB •  PostgreSQL •  MongoDB
  49. 49. Язык программирования •  Python •  PHP •  Perl
  50. 50. Балансировка нагрузки
  51. 51. Round Robin
  52. 52. Облака •  Облачное хранилище данных •  Облачные вычисления
  53. 53. IaaS Infrastructure as a Service
  54. 54. PaaS Platform as a Service
  55. 55. SaaS Software as a Service
  56. 56. Облака
  57. 57. VPN – virtual private network
  58. 58. VPN в интернете
  59. 59. Интернет – очень большой
  60. 60. Как устроен facebook
  61. 61. Огромные объемы данных 1. 500 000 000 активных пользователей 2. 1 000 000 000 сообщений в чате ежедневно 3. 10 000 пар становятся друзьями каждую минуту
  62. 62. Основные принципы: 1. Простота 2. Масштабируемость 3. Открытость
  63. 63. Технологии: PHP + HipHop
  64. 64. Технологии: MySQL + memcached
  65. 65. В итоге:
  66. 66. Про Яндекс
  67. 67. Сервисы Яндекса:
  68. 68. Монетизация
  69. 69. Виды монетизации: •  Подписка
  70. 70. Виды монетизации: •  Разовая покупка услуг
  71. 71. Виды монетизации: •  Продажа виртуальных товаров
  72. 72. Виды монетизации: •  Медийная и контекстная реклама
  73. 73. Медийная реклама в Яндексе
  74. 74. Медийная реклама в Яндексе
  75. 75. Контекстная реклама в Яндексе
  76. 76. Контекстная реклама в Яндексе
  77. 77. РСЯ Рекламная сеть Яндекса
  78. 78. RTB – real time bidding
  79. 79. Мобильное будущее
  80. 80. Марат Мавлютов Инженер по автоматизации тестирования +79651271866 mavlyutov@yandex-team.ru Спасибо

×