
Oleg
05.06.2018
21:01:57
угу

Art
05.06.2018
22:11:01
актуальна ли еще? 2010 год.
"MySQL. Оптимизация производительности"
https://www.ozon.ru/context/detail/id/6573935/
и какие схемы используются для распределения нагрузки в 2018 году (балансировщики, сервера БД master/slave, веб сервера, облако). Комбинаций сколько угодно может быть и на разных уровнях, какая схема популярная?

Sergey
05.06.2018
22:19:19

Google

Sergey
05.06.2018
22:21:00
> какая схема популярная?
та которая дает тебе компромис между поддержанием консистентности данных, их количеством и производительностью
задачи есть разные, есть как у большинства когда лишь малая доля запросов в базу идет на запись и реплики спасают, есть где примерно одинаково и там чуть по другому, есть там где данные на один сервер не влазят, есть те которые чувствительны к задержкам....
так что думаю тебе стоит пока почитать книжку которую ты сам и скинул и малиться что тебе ближайшие 2-3 года не придется работать с терабайтными базами распределенными
ну мол тебе надо сча простые штуки, про идексы, про селективность, про нормализацию/денормализацию/jsonb.... ну и рассмореть вариант заюзать нормальную СУБД (постгрес например)

Art
05.06.2018
22:25:05
бесит это, новое изучаешь, старое забываешь

Sergey
05.06.2018
22:31:15
ну такое... может оно тебе не надо просто?)

Art
05.06.2018
22:31:40
месяц покатушек на велике по полям по лесам, походы с палатками, а после садишься за комп и такое чувство как в первый раз сел

Sergey
05.06.2018
22:33:03

Art
05.06.2018
22:33:07
ну такое... может оно тебе не надо просто?)
не, компы это мое, я точно знаю, интерес есть, а вот учил раньше много всего того что не нужно было, распылялся на технологии. Если бы раньше знал что учить, то сразу бы и учил
какие чатики?

Sergey
05.06.2018
22:35:49

Google

Sergey
05.06.2018
22:36:34
ну то есть сначала по верхам а вглубь только когда уже понял что надо

Art
05.06.2018
22:54:32
Так-то да
а есть для нашего рынка такая же карта?
https://github.com/kamranahmedse/developer-roadmap
или та актуальна и для нас?

Sergey
05.06.2018
22:55:54
для кого нас?

Art
05.06.2018
22:56:07
для рынка снг

Sergey
05.06.2018
22:56:37
нет, рынок СНГ это битрикс и магенту. Сам то как думаешь?

Art
05.06.2018
22:57:19
да какой битрикс, 1-2 вакансии из 9 yii

Sergey
05.06.2018
22:57:22
ну и так себе роадмэп... роадмэп похапешника
restul api, learn nosql (при уровне детализации devops стафа даже грустно)
RabbitMQ of kafka... как будто бы они эквивалентны

Art
05.06.2018
22:58:29
запили свою роадмап, я тебе звездочку на гитхаб поставлю)))

Sergey
05.06.2018
22:58:35
зачем?)

Art
05.06.2018
22:59:01
список технологий для веб-дева бекенда
а так спросят тут что учить, а ты такой ссылку кидаешь, хоба

Sergey
05.06.2018
23:01:49
не вижу смысла, таких подборок как грязи
а толку нету
потому что ссылочку на coupling/cohesion пропустят зато пару вечеров на orientdb потратят конечно
или на какую-нибудь хипстерскую херню другую

Google

Батманов
06.06.2018
05:20:56
Ребят, подскажите, если с нашей системой взаимодействуют 10 клиентов, действие они совершают одно и то же (например активация продукта), но параметры запроса могут быть разными, валидация разная, реакция на события тоже разная, и некоторая логика активации тоже отличается, стоит ли делать один контроллер на всех или все же стоит сделать для каждого клиента свой контроллер?

Dmitry
06.06.2018
05:28:28
Я бы сделал один, но использовал паттерн Стратегия. На основе логина клиента (или какого-то другого критерия) выбирал бы нужный класс, который описывает логику обработки запроса для этого клиента

Igor
06.06.2018
05:31:57
ребчт, какой домен приятнее, с дефисом или без?
gameslab net
games-lab net

Samat
06.06.2018
05:32:15
дефис это всегда неудобно в домене
доставать до линии цифр

Igor
06.06.2018
05:33:33
а если речь не трогает клавиатуру
визуально, как лучщ?

Samat
06.06.2018
05:33:55
и визуально тоже без

Батманов
06.06.2018
05:36:45

Dmitry
06.06.2018
05:44:34
Нет, не один. Раздели это на классы: запрос, валидатор, обработчик событий, ещё что-то. Заведи интерфейсы для этих классов и реализуй их для каждого клиента

Батманов
06.06.2018
05:51:53
Нет, не один. Раздели это на классы: запрос, валидатор, обработчик событий, ещё что-то. Заведи интерфейсы для этих классов и реализуй их для каждого клиента
у нас используется laravel, допустим в контроллере используем ValidatorInterface, как с помощью di решить, какой именно класс должен создаться? Зависимости и привязки ведь компилятся и кэшируются, то есть нам до запроса еще нужно определить все зависимости. Как мне казалось, влезать в контейнер и подгружать зависимости (сервис провайдер) на уровне middleware или того же конструктора контроллера как то не правильно, нет?

Dmitry
06.06.2018
05:56:12
Можно в описании контейнера написать, что для вот этого контроллера ValidatorInterface нужно подготовить через фабрику, которая уже будет знать про то, как выбрать нужный валидатор.

Батманов
06.06.2018
06:05:29

Roman
06.06.2018
08:59:27
private функции в контролере допустимы? или єто звоночек что чтото делаю не так и нужно пересмотреть логику

Mykola
06.06.2018
08:59:53
Скорее всего

Valentin
06.06.2018
09:05:04

Bohdan
06.06.2018
09:05:24
можно порадоваться одному - ты уже дошел до того уровня, когда если у тебя возникает вопрос, допустимо ли что-то - скорее всего, так делать не нужно

╳Click here
06.06.2018
09:06:29

Max
06.06.2018
09:07:05

Google

Sergey
06.06.2018
09:07:06

╳Click here
06.06.2018
09:07:19

Roman
06.06.2018
09:10:48
ясно, всем спс

╳Click here
06.06.2018
09:19:06
Гайз
Хочу оптимизировать код под php 7.2
Что выпиливать кроме array() на [] и count($array)>0 на !empty($array)

Maksim
06.06.2018
09:19:42
херасе оптимизация...
можешь ещё двойные ковычки на одинарные поменять)

Bohdan
06.06.2018
09:21:05
и проверки на null, они ведь очень тяжелые

Maksim
06.06.2018
09:21:22

╳Click here
06.06.2018
09:21:30

Bohdan
06.06.2018
09:21:42
без сарказма жить грустно

Maksim
06.06.2018
09:21:45

Bohdan
06.06.2018
09:21:54

Valeriy
06.06.2018
09:21:55

Maksim
06.06.2018
09:22:04

Valeriy
06.06.2018
09:22:10
тулзы для статического анализа имеют профили по зачистке депрекейтов и оптимизациям

Sergey
06.06.2018
09:22:10

Bohdan
06.06.2018
09:22:20
а теперь серьезно:
массивы - пофиг, empty - хз, но вроде тоже ничего не несет

╳Click here
06.06.2018
09:22:21

Maksim
06.06.2018
09:22:37

Roman
06.06.2018
09:22:42

Sergey
06.06.2018
09:22:44

Google

Sergey
06.06.2018
09:23:01
ну короч это вообще не то чем надо заниматься

Bohdan
06.06.2018
09:23:17

Sergey
06.06.2018
09:23:22
и если у тебя там нет графов данных по 100K нод то в целом вообще плевать

Maksim
06.06.2018
09:23:25
[] от array отличается только кол-вом символов, count - конструкция, которая выводит то, что уже давно известно...

Sergey
06.06.2018
09:23:48

╳Click here
06.06.2018
09:24:03
Да, суть вопроса остаётся
Я просто примеры привёл

Sergey
06.06.2018
09:24:35
какую цель ты приследуешь?
начни короч с php-cs-fixer

Maksim
06.06.2018
09:24:53
если хочешь оптимизировать код под 7.2, посмотри лучше что в тот же count countable данные передаются) и то, слово оптимизировать - не подходящее)

Sergey
06.06.2018
09:25:21
что до оптимизаций - берешь профайлер и смотришь узкие места
то что ты описал называется "мне просто скучно и нечем заняться"

Oleg
06.06.2018
09:26:34
тут надо смотереть толкьо на то, что задеприкейтили или убрали в 7.2, остальное от лукавого
ну или в промежуточных версиях между твоей и 7.2

╳Click here
06.06.2018
09:27:00

Maksim
06.06.2018
09:27:19
/** @var null|array|bool $rows**/
и чем !empty($rows) лучше, чем true === \is_array($rows) && 0 !== \count($rows)
?)

Oleg
06.06.2018
09:27:50
по мне так хуже
в смысле empty хуже явных проверок