Архитектура сервиса
От: anon  
Дата: 24.09.19 18:00
Оценка:
На одном из собеседований в секции поговорить про архитектуру мне задали вот такой вопрос:
Пусть мы делаем бэкенд для некоего аналога яндекс пробок.
У нас уже есть готовый сервис картографии, а также популярное мобильное приложение, которое установлено у кучи автовладельцев и шлет нам геокоординаты.

Нужно придумать общую архитектуру бэкенда, продумать нагрузки и т.п.

Это вопрос не с одним правильным ответом, а на поговорить.

Но от него я выпал в осадок, т.к. никогда раньше на таком уровне системы не проектировал, а больше делал конкретные задачи (я — обычный миддл).
Что-то попытался родить, но мне самому не понравилось, интервьюеру, видимо, тоже.

А вопрос к форуму такой: что можно почитать на эту тему?
Должны же быть какие-то типовые архитектурные задачи, типовые проблемы их типовые решения, и описания этих решений.
Ну, т.е. книжки про архитектуру, по аналогии с тем, как есть книжки про качество кода.
Re: Архитектура сервиса
От: Sharov Россия  
Дата: 24.09.19 18:30
Оценка: 16 (3) +2
Здравствуйте, anon, Вы писали:

https://github.com/sharov-am/system-design-primer
Кодом людям нужно помогать!
Re: Архитектура сервиса
От: LaptevVV Россия  
Дата: 24.09.19 18:33
Оценка:
A>А вопрос к форуму такой: что можно почитать на эту тему?
A>Должны же быть какие-то типовые архитектурные задачи, типовые проблемы их типовые решения, и описания этих решений.
A>Ну, т.е. книжки про архитектуру, по аналогии с тем, как есть книжки про качество кода.
Мартин Фаулер. Архитектура корпоративных программных приложений.
https://www.ozon.ru/context/detail/id/1616782/
Автор(ы): Мартин Фаулер
Издательство: Вильямс
Цена: 906р.

Создание компьютерных систем — дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально. Как
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Архитектура сервиса
От: LaptevVV Россия  
Дата: 24.09.19 18:37
Оценка:
Еще вот такая есть: https://regionbook.ru/microsoft-net-arkhitektura-korporativnykh-prilozheniy-2-e-izdanie/
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[2]: Архитектура сервиса
От: Hobbes Россия  
Дата: 24.09.19 19:13
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Мартин Фаулер. Архитектура корпоративных программных приложений.

LVV>https://www.ozon.ru/context/detail/id/1616782/
Автор(ы): Мартин Фаулер
Издательство: Вильямс
Цена: 906р.

Создание компьютерных систем — дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально. Как


Книжка хорошая, но старовата. Особенно умиляет глава 4 про веб
Re: Архитектура сервиса
От: MadHuman Россия  
Дата: 24.09.19 19:21
Оценка: +3 -1
Здравствуйте, anon, Вы писали:

A>Что-то попытался родить, но мне самому не понравилось, интервьюеру, видимо, тоже.

это вопрос, на попытаться понять как вы способны мыслить столкнувшись с незнакомой задачей.

A>А вопрос к форуму такой: что можно почитать на эту тему?

не надо читать. попробуйте всё таки попробывать решить задачу, на основе здравого смысла и инженерного подхода.
попробуете, перед вами встанут конкретные вопросы (точнее вы их сами перед собой поставите), их и прогуглите.
Re: Архитектура сервиса
От: Qulac Россия  
Дата: 24.09.19 19:35
Оценка:
Здравствуйте, anon, Вы писали:

A>На одном из собеседований в секции поговорить про архитектуру мне задали вот такой вопрос:

A>Пусть мы делаем бэкенд для некоего аналога яндекс пробок.
A>У нас уже есть готовый сервис картографии, а также популярное мобильное приложение, которое установлено у кучи автовладельцев и шлет нам геокоординаты.

A>Нужно придумать общую архитектуру бэкенда, продумать нагрузки и т.п.


A>Это вопрос не с одним правильным ответом, а на поговорить.


A>Но от него я выпал в осадок, т.к. никогда раньше на таком уровне системы не проектировал, а больше делал конкретные задачи (я — обычный миддл).

A>Что-то попытался родить, но мне самому не понравилось, интервьюеру, видимо, тоже.

A>А вопрос к форуму такой: что можно почитать на эту тему?

A>Должны же быть какие-то типовые архитектурные задачи, типовые проблемы их типовые решения, и описания этих решений.
A>Ну, т.е. книжки про архитектуру, по аналогии с тем, как есть книжки про качество кода.

Для начала нужно решить, что будет делать сервис, а что клиент. Например клиент скачивает к себе дорожную сеть с сервиса или ее участок и сам определяет участок где на ней находится, направление движения и среднею скорость за X последних минут и шлет это все сервису. В этом случае сервис получается тривиальным и легко масштабируемым.
Программа – это мысли спрессованные в код
Re[2]: Архитектура сервиса
От: Lexey Россия  
Дата: 25.09.19 11:41
Оценка:
Здравствуйте, MadHuman, Вы писали:

A>>А вопрос к форуму такой: что можно почитать на эту тему?


Grokking the system design interview, например.

MH>не надо читать.


Надо. Для решения таких задач есть вполне стандартная схема. Если ее не знать, то можно долго долбиться лбом об стену, а толку будет мало.
"Будь достоин победы" (c) 8th Wizard's rule.
Re[2]: Архитектура сервиса
От: white_znake  
Дата: 25.09.19 12:52
Оценка: +1
Здравствуйте, MadHuman, Вы писали:

MH>это вопрос, на попытаться понять как вы способны мыслить столкнувшись с незнакомой задачей.

большинство незнакомых задач 99% с большой вероятностью около 99% уже когда-то и кем-то решались.

MH>не надо читать. попробуйте всё таки попробывать решить задачу, на основе здравого смысла и инженерного подхода.

MH>попробуете, перед вами встанут конкретные вопросы (точнее вы их сами перед собой поставите), их и прогуглите.
Все-таки есть архитектурные решения для определенных классов задач. Эти решения надо знать.
Так же как и алгоритмы. Базовые алгоритмы надо знать и применять при решении определенных задач, а не тратить время на создание своего ужасного и стремного "велосипеда".

Знать базовые вещи в своей инженерной области — это и есть инженерный подход.
Тот подход, который предлагается вами, не инженерный, он ближе к методу "научного тыка".
Такой подход может привести к тому, что у "специалиста" будет неправильное мнение о том, что он знает как правильно решать определенные задачи,
хотя на самом деле это будет не так. И горе будет тому, кто наймет такого специалиста. Если такая трабла происходит с программистом, то это пол-беды, если же с архитектором, то это пипец.
Re[2]: Архитектура сервиса
От: sergey2b ЮАР  
Дата: 25.09.19 13:12
Оценка: 3 (1)
Здравствуйте, LaptevVV, Вы писали:

есть еще вот такая, но я незнаю насколько она хорошая
https://www.ozon.ru/context/detail/id/144499396
Re[3]: Архитектура сервиса
От: LaptevVV Россия  
Дата: 25.09.19 13:19
Оценка:
S>есть еще вот такая, но я не знаю насколько она хорошая
S>https://www.ozon.ru/context/detail/id/144499396
Книжка — ХОРОШАЯ. Рекомендую прочитать.
Но она в общих вопросах архитектуры вообще.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[3]: Архитектура сервиса
От: anon  
Дата: 25.09.19 13:52
Оценка:
L>Grokking the system design interview, например.

Это вот этот видеокурс https://coursehunters.online/t/educative-io-design-gurus-grokking-the-system-design-interview-part-1/579 ?
А в формате книги его нет?
Отредактировано 25.09.2019 13:54 anon . Предыдущая версия .
Re[2]: Архитектура сервиса
От: AmSpb  
Дата: 25.09.19 14:47
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Здравствуйте, anon, Вы писали:


S>https://github.com/sharov-am/system-design-primer


Да, тоже рекомендую его всем, кому надо об архитектуре сервисов почитать в доступном виде.
Re[4]: Архитектура сервиса
От: Lexey Россия  
Дата: 26.09.19 17:33
Оценка:
Здравствуйте, anon, Вы писали:

A>Это вот этот видеокурс https://coursehunters.online/t/educative-io-design-gurus-grokking-the-system-design-interview-part-1/579 ?

A>А в формате книги его нет?

Можно нагуглить отдельные главы. В виде книги мне не попадался.
"Будь достоин победы" (c) 8th Wizard's rule.
Re[3]: Архитектура сервиса
От: burgundy  
Дата: 01.10.19 08:46
Оценка:
Здравствуйте, Lexey, Вы писали:

L>Здравствуйте, MadHuman, Вы писали:


A>>>А вопрос к форуму такой: что можно почитать на эту тему?


L>Grokking the system design interview, например.


А вы проходили его? Советуете?
Смотрю на него, нравится как оформлен и содержание. Пока не понял правильный ли это паттерн для тренировки — читать подробные рассказы про то, как кто то (не совсем понятно кто) считает надо проектировать сервисы.
Re[4]: Архитектура сервиса
От: Lexey Россия  
Дата: 01.10.19 16:35
Оценка:
Здравствуйте, burgundy, Вы писали:

B>А вы проходили его? Советуете?


Я его не проходил. Читал отдельные нагугленные главы.

B>Смотрю на него, нравится как оформлен и содержание. Пока не понял правильный ли это паттерн для тренировки — читать подробные рассказы про то, как кто то (не совсем понятно кто) считает надо проектировать сервисы.


А как ты будешь оценивать правильность? По крайней мере, в подобных рассказах предлагается определенный подход к решению задач проектирования распределенных систем, который выглядит вполне разумным.
"Будь достоин победы" (c) 8th Wizard's rule.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.