Aisamiery

Aisamiery
Рейтинг
324
Регистрация
12.04.2015
Had:
Aisamiery, как считаете стоит подключить платно CDN? Оно того стоит?

не стоит оно того

Had:
Объясните мне одну вещь - если у них свой дата-центр на Алтуфьевке (как они заявляют), зачем они собираются переезжать в дата-центр Останкино?

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

suffix:
У меня сервер в Москве - вот результаты.

С композитом или просто на nginx кэш настроен?

В рамках Питер-Москва вы разницы не заметите, с Питера до Москвы запрос идёт 10-12ms что ничтожно даже для динамичных онлайн игр, а для сайтов и подавно, php стартует дольше. Даже если у вас ЦА в Москве, то даже Германия для сайта это близко.

Фигнёй какой то занимаетесь

Хостится в OVH

На фронте либо статичный кэш, либо в принципе статика, либо подгрузка по апи а первый контент это просто заглушка.... сделать TTFB в 17ms не сложно, достаточно просто отдавать заранее заготовленную статику - например jamstack можно погуглить. Вот на хабре статейка https://habr.com/ru/post/439232/

---------- Добавлено 22.03.2020 в 14:19 ----------

Урл то конкурента дайте посмотреть

---------- Добавлено 22.03.2020 в 14:24 ----------

У меня на бегете есть сайтик на Grav CMS, TTFB повыше конечно, но чтобы было ниже надо php вообще не стартовать.

Можно и винде сделать захват без всяких там ножниц =))

По букам, мне мой мак нравится больше чем на винде, правда сравниваю на сравнимое =)) мак стоит >150к а мой виндовый чуть больше 30к =)))

Но если брать разработку, то макось конечно же однозначно впереди. У меня макбук про с 8гб оперативы и i5 на 4 ядра, работает не хуже чем стационарный i7 8 поколения с 6C/12T и 32Гб оперативы на винде =))) Ну а девелоперу нужны никсы, особенно вэб девелоперу. А я еще и на swift угараю для души так скажем.

ArbNet:
Aisamiery, Нашли к чему придраться :) Даже если оставить как есть, и будет много запросов мой движок не сдохнет, он не грузит на начальном этапе кучу всяких плагинов...

Ясень пень, вы еще даже с БД работать не начали. И что по вашему очень много? Вы же даже не знаете почему дохнет тот или иной сайт, а уже что то говорите. Написали 3 сотни срок кода и понтуетесь что ваш движёк не падает? Так он еще нихрена не делает, вообще ничего, с чего бы ему падать?

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

ivan-lev:
Aisamiery, командная работа набирает обороты..
Вот.. дошли до "pull request-ов" через форум 😂

Ага, чёт я разошелся =)))

ArbNet:
Aisamiery, Согласен. В данном случае так будет меньше кода.
Наверно пока тестирую... не задумывался о том чтобы упростить.

Это не просто меньше кода, это дальнейшее добавление файлов без изменения index.php

Тем более, если даем возможность расширять эту часть систему без изменения index.php (помним это важно, чтобы система обновлялась она приходит с index.php)


$nav=pathinfo(trim($_SERVER['REDIRECT_URL'],'/'));
$file = sprintf('%s.php', $nav['extension']);

if (file_exists(EXTEND. $file)) {
require EXTEND. $file;
} elseif (file_exists(CORE . $file)) {
require CORE . $file;
} else {
require CORE . ($_SESSION['ldt'] ? 'publish.php' : 'initialization.php');
}

И вот у нас уже есть папочка куда сторонний разработчик может положить файл api.php и изменить поведение системы не трогая системных файлов.

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

Ту ересь с роутингом что вы скинули даже комментировать не буду, она просто не читаемая, но по диагонали понятно что там просто полный ппц.

ArbNet:
Aisamiery, Фабрику знаю и прочие паттерны, вот только в роутинге они ни к чему(запросы могут быть разные от просто цифры счётчика допустим, расширение web у меня перенаправляет на сайт который работает на моей программе, json файла для ajax, др до готовой страницы). У меня не надо править ядро. Маршрутизация прописана в index под нужные для движка задачи, но кто знает что ещё может понадобится в будущем мне или другим пользователям, поэтому в индексе всё так просто.

Вот когда коучи начали рассказывать про паттерны. Все стали их везде втыкать надо и не надо.. А если подумать?

Блин хотел же закончить =)))

Знаете почему "индусский код" так называют? Есть такая байка, что индусам платят не за решенные задачи, а за кол-во строк кода, возьмём ваш пример:


// маршрутизация
$nav=pathinfo(trim($_SERVER['REDIRECT_URL'],'/'));
switch($nav['extension']){
case 'js': @require CORE.'js.php'; break;
case 'css': @require CORE.'css.php';break;
case 'api': @require CORE.'api.php';break;
case 'web': @require CORE.'web.php';break;
default:
if($_SESSION['ldt'])@require CORE.'publish.php';
else @require CORE.'initialization.php';
}

И чем больше расширений, тем больше строк будет кода, верно? При том приложение просто упадёт если файла не будет. Давайте в каждом case проверять наличие файла? Это еще добавит строк, а заказчик оплатить. А теперь давайте подумаем в чем разница?


$nav=pathinfo(trim($_SERVER['REDIRECT_URL'],'/'));
$file = sprintf('%s%s.php', CORE, $nav['extension']);

if (file_exists($file)) {
require $file;
} else {
require CORE . ($_SESSION['ldt'] ? 'publish.php' : 'initialization.php');
}

При том не важно сколько вы там решите добавить расширений и приложение не упадёт по сути никогда (ну надеюсь 2 файла в else всегда существуют).

При том сам роутинг вы так и не показали, как маршрутизируются конкретные урлы в самих этих файлах

Stek:
Не про это.
require - подгружает код в любом случае, а выполняет его только в зависимости от логики.
include - подгружает код только когда к нему идет обращение.

От куда вы такое взяли?

require аналогично include, за исключением того, что при ошибке он также выдаст фатальную ошибку уровня E_COMPILE_ERROR. Другими словами, он остановит выполнение скрипта, тогда как include только выдал бы предупреждение E_WARNING, которое позволило бы скрипту продолжить выполнение.

php.net

LazyLoad делается по другому принципу, через автолоадер и стандарт, например PSR-0 ранее или сейчас PSR-4

---------- Добавлено 20.03.2020 в 15:44 ----------

ArbNet:

А если подумать?
Я так сделал чтобы можно было просто добавлять другие обработчики или удалять если что не нужно. Элементарно Ватсон :)

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

Всего: 4113