Обновить
-3

Пользователь

Отправить сообщение

Попробуйте https причём обычный, а не 2.0 и не quic.

Вы будете смеяться но под капотом gRPC лежит http 2. Хотя вы можете поизучать вопрос более детально и поискать в протоколе http 2 информацию о том есть ли там что-то для отключения миксера для передачи файлов.

Обычный же https на http 1.1 даст и шифрование трафика и tcp поток после передачи заголовков (если интересно посмотрите как делается переход с http на websocket и другие протоколы поверх открытого порта через http) и собственно удобство заголовков как таковых.

На стороне сервера создаёте JWT токен, подписываете и передаёте его клиенту. Клиент подключается по https, передаёт JWT в заголовке (изучите какие заголовки для этого бывают), а сервер принимает файл после того как обработает JWT.

JWT в данном случае может быть двух видов:
- с данными куда и что положить, то есть прямое указание к действию, тогда база данных для задачи не нужна, тут нужна дата внутри токена и дата экспирации.

- максимально компактный (uid пользователя или uid задачи и например для чего этот токен + подпись), тогда по идентификатору можно вытащить всё необходимое из базы. Тут даже даты может не быть, но с датой можно сразу не ходить в базу данных.

Дальше вопрос как передавать файлы по http... путей два:) Обычными файлами как это делают браузеры или самописный вариант на основе открытого порта (перевести его в "другой" режим, например бинарный)

Ещё можно перевести запрос в обратную сторону, что бы сервер стал вытягивать данные с клиента.

Токен тоже не обязательно должен быть JWT. Можно простую строку подписать в формате: {request_id}.{sign}, многие сессии в браузере выглядят похожим образом. Но часто там что-то вроде base64({user_id}.{timestamp}.{sign})

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

Привет. Интересный концепт. Очень полезное такое делать. Но... есть небольшая проблема.

gRPC очень медленный для передачи файлов.

Маленькие чанки -> оооочень медленно.
Ограничение в 40 мегабайт на запрос выглядит хорошо, но... тоже медленно.

Проблема в миксере трафика в канале. Даже когда вы отправляете запросы от одного клиента в один поток - на деле это куча маленьких чанков внутри.

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

Увеличенные лимиты на клиенте и сервере эту задачу тоже не решают.

Решение: передавать по gRPC только мета-информацию, а для файлов открывать отдельные соединения.

Для технической статьи очень мало информации. Чем принципиально отличается от PWA в обычном браузере с установкой "на рабочий стол"?

"легковесный PWA-браузер" - это значит что он накодил прям полноценный браузер с нуля? Или собрал браузер на базе уже готового браузера?

"Хост на Qt/KDE Frameworks предоставляет изолированный WebView" - чем отличается от изоляции в PWA в обычном браузере?

"Приложения работают в отдельных "силосах" " - что за силосы такие?:)

"Без Electron и без обычного браузера" - тоесть браузер он всё таки накодил? или WebView это не браузер?

Что вы там курите автор?

Почитал оригинал - там тоже такой же набор странностей.

Это всё интересно... но где фильмы-то? Где турецкие сериальчики?:) В чём смысл?:)

Это прекрасно что вы нашли себе gin:)

Похоже очередная статья написанная GPT.

Полнейшая чушь.

Наверное потому что на дворе 21 век и пора обновить стек.

Старание это конечно хорошо... но... https://go.dev/

		if atomic.LoadInt32(&mp.currentAlloc) < mp.maxSize {
			newID := int(atomic.AddInt32(&mp.currentAlloc, 1))

Кажется здесь баг... в конкурентном вызове под интенсивной нагрузкой в Get получим выход за пределы maxSize

Что-то электроскейтборды обидели совсем...:) Это самая популярная модель сезона?:)…
Увы в рабочее время…
А что если дата локальная и 60 +1 или +2 секунды в какой-то момент это норма?:)
Заманчиво, но доклады не на столько интересные что бы ехать. К сожалению. Или может просто стоило их чуть шире освятить.
Кто в курсе как называются кресла с 14 этажа? Специально посмотрел — не похожи на aeron miller, а вот с ходу оригинал найти не получилось:)
В компании есть два врача, приходят раз в неделю.
На курской:
— шум от вытяжки
— крайне скучные стены — серо-белые
— стол для игры есть но не вызывает желания задержаться
— крайне маленький и неудобный магазин где, похоже, точно не найдёшь ничего экстра-ординарного…
— музыки нет или её просто не слышно

Удивляюсь как в сети Мосигры попадаются такие магазинчики. Продавцы заверяли что время от времени народу много приходит, но честно их скорее жаль. Был там во вторник.
Вот тоже самое только переработанное под хабр хочется. Сам доклад не то что бы что-то новое хабру даёт.
Такой проект да на территории всей страны. Было бы супер полезно…

Информация

В рейтинге
5 546-й
Откуда
Россия
Зарегистрирован
Активность