mirror of https://github.com/voidlizard/hbs2
devlog
This commit is contained in:
parent
e8b87666e6
commit
9c5d9e01f8
|
@ -1,4 +1,45 @@
|
|||
|
||||
## 2023-02-23
|
||||
|
||||
TODO: http-cache-protocol
|
||||
Сделать http worker, который будет поддерживать команды
|
||||
|
||||
```
|
||||
GET /hash/read
|
||||
GET /hash/cat
|
||||
```
|
||||
|
||||
для чтения блока и стриминга блока соответственно.
|
||||
Сделать протокол согласования HTTP CACHE, наподобие
|
||||
|
||||
```
|
||||
data HttpCache =
|
||||
HttpCacheRequestRead...
|
||||
| HttpCacheRequestCat ...
|
||||
| HttpCacheAnnounceRead ...
|
||||
| HttpCacheAnnounceCat ...
|
||||
```
|
||||
|
||||
Смысл в том, что публично доступная нода может просто
|
||||
анонсировать свой HTTP Cache, и все могут качать с него.
|
||||
Файлы будут отдаваться системным вызовом sendfile, снимая
|
||||
всякую нагрузку с нас.
|
||||
|
||||
В дальнейшем можно сделать тоже самое для QUIC. То есть,
|
||||
сигнализация будет ходить по нашему UDP, а вот проблематичные
|
||||
жирные процессы будем выносить вовне.
|
||||
|
||||
При таком подходе, кстати, можно взять не хаскельную реализацию
|
||||
QUIC, а любую устраивающую.
|
||||
|
||||
Нам по факту надо поддержать только скачивание, остальные команды
|
||||
вполне могут ходить по UDP.
|
||||
|
||||
Напомним, что пытаться контролировать чтение каким-либо образом,
|
||||
кроме криптографической защиты - бессмысленно. Можно даже не
|
||||
утруждаться аутентификацией.
|
||||
|
||||
|
||||
## 2023-02-22
|
||||
|
||||
TODO: prefer-local-peers
|
||||
|
|
Loading…
Reference in New Issue