Форум программистов, компьютерный форум, киберфорум
Наши страницы
netBool
Войти
Регистрация
Восстановить пароль
Рейтинг: 5.00. Голосов: 2.

На чем пишутся сайты?

Запись от netBool размещена 25.03.2018 в 15:26

Новички часто задают этот вопрос. На чем написан гугл и яндекс? Какой язык или технологию учить, чтобы быть востребованным? Или на чем писать стартап, который в случае успеха сможет держать огромные нагрузки? И что начать учить сейчас, чтобы не влететь в будущем?

Такие вопросы интересуют каждого неравнодушного обывателя, вставшего перед выбором. Когда-то этот вопрос заинтересовал и меня. В качестве стэка я выбирал между python&Django, ASP.NET и множественными фрэймворками php и, остановившись на джанго, засомневался, а выдержит ли он серьезные нагрузки? Достаточно ли он безопасен? И тогда я решил найти известные высоконагруженные сайты на нем в сети. Первое, на что я наткнулся, была статья на хабре. На самом деле это был перевод англоязычной статьи от 2014 года и у меня появилось много сомнений в объективности этих данных. Во-первых, сайты постоянно переписываются. И возможно, некоторые из них действительно начинались на джанго, но где подтверждения, что они там остались и сейчас? Во-вторых, является ли в них джанго основным фреймворком? Или это просто какой-то не основной дополнительный сервис, на который и нагрузки то не приходится?

И тогда вооружившись wapalyzer-ом и поддержкой builtwith.com начал свое собственное исследование бэкэнд-технологий самых популярных, нагруженных и защищенных сайтов в сети.

Начну, я пожалуй с php. Это действительно самый распространенный язык для веб-разработки. У меня сложилось впечатление, что доля сайтов на php процентов 90. И по началу я хотел вообще опустить его в этом обзоре с оговоркой, что все сайты, которые не попали сюда, написаны на php. Фактически сейчас, если кто-то задает вопрос по серверной веб-разработке вне тем форума без упоминания этой технологии, то по дефолту подразумевается именно php. И честно говоря до этого я думал, что php берет количественно, а не качественно и серьезных сайтов (vk и facebook - типа исключения) на нем просто не делают. Но меня ждало разочарование...

Начну с настоящего форума, где мы постоянно делимся и получаем знания. На данный момент - это пожалуй самый посещаемый в рунете ресурс по программированию (более 150 тыс./ч. в сутки). Так же на php написан и habrahabr. Но еще больше меня поразили росельхозбанк (1с-битрикс) и газпромбанк (1с-битрикс).
Мало того, что они сделаны на php, но последние еще и на битриксе. Ребята, а ведь это банки! В т.ч. онлайн-банки, где защита от атак должна быть железобетонной. После них я даже не знал, хуже ли относиться к этим банкам или лучше к php/bitrix. Ну да ладно, не буду томить дальше. Вот перечень некоторых сайтов на

PHP:

  • lamoda.ru
  • citilink.ru
  • price.ru
  • DROM.RU
  • gismeteo.ru
  • infox.ru - yii - 500тыс ч/сут
  • ren.tv - drupal - 660тыс ч/сут
  • svyaznoy.ru - yii(осн)/bitrix
  • dns-shop.ru - yii
  • technopoint.ru - yii
  • superjob.ru - yii
и много других сайтов на битрикс и yii. На пхп написаны почти все новостные сайты и банки

Мало? И вы не уверены, что php - действительно серьезный язык, у которого есть будущее?
Значит, я рано остановился:
  • vk.com (на начало 2018г посещаемость - 30млн чел/сут.)
  • hitachi.com (есть ли кто, кто не знает имя этой фирмы?)
  • facebook.com (без комментариев)
  • yahoo.com (без комментариев)
  • amazon.com (вообще без комментариев)
  • MorganStanley.com (один из самых авторитетных финансовых гигантов США)
  • wordpress.org (блого-сайт от разработчиков самой популярной cms - 500 тыс. посетителей в сутки)

и много-много других. В общем выводы. Настоящее у php есть точно. На нем написаны одни из самых наруженных сайтов сети, мировые гиганты, такие как амазон, стоимостью миллиарды долларов. Писать на нем точно не стыдно

Из cms попадались часто drupal. Кстати, ни одного высоконагруженного сайта на joomla и wordpress (кроме wordpress.org - кстати wordpress.org - неплохой показатель)

Ну что? Имеет ли смысл говорить о чем-то еще, когда есть php?

После всего этого перечня может сложиться впечатление, что серьезные сайты пишутся только на php. Но это в корне не верно

Итак, представлю asp.net. Эта технология, которая меня интересовала больше всего после джанго, тк я неравнодушен к C# с его строгой типизацией и удобными бесплатными инструментами от Microsoft. На нем очень удобно вести большие проекты. При чем все ошибки, если они есть, будут сразу на виду и будут легко исправлены. Кроме того, скорость работы .NET на порядок (если не на 3 порядка) превышают скорость работы любого интерпретируемого языа (в т.ч. php). Итак, начну с builtwith.com. Он, конечно, не может похвастаться нагрузкой (5т/день согласно pr-cy.ru), но зато может неплохим функционалом.

ASP.NET


Сайты рунета:
dnevnik.ru - (сервис онлайн-дневников по всей России от Краснодара до Петербурга) 30тыс ч/день
finanz.ru - (новости финансов - 50тыс ч/сут)
computermarket.ru - интернет-магазин 10тыс/д
ozon.ru (некогда популярный интернет-магазин. Один из первых федеральных в России. Посещаемость сейчас - 40тыс ч/с)
sql.ru (форум о программировании)
domofond.ru - 250тыс ч/сут(!)
Издательский дом "Коммерсант" - 550т/сут!!! (top1000-ru)
nalog.ru (частично, но 455тыс в сут!!)
bcs-express.ru (банк и брокерские услуги)

Международные:
  • similarweb.com - 65т/д
  • discovery.com
  • stackoverflow.com - (согласно alexa - 30 т/сут, не уверен, что соответствует действительности)
  • microsoft.com - 450 тыс/сут
  • dell.com
  • bankofamerica.com /частично
  • bing.com - второй после гугла поисковик в США (посещаемость можете себе представить)


JAVA


О серьезном вкладе java в EE решения можно судить по этим трем сайтам: ok.ru (на начало 2018г 10 млн ч/сут), sberbank.ru и ali-express.com. Так же на java сделаны сервисы google: analitics и search console

Так же в этот список можно внести:
  • discoverychanel.ru
  • втб //(частично asp?)
  • intel
  • сименс
  • ebay.com
  • service.nalog.ru
  • bankofamerica.com /частично
  • тинькофф-банк

NODE.JS (EXPRESS)

  • rambler.ru - express node.js - 2млн/сут
  • avto.ru - express -//- - 480 т/сут
  • forbes.com
  • paypal.com - частично на Express, частично на J2EE, частично на php
  • IONICFRAMEWORK.COM

ruby (on rails)

  • blizko.ru - 200 т/д
  • codepen.io !!!
  • github.com
  • какой-то банк из топ 100, не помню какой. Но это меня удивило

lua
  • 56.COM - видеохостинг. Больше 1млн/сут (OpenResty) - не быстр))
  • serpstat.com

Ну и наконец:

Django

Сперва я совсем расстроился, так как не нашел подтверждению, что сайты из вышеприведенной статьи используют джанго, даже напротив. Напротив, даже были опровержения. Например, discovery - это java/asp стэк. Там нет и признаков python, тем не менее он был в этом списке. В том же списке google.com. Признаков использования джанго в гугл я не нашел. Что самое интересное, я не сомневаюсь, что они его используют, но в каком-нибудь второстепенном сервисе. Аргумент о том, что гугл написан на джанго как минимум высосаны из пальца. Там же theguardian.com. Ребята! Ну после этого я вообще к подобным спискам доверие потерял:

Цитата:
В апреле 2011 онлайн-версия газеты The Guardian была переведена с Java на Scala[10].
Хочется спросить, где там джанго, ребята? И builtwith, на который ссылается автор хабрастатьи, никаких признаков ни джанго ни питона в Guardian не нашел

Постоянно фигурирует ютуб, но подтверждания, что ютуб сейчас использует именно джанго, я не нашел нигде. Вполне вероятно, в процессе развития видеогиганта там от джанго осталось одно название, а все остальное переписано либо на cython либо на jython. Но начнем с малого: djbook.ru (5тыс ч/д - не густо). Затем я случайно наткнулся на Продокторов.ру (100 т - я.метрика информер - уже неплохо! При чем сайт работает довольно сносно). И долго думал, что это такая белая вопрона рунета. Но не... Далее мне попался ГоворитМосква (120 т ч/сут - согласно pr-cy), потом spravker.ru - 152016 тыс ч/день (рамблер) и jsprav.ru и наконец rutube.ru - 60тыс ч/д.

instagram, который везде приводят, как образец django-продакшна оказался сделан на джанго частично. В pinterest.com мои плагины определили только язык программирования - python. То же самое я мог сказать и про дискус, но на их сайте наткнулся на блог, в котором вряд ли писали неправду. Никаких опровержений мои плагины не выдали, так что я спокойно зачислил его в свою джанго-коллекцию. Так же мои сомнения по тихоньку растаяли и по поводу pinterest.com. А значит на джанго вполне можно делать высоконагруженные сайты, которые могут выдерживать нагрузки киберфорума и выше Ура

Кроме того на джанго написаны:
  • jsfiddle.net
  • mozilla.org (research - на wordpress(почти не посещается. В месяц 30т/человек), а addons на джанго (полмиллиона посетителей в сутки по спайметрике))
  • minecraft.net - (30 тыс ч/сут согласно pr-cy - не уверен, что объективно, по SimilarWeb.com - 600т/мес)
  • bitbucket.org - (45тыс/д согласно pr-cy - alexa, тоже не уверен)
  • yipit.com - 5т/д (примерно) по SimilarWeb.com
  • disqus.com - в блоге написано о джанго: (pr-cy: 50т/д, SimilarWeb.com: 900т/д)

Посещаемости некоторых зарубежных сайтов мной могут быть приведены неверно, я сильно не углублялся. Брал статистику в основном с alexa, а она часто приводила довольно странные цифры, не совпадающие с другими счетчиками. Но к сожалению, эти "другие" счетчики не всегда открыты, так что приходилось иметь дело с тем, с чем имел

Между тем стоит отметить, что посещаемость pinterest на момент написания статьи - более 12 млн поситителей в сутки согласно спайметрикс (вот тебе и питон)

Какие выводы? Что пожелать на последок?

Все технологии заслуживают уважения. Стоит отметить, что Java в основном любят серьезные компании с именем, а на python, например, я не нашел ни одного сайта из банковской сферы. Казалось бы, банкиры не очень доверяют опенсорсным технологиям... Но это не верно, ведь почему-то многие из них доверяют php.

В общем, считаю, любую технологию можно использовать с умом и довести до совершенства, и тогда она сможет решать любые задачи

Это был весьма краткий обзор. К сожалению, на бОльший у меня нет времени. Если есть какие-то мысли и предложения, пишите в комментариях. Надеюсь, информация будет полезна
Размещено в Без категории
Просмотров 783 Комментарии 7
Всего комментариев 7
Комментарии
  1. Старый комментарий
    Аватар для Usaga
    Я ну очень сомневаюсь, что такие монстры как VK, Amazon, Facebook работают только на одном PHP. Это гибридные системы, где PHP только на фронтэнде (т.е. вся вебная часть) крутится, а всё остальное - на С++, Java, Ruby, Go, Phython и один чёрт ещё знает на чём...
    Запись от Usaga размещена 26.03.2018 в 05:50 Usaga вне форума
  2. Старый комментарий
    Аватар для netBool
    Цитата:
    Сообщение от Usaga
    Я ну очень сомневаюсь, что такие монстры как VK, Amazon, Facebook работают только на одном PHP. Это гибридные системы, где PHP только на фронтэнде (т.е. вся вебная часть) крутится, а всё остальное - на С++, Java, Ruby, Go, Phython и один чёрт ещё знает на чём...
    Насколько я знаю Facebook остался на php, но полностью под себя перепилили интерпретатор, оптимизировали, добавили функций. Примерно такая же история с vk + они помимо php используют node.js&mongodb и вместо ajax клиент-серверное взаимодействие, но основная часть кода остается на php, и вроде как переписывать ее не собираются

    По поводу амазона тут
    Цитата:
    Most part of amazon has been built using Amazon Webstore ( which is basically written in PHP on Zend Framework).
    Впрочем это нисколько не исключает, что они используют другие технологии, тот же J2EE, python и пр. Но мне интересно было то, на чем написана основная кодовая база, вокруг которой крутятся все остальные. И по поводу амазона это все-таки , судя по builtwith, php, хотя вполне возможно в связи с их нагрузками, тоже с переписанным, допиленным и оптимизированным интерпретатором

    Цитата:
    Это гибридные системы, где PHP только на фронтэнде (т.е. вся вебная часть) крутится
    Как правило, одна страница рендерится с помощью какой-то одной технологии бэкенда. Просто разные сервисы (например, разделенные на домены третьего уровня, как-то: market.yandex.ru, news.yandex.ru, translate.yandex.ru и прочее) бывает, что делят на разные стэки (это насколько я заметил, но, может быть, я чего-то не знаю )
    Запись от netBool размещена 26.03.2018 в 09:01 netBool вне форума
  3. Старый комментарий
    PHP - это back-end... Ибо PHP серверный язык! Front-end - это клиентская часть сайта... В целом вся бложная статья - это риторический вопрос на тему: "Как быть и что делать?"... На тему того, как пишутся сайты и на чём можно рассуждать бесконечно долго... Человек, который хочет заниматься разработкой всерьёз не будет спрашивать: какой язык лучше? Или на чём написан сайт? Подобные вопросы задают люди, которые просто бабла хотят по лёгкому срубить - либо в жизни себя не нашли, в любом случае для 99% из всей массы - разработка так и останется увлечением... Поэтому на вопрос, что стоит учить? - Надо отвечать вопросом: зачем тебе это нужно? Дабы сэкономить время ламера, а главное своё собственное...
    Запись от Fedor92 размещена 30.03.2018 в 12:56 Fedor92 вне форума
  4. Старый комментарий
    Аватар для Usaga
    Под бек-эндом, в данном случае, понималась вообще вся вебная часть системы. В крупных проектах бекэнд - не только обработка запросов от клиентов, но и ещё внутренние сервисы бизнес-логики.
    Запись от Usaga размещена 30.03.2018 в 14:02 Usaga вне форума
  5. Старый комментарий
    Цитата:
    Под бек-эндом, в данном случае, понималась вообще вся вебная часть системы.
    Тем не менее зёрна от плевел надо отделять... Понятно Вам - понятно мне, автору блога, но в головах у "начинающих", если они будут читать конечно будет явная путаница... А в целом, если память не изменяет, то Цукерберг и компания называли цифру в 80%... 80% кода facebook - это php, причём они рьяно ратовали за совершенствование языка и разработку новых стандартов...
    Запись от Fedor92 размещена 30.03.2018 в 16:44 Fedor92 вне форума
    Обновил(-а) Fedor92 30.03.2018 в 16:46
  6. Старый комментарий
    Аватар для netBool
    Цитата:
    Сообщение от Fedor92 Просмотреть комментарий
    В целом вся бложная статья - это риторический вопрос на тему: "Как быть и что делать?"... На тему того, как пишутся сайты и на чём можно рассуждать бесконечно долго... Человек, который хочет заниматься разработкой всерьёз не будет спрашивать: какой язык лучше? Или на чём написан сайт? Подобные вопросы задают люди, которые просто бабла хотят по лёгкому срубить - либо в жизни себя не нашли, в любом случае для 99% из всей массы - разработка так и останется увлечением... Поэтому на вопрос, что стоит учить? - Надо отвечать вопросом: зачем тебе это нужно? Дабы сэкономить время ламера, а главное своё собственное...
    У меня этот вопрос возник, когда я выбрал джанго для своего проекта, и у меня появились сомнения в том, что на его движке можно написать что-то серьезное. Мало ли, он сырой или типа того..., тогда при любой проверке на прочность - все рухнет... И чтобы не колебаться, не сомневаться и не прыгать с фреймворка на фреймворк, провел это исследование.

    Зато теперь я точно знаю, что если у меня все ляжет, то виноват только я, а не фиговый фрейморк или язык))
    Запись от netBool размещена 30.03.2018 в 17:52 netBool вне форума
  7. Старый комментарий
    Цитата:
    Зато теперь я точно знаю, что если у меня все ляжет, то виноват только я, а не фиговый фрейморк или язык))
    Вот Вы и подвели общее резюме всего Вашего исследования... ) Никогда не нужно колебаться - нужно делать, а не убивать время на никому ненужные переживания... Практика и личный опыт лучшие советчики, кто бы чего не говорил...
    Запись от Fedor92 размещена 31.03.2018 в 20:12 Fedor92 вне форума
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru