Pull to refresh

Comments 16

UFO landed and left these words here

'внезапно'? на C быстрее чем на расте. Вы серьезно? Хоть где-то утверждалось, что чистый С должен быть медленнее раста?

Не должен, но так заявляли сами авторы этой инициативы. The goal is to offer what he said are more secure, and more performant drop-in replacements for the tools Linux users depend on. Я не настоящий программист, в тему не погружен. Увидел concern о бенчмарках раста, вспомнил эту историю.

Вы сравниваете линукс утилиту, которую кому-то захотелось переписать (C vs Rust), и приложение, использующие общие с утилитой библиотеки (Rust vs что?). Ну и в целом, опенсорс концепт с претензиями - нету бенчмарков!

UFO landed and left these words here

Я привык, чтобы за работу платили, или хотя-бы доброе слово -'спасибо'. Но, где-ж, даже звездочку на гитхабе не кликнуть.

UFO landed and left these words here

Вы бы его ещё троянским конем назвали

UFO landed and left these words here

Автор, видимо, сам не понял, что хотел описать и в результате описал какую-то хрень, типа того, в каком файле хранит ключи. И вообще не важно, на каком языке написано приложение, пусть хоть Visual Basic будет, лишь бы работало.

Надо было описать:

  1. Архитектуру (настоящую, а не эти 4 дурацких квадратика клиент/сервер/три_файла).

  2. Протокол.

Есть Magic Wormhole - может "пробивать тоннель" между двумя клиентами за NAT-ом. Сервер использует для инициации, а затем уже прямая передача без использования сервера. Думал вы что-то подобное сделали.

UFO landed and left these words here

Подтянулись импорта замещающие проекты . Инженерная мысль может расслабиться.

Зачем вам этот Websocket? Даже если нужна совместимость с браузером. Но это же костыль для HTTP/1.1, и сейчас, во времена HTTP/3 уже странно видеть его в новых проектах!

  • HTTP/3 (QUIC) устанавливает соединение на один RTT по сети меньше по сравнению с HTTP/2 и HTTP/1.1. Но Websocket работает только с HTTP/1.1, и этой оптимизацией воспользоваться не может.

  • Сама по себе обработка Upgrade — это ещё один лишний RTT по сети. Если, например, юзер написал сообщение находясь в офлайне, то при появлении интернета ему потребуется сначала дождаться Upgrade, а только потом послать сообщение. Уже в HTTP/2 это не нужно.

  • HTTP/3 (QUIC) позволяет прозрачно продолжать соединение при переключении с мобильного интернета на вайфай и наоборот, без повторной установки соединения. Для мессенджера это неплохая фича.

Сетевые задержки очень важны! Вы можете сэкономить пару миллисекунд за счёт того, что сервер написан на Расте, но потерять десятки и сотни миллисекунд из-за того, что выбрали устаревший протокол

Sign up to leave a comment.

Articles