Pull to refresh
11
0
Пятинский Михаил @zenn

Веб-программирование

Send message
Вот тут вы не совсем правы. Даже сугубо по «средне-сеошным» понятиям, хабрахабр имеет куда более высокий индекс цитирования (не тИЦ!), более высокий уровень траста, среднее время сессии, возраст домена и т.д. К сожалению, слияние с низко-качественным контентом скорей скажется негативно для самого ресурса, но те самые «посредственные рекламные» посты с мегамозга получат больший вес, больший сбор трафика.
Так пусть бы и платили в «своей песочнице» и развивали ее. Тут наша песочника, как говориться, «Мальчик, иди вы***ывайся в свой двор!». Имхо — эти статьи так никто читать и не будет, они лишь будут получать негативные отзывы и соответствующие отметки в карму…
К сожалению, теперь всё это д**ьмо выльется на хабр. Я извиняюсь за такую резкость, но сугубо личное наблюдение — на мегамозге > 80% постов это чистой воды реклама, остальные 20% это гадание на кофейной гуще и непонятные субъективные «кейсы», и теперь все это будет «захламлять» этот ресурс.
Я бы задумался над психической уравновешенностью человека, использующего разные версии php для cli/apache/php-fpm при работе с yii2.
А вы пробовали чуть-чуть подумать над смыслом команды? Уберите find «pdo» и выведет все модули…
Открыл статью, ожидая увидеть изучение протокола общения с БД и его портирование под yii2 в виде пакета, но увы. Статья ну совсем для «самых маленьких», может стоило это указать?
Создаем файл test-fb.php в рабочем каталоге фреймворка YII2 D:\xampp\htdocs\yii\, в нем ишем код:

Зачем? Чем вас канонический php -m не устроил (в интерпритации под окна):
php -m | find "pdo"
Решил значит изучить ваш «код» на пригодность и открыл точку входа… в ваше приложение/cms… после чего у меня волосы на заднице голове встали дыбом и я пошел мыть глаза с мылом…
Если без эмоций — так программировали в 2001-2005 годах на php 4 — я не знаю в силу каких обстоятельств вас заставляют делать то же самое, когда за окном виден composer, mvc, psr-*, symfony, yii2, laravel и другие прекрасные вещи… Попробуйте добавить ваш проект в scrutinizer или другой CI и посмотрите на качество кода.
К сожалению, у вас действительно получилось решение уровня «костыли и велосипеды — разрабатываем как умеем». По факту уже несколько лет есть куда более гибкие и удобные решения: есть virtualbox и vmware, а для быстрой организации управляемых контейнеров есть vagrant и docker.
Вот вам пример поднятия «веб-сервера» в 3 команды: scotch box, кроме того для более «требовательных» есть puphpet и куча других готовых решений.
Извините, не удержался: «Кадило крутится — лавэха мутится».
Вы видимо плохо знакомы с высказываниями статистов, поясню — это равносильное обратное предположение, показывающее сомнительность первоначального утверждения о копипасте (кратко — вероятно и то и другое).
Это сомнительное утверждение. Нет, я не защищаю копипасту, но вероятность того, что при переписывании вы допустите «свою» опечатку или ошибку скорей всего НЕ ниже, чем вероятность ошибки в уже написанном коде.
Возможно и так, сугубо для тех кто не готов прыгать сразу «в овраг», сменить работу будет не просто. В принципе даже на битриксе, человек имеющий опыт (а точней знания) работы с адекватными MVC-архитектурами будет продуцировать вполне качественный код, но вопрос остается открыт — почему такого «качественного» кода до сих пор с огнем найти сложно, а само «ядро» битрикса и его документация пестрит перлами уровня junior и «программируем как умеем»? Из этого вытекает что над «битриксом» работают лишь студенты или те, кто не желает развиваться?
Да, ваша статья пожалуй самая объективная из написанных на днях (ссылки на них вы приводили) — виден опыт работы как с «пациентом» так и с другими продуктами (популярными фреймворкам).
Если у вас нет выбора, то изучайте Битрикс, но в свободное время лучше все-таки пытаться погрузиться в мир фреймворков, чтобы поставить мозги на место.

Разве существуют такие ситуации когда нет выбора? Рабство и крепостное право вроде как отменили, а работу всегда можно поменять…
Вы так и не поняли смысла моего сообщения. То, что приведено по вашей ссылке не меньший ад чем код автора в этой статье. Еще раз, обратите внимание на выражения инкаспуляция и полиморфизм. Если не понятно — обратите внимание на динамическую модель у тех примеров, что привел я, и на то, что вы показываете в битриксе (дикий адовый п**дец с передачей массивов с неизвестными параметрами и значениями) — про такой код чаще всего говорят: «Когда я начинал писать этот код только бог и я знали как он работает. Теперь остался только бог».
Я еще такого не видел, чтобы кто-то серьезно отстаивал чужое д*рьмо да еще и так уверенно. Давайте взглянем хотя бы сюда:
Примеры кода из D7 (выгрузка названий элементов, количество которых больше 5):

ElementTable::getList(array(
'select' => array('NAME'),
'filter' => array('>CNT' => 5)
'runtime' => array(
new Entity\ExpressionField('CNT', 'COUNT(*)')
)
));

Вы считаете это адекватным кодом? Передачу массива ключ-значение, по факту 'критерий' -> 'значение' в стат. метод класса? Без инкаспуляции, полиморфизма… Да блин, взгляните вы в symfony, laravel и подобные, где реализован ORM/ActiveRecord — все они спроектированы так, что даже не имея под рукой документации интуитивно понятно можно составить запрос в базу.
Взгляните сюда — это действительно удачный пример, или сюда. Если считаете себя «опытным» php-программистом то взгляните на реализацию логики работы их activerecord/queryBuilder моделей и вы поймете, насколько вы заблуждались с адекватностью битрикса и его нового ядра.
Смотря на общий информационный «фон» относительно «ограничений» интернета в России — этот визит скорей не совпадение, а закономерность.
Я о том и говорю, что даже учитывая всю «нагрузку» в сутки на базу — это просто смехотворные данные для highload и подобной архитектуры. Возможно так же вопрос не в «недооптимизации» а в избыточной архитектуре. Как говорит автор, под БД используется 3 толстых инстанты на тарифе A7 (если не знакомы, то это: x8 core, 56ggb RAM) — под такую нагрузку в сутки это выглядит ужасающе — я просто ума не приложу зачем такие мощности для столь малой базы данных (по меркам highload). Выглядит так, будто обслуживание этой сложной архитектуры пожирает ресурсов больше, чем создают клиенты вашего сервиса.
Или в azure столь некачественные «ноды» (vps-ки) либо же у автора столь некачественная настройка всего этого зоопарка…
А вы думаете в облаке azure знания как бы не нужны? Нажал кнопочку «сделать все хорошо» и все заработало? Отнюдь, хоть я имел и малый опыт работы с сервисами azure, но скажу вам заморочек там не меньше, чем в обслуживании рутованого сервера. Да и взгляните на текущих работников сферы «веб-разработка» — практически каждый достаточно неплохо (за некоторыми исключениями) может настроить рабочий сервер для разрабатываемого продукта (а многие еще и шишек граблями набили столько, что системные администраторы позавидуют ...).
По поводу суммы — если бы это было 14 тыс рублей я бы с вами согласился, но 140 тыс это, для меня лично, просто обдирательство, никак иначе (или владелец ресурса, рассматриваемого в данном посте, использует услуги azure из рук вон плохо и не рационально).
Прочел вашу статью но так и не понял, как у вас так получается:
Azure обходится нам сейчас в \~140 тыс. рублей в месяц. Этого нам хватает на 90%, так как для пиковых нагрузок всё же этого мало

в сутки он выдерживает ~2.5 тыс даров и ~1.5 тыс благодарностей, ~20 тыс. комментариев, ~40 тыс. уведомлений и ~4.5 тыс. файлов

это вроде бы даже близко не highload, с такими задачами вполне справиться средний сервер с несколькими дисками — парой ssd и hdd в разных рейдах (hdd под статику, ssd под бд/прочую динамику) + CDN сеть (услуги которых куда дешевле) еще и запас для роста будет. Стоить это естественно будет на порядки дешевле, но отказоустойчивость по сравнению с кластером конечно будет ниже.
Можете пояснить, как именно вам удается расходовать 140тыс рублей для подобной нагрузки?
Тоже в данный момент занимаюсь реализацией модуля "рассылок" в своем проекте, спасибо за готовую подборку. П.с. — для обоих проектов выше есть интеграция с swiftmailer, кроме того возможна прямая рассылка через smtp, что достаточно удобно.

Information

Rating
Does not participate
Location
Керчь, Республика Крым, Россия
Date of birth
Registered
Activity