|
1 |
| -- open desriptors tracking |
2 |
| -- connection close |
3 |
| -- stop/shutdown |
4 |
| -- read/write timeouts |
5 |
| -- memcached протокол использует для значений массивы байт. Как передавать в комманды: |
6 |
| --- Сделать bufstream, который позволяет читать поток прямо из сокета. Тогда он должен быть запущен на отдельном |
7 |
| - потоке от event_loop'а |
8 |
| --- Вычитавать в память? |
9 |
| -<<<<<<< HEAD |
10 |
| -======= |
11 |
| - |
12 |
| - |
13 | 1 | # На следующий год
|
14 | 2 | Тут что нужно поменять к следующему году, по зметкам студентов и личным наблюдениям
|
15 | 3 |
|
|
23 | 11 | -- Оценки по по колличеству аллокаций памяти (помнится NASA report был какой-то)
|
24 | 12 | -- Типы аллокаторов (general, slab, e.t.c)
|
25 | 13 | - Интерфейс привести к стандартному для C++, вместо C'ого
|
| 14 | +-- Вот про это конкретно подумать, а то там шаблоны и магия местами...С другой стороны, нигде ВООБЩЕ нет внятного описания про то, как |
| 15 | +-- в С++ делать свои аллокаторы - полезно рассказать |
26 | 16 | - Выбрать 2 конкретные схемы для аллокатора (с учетом многопоточности. G1 & slab?)
|
27 | 17 | -- Сделать слайды для пояснения алгоритмов
|
28 | 18 | -- Для каждого написать полуготовую реализацию (народ жалуется на множество частных случаев, которые долго кодить)
|
|
43 | 33 |
|
44 | 34 | *Домашка*:
|
45 | 35 | Видимо выбрали слишком простую. Нужно еще что-то, кроме демонизации
|
46 |
| ->>>>>>> 29ea0e73f97d6f181583d2b8d44eec2888afe943 |
| 36 | +- Как насчет graceful restart? Тогда нужно чтобы уже IPC и сеть были |
| 37 | +- Сигналы между тредами - вот хорошая идея, например epoll будить и делать балансировку сокетов между epoll потоками через локальные очереди |
| 38 | + |
| 39 | +## Лекция 4 |
| 40 | +Пока нет feedback'а |
| 41 | + |
| 42 | +*Домашка*: |
| 43 | +- AHTUNG: так как про mutex не рассказывали еще, то тяжело сделать отслеживания потоков, соответственно тяжело дожидаться, когда все потоки |
| 44 | + отработают (читай соединения закроются) |
| 45 | +-- Перести лекцию по примитивам синхронизации В САМОЕ НАЧАЛО, вообще 1ой сделать! |
| 46 | +-- Аллокатор можно вообще в самый конец вынести, и сделать только slab, все равно другой в этой задаче не нужен |
| 47 | +-- Slab, кстати, можно хорошо сделать на LockFree (как у tarantool arena->slab_cache->mempool) |
0 commit comments