
Olha
15.01.2017
13:50:58

Sergey
15.01.2017
14:37:34
Никто не хочет пофилосовствовать на тему использования событий для развязывания системы?)
а то я тут хочу впаять domain events и выполнять некоторые действия по ивентам вместо того что бы заворачивать в декораторы/размазывать по коду

Olha
15.01.2017
15:20:54

Google

Rodion
15.01.2017
15:26:53
вспомнил статью касательно использования ивентов http://mmoreram.com/blog/2015/08/20/re-thinking-event-listeners/
интересно ваше мнение

Evgeniy
15.01.2017
16:02:35
как кто то говорит о событиях вспоминается вот этот доклад https://www.youtube.com/watch?v=SyWFvn0I6m8
кому интересно можно полную версию посмотреть но там про фронтенд

Роман
15.01.2017
16:10:52
Много нового узнал.

Evgeniy
15.01.2017
16:11:21
ото все о solid, ddd,dry, kiss и тд рассказывают скучные бородатые мужики
нету веселья

Rodion
15.01.2017
16:24:38
пояснил за ивенты

Sergey
15.01.2017
17:48:18

Sergey
15.01.2017
18:27:51
какой бы пример привести
например если кто-то регистрируется в системе указав своего реферального пользователя, мне надо запустить отдельную бизнес логику которую я хотел бы вынести в отдельный модуль и полностью отделить от всей системы
как минимум потому что... мне нужно будет в будущем очень часто менять этот кусок системы вплодь до того что придется отключать отдельные ее элементы из конфига
то есть как бы... есть второстепенная логика которую мне хочется тригерить ивентами в основной системе

Google

F01134H
15.01.2017
18:29:30
Тут как никстати подошла бы SOA, но увы, php

Sergey
15.01.2017
18:29:48

F01134H
15.01.2017
18:30:04
Он не подходит для SOA =|

Sergey
15.01.2017
18:30:09
че это?

Sergey
15.01.2017
18:30:10
ну и как бы soa это тип "ну чувак теперь тебе придется делать это на ивентах/сообщениях")

F01134H
15.01.2017
18:30:31
че это?
Потому что каждый сервис должен работать как отдельный процесс

Sergey
15.01.2017
18:30:42
и чем пхп не подходит?

F01134H
15.01.2017
18:30:43
А в php как бы все кучей исполняется

Sergey
15.01.2017
18:30:48

Sergey
15.01.2017
18:30:53
в смысле кучей?)

Sergey
15.01.2017
18:31:14
просто слегка глупо

F01134H
15.01.2017
18:31:42
Делать сервисную архитектуру на php - это странно, т.к. придется для каждого сервиса юзать отдельный php процесс

Olha
15.01.2017
18:31:45

Sergey
15.01.2017
18:31:57

F01134H
15.01.2017
18:32:08
В общем-то в монолите - нет
Я наверное неясно выразился

Sergey
15.01.2017
18:32:47
особенно если вспомнить в контексте какого вопроса ты про нее вспомнил

F01134H
15.01.2017
18:33:13
Астанавись

Google

Sergey
15.01.2017
18:33:13
микросервисы - полезный вид SOA

F01134H
15.01.2017
18:33:20
ты не понял меня

Sergey
15.01.2017
18:33:25
я не понял тебя)
там Ольга правильную ссылку кинула

F01134H
15.01.2017
18:33:40
Под процессом php я подразумевал отдельную php-машину на каждый процесс

Sergey
15.01.2017
18:34:04
и давай мыслить "контейнерами" (мы же модные?)

F01134H
15.01.2017
18:34:19
Да
Мало ли, вдруг ты про докер не слышал
Ну так вот, в SOA, каждый сервис - является контейнером по сути
и между ними по ресту (или RPC, или еще чему угодно) гоняются сообщения

Olha
15.01.2017
18:35:08

Sergey
15.01.2017
18:35:25

F01134H
15.01.2017
18:35:57
Ну так вот, в чем суть моего посыла, лучший вариант для модульности - SOA

Sergey
15.01.2017
18:36:04
делал и soa (где rabbitmq между компонентами был шиной) и микросервисы

F01134H
15.01.2017
18:36:26
Там же было сообщение выше, что типо разграничить логику

Sergey
15.01.2017
18:36:51
окей, как бы ты в рамках soa архитектуры делал бы то что я описывал?
скорее всего по звершению транзакции регистрации юзера ты бы кидал RPC запрос на другой сервис что бы тот что-то делал
так?

Google

F01134H
15.01.2017
18:37:37
Неужели ты сам не догадываешься, как тут использовать принцип SOA?)
например если кто-то регистрируется в системе указав своего реферального пользователя, мне надо запустить отдельную бизнес логику которую я хотел бы вынести в отдельный модуль и полностью отделить от всей системы
как минимум потому что... мне нужно будет в будущем очень часто менять этот кусок системы вплодь до того что придется отключать отдельные ее элементы из конфига
то есть как бы... есть второстепенная логика которую мне хочется тригерить ивентами в основной системе

Sergey
15.01.2017
18:38:10
вот только нет гемороя с поддержанием распределенного приложения

Admin
ERROR: S client not available

F01134H
15.01.2017
18:38:43
Ой, ну кто как называет. Кому то разделение обязанностей не кажется гемороем

Sergey
15.01.2017
18:39:31
распределенные архитектуры крутые, не спорю, но у меня прям дикий батхерт когда люди просто так говорят "да не парься, заюзай SOA/микросервисы"
как буд-то бы это решение всех проблем и у нее нет своих минусов
а точнее не то что минусов... цены

F01134H
15.01.2017
18:40:41
Ну ты не вырывай из контекста) Ты сказал про модульность, я упомянул про SOA - все логично вроде бы

Sergey
15.01.2017
18:41:00
а не про модульность
у меня уже есть система, и ивенты хороший промежточный этап для дальнейшего разделения приложения на более четкие контексты

F01134H
15.01.2017
18:41:47
Объясни джуну, как эвенты могут выглядеть, как SOA

Sergey
15.01.2017
18:42:06
у тебя в рамках одной будут два компонента - users и referral system
так?

Google

F01134H
15.01.2017
18:42:52
Да

Sergey
15.01.2017
18:42:54
вот а теперь скажи, как бы ты с SOA сделал бы так, что бы users ничего не знало о referral system но при этом дергало бы его при успешной регистрации пользователя при определенных условиях
хотя бы примерно
где и кто дергал бы кого по RPC/HTTP/etc

Aleh
15.01.2017
18:44:02

F01134H
15.01.2017
18:44:06
А зачем юзеру дергать реферальную систему?
ну, в смысле, оно вроде по другому работает
сначала дергается реферальная система

Sergey
15.01.2017
18:44:41
потом на основе этой статистики можно бонусы раскидывать в другие части системы
то есть полностью независимые контексты. Если я отрублю реферальную систему - другие компоненты об этом не должны даже знать

Aleh
15.01.2017
18:45:18

Sergey
15.01.2017
18:45:41

Aleh
15.01.2017
18:46:35
бл?
Бизнес- логики, тупаю команда в дпугую сисиему

Sergey
15.01.2017
18:47:17
эм.... ну говорю ж, логика разделена по контекстам
есть инвайтер юзера. Он нужен не только для рефералки
рефералка постоянно раскидывает людям в бэкграунде какие-то бонусы
сейчас у меня на нее завязано пара компонентов системы но я это дело буду развязывать на след неделе