Telegram Group & Telegram Channel
Палантир. Часть 1. Начинаю серию постов по изученным мной в процессе разработки сборщика данных с телеграма техническим нюансам.
#палантир@eshu_coding

Как уже было сказано, мной используется схема master - slave. Для связи между ними вместо традиционных http запросов я использую gRPC.

Суть технологии в следующем в файлах с расширениями .proto описываются основные точно взаимодействия элементов приложения и используемые структуры данных.

Видов взаимодействия может быть четыре:
1. Одиночный вызов. Клиент стучит на сервер, закидывает туда данные в описанном формате, получает ответ заданного формата.

Остальное - варианты стримминга. Доступны следующие варианты:
А) Клиент шлет одиночный запрос, в ответ получает поток ответов.
Б) Клиент отправляет на сервер поток сознания, получает одиночный ответ.
В) Клиент отправляет поток сознания и получает поток в ответ.
Все эти режимы работы, а также формат отдельных сообщений прописан в .proto файле.

gRPC - мультиязычная платформа, что крайне удобно для связи сервисов, написанных на разных языках. Структуры данных, описанные в протофайле, доступны для использования как обычные классы.

В случае с# и node.js достаточно добавить в проект протофайл и можно пользоваться этими структурами. В питоне нужно отдельной командой сгенерировать питоновские файлы, в которых будут автогенерированные классы, описанные в протобуфе.

Чем еще хороша gRPC? Во-первых - удобство. Описал взаимодействие всех компонентов и гоняй стандартизированные структуры данных через стандартизированные API туда-сюда. Многие ошибки отваливаются на этапе сборки проектов.

Во вторых - стримминг и подписка на события реализуется просто и без боли.

В третьих grpc тупо шустрее обычных http запросов: от 20% до 7-10 раз, вот одна из статей с замерами.

В общем, годная технология, но наверняка есть и подводные камни.

#кодинг



tg-me.com/eshu_coding/181
Create:
Last Update:

Палантир. Часть 1. Начинаю серию постов по изученным мной в процессе разработки сборщика данных с телеграма техническим нюансам.
#палантир@eshu_coding

Как уже было сказано, мной используется схема master - slave. Для связи между ними вместо традиционных http запросов я использую gRPC.

Суть технологии в следующем в файлах с расширениями .proto описываются основные точно взаимодействия элементов приложения и используемые структуры данных.

Видов взаимодействия может быть четыре:
1. Одиночный вызов. Клиент стучит на сервер, закидывает туда данные в описанном формате, получает ответ заданного формата.

Остальное - варианты стримминга. Доступны следующие варианты:
А) Клиент шлет одиночный запрос, в ответ получает поток ответов.
Б) Клиент отправляет на сервер поток сознания, получает одиночный ответ.
В) Клиент отправляет поток сознания и получает поток в ответ.
Все эти режимы работы, а также формат отдельных сообщений прописан в .proto файле.

gRPC - мультиязычная платформа, что крайне удобно для связи сервисов, написанных на разных языках. Структуры данных, описанные в протофайле, доступны для использования как обычные классы.

В случае с# и node.js достаточно добавить в проект протофайл и можно пользоваться этими структурами. В питоне нужно отдельной командой сгенерировать питоновские файлы, в которых будут автогенерированные классы, описанные в протобуфе.

Чем еще хороша gRPC? Во-первых - удобство. Описал взаимодействие всех компонентов и гоняй стандартизированные структуры данных через стандартизированные API туда-сюда. Многие ошибки отваливаются на этапе сборки проектов.

Во вторых - стримминг и подписка на события реализуется просто и без боли.

В третьих grpc тупо шустрее обычных http запросов: от 20% до 7-10 раз, вот одна из статей с замерами.

В общем, годная технология, но наверняка есть и подводные камни.

#кодинг

BY Эшу быдлокодит


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/eshu_coding/181

View MORE
Open in Telegram


Эшу быдлокодит Telegram | DID YOU KNOW?

Date: |

The S&P 500 slumped 1.8% on Monday and Tuesday, thanks to China Evergrande, the Chinese property company that looks like it is ready to default on its more-than $300 billion in debt. Cries of the next Lehman Brothers—or maybe the next Silverado?—echoed through the canyons of Wall Street as investors prepared for the worst.

Among the actives, Ascendas REIT sank 0.64 percent, while CapitaLand Integrated Commercial Trust plummeted 1.42 percent, City Developments plunged 1.12 percent, Dairy Farm International tumbled 0.86 percent, DBS Group skidded 0.68 percent, Genting Singapore retreated 0.67 percent, Hongkong Land climbed 1.30 percent, Mapletree Commercial Trust lost 0.47 percent, Mapletree Logistics Trust tanked 0.95 percent, Oversea-Chinese Banking Corporation dropped 0.61 percent, SATS rose 0.24 percent, SembCorp Industries shed 0.54 percent, Singapore Airlines surrendered 0.79 percent, Singapore Exchange slid 0.30 percent, Singapore Press Holdings declined 1.03 percent, Singapore Technologies Engineering dipped 0.26 percent, SingTel advanced 0.81 percent, United Overseas Bank fell 0.39 percent, Wilmar International eased 0.24 percent, Yangzijiang Shipbuilding jumped 1.42 percent and Keppel Corp, Thai Beverage, CapitaLand and Comfort DelGro were unchanged.

Эшу быдлокодит from us


Telegram Эшу быдлокодит
FROM USA