Сообщения в Новое лицо ii-go

Re: Новое лицо ii-go

Ответ на сообщение
> В ii-go тоже есть разные режимы показа. И реверс со всеми сообщениями. И вид эхи. И вид с топиками. И форум. И даже блог. Причём не все даже выведены в шаблоны. Но они частично бесполезны в режиме когда контент создаётся в виде "одного потока". Правда, мои собственные эхи я хотя бы контролирую.
честно говоря, я этого не нашёл в интерфейсе.

в elp были переключаемые режимы: эха, форум (где поднимается наверх топик по последнему сообщению) и блог (классический блог, топик по времени публикации). ну и плюс тэги.

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

но формат эхи для малочисленной группы был самым живучим, поэтому после elp-0.4 был выпущен ii-0.5, а скоро будет nastene-0.7 :)
ahamai to hugeping (2024-11-03 13:12:26) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
ahamai> честно говоря, я этого не нашёл в интерфейсе.
Я думаю ты и не искал. :)

Форум: https://club.hugeping.ru/forum/
Блог: https://club.hugeping.ru/blog/std.hugeping
Эха: https://club.hugeping.ru/echo/std.hugeping
Топик: https://club.hugeping.ru/pgZZmWnIfm3dLZEAKc6W#pgZZmWnIfm3dLZEAKc6W
Новые сообщения в реверсе: https://club.hugeping.ru/echo/all/
hugeping to ahamai (2024-11-03 13:56:49) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
Честно говоря, не особо понятнее стало. Я тыкал весь интерфейс, но кроме кнопки форум ничего не нашёл. Да и вообще не особо понял различий, как-то оно одинаково выглядит.
ahamai to hugeping (2024-11-03 14:19:30) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
hugeping> Новые сообщения в реверсе: https://club.hugeping.ru/echo/all/
Текущая навигация ii-go.

Если на главной странице сверху нажать "Forum" - переходим в режим форума. Выйти из которого можно только нажав на logo (если из глубокого уровня вложенности, то несколько нажатий на logo)

Если на главной странице нажать на Subj сообщения - мы сразу попадём на это сообщение в режиме обычной эхи. С просмотром всех сообщений эхи рядом. Из режима просмотра всех сообщений можно попасть в конкретный топик нажав ">" рядом с сообщением.

Если на главной странице нажать на имя эхи (ярлык над сообщением) - попадаем в просмотр топиков эхи. В этом режиме можно выбрать другой режим: Echo :: Forum :: Blog

hugeping to hugeping (2024-11-03 14:25:14) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
http://blcat.ru:15555/

все представления выглядят по-разному. разве что из режима блога не сразу сообразил, как выйти. даже тэги есть. лента тоже есть, это главная страница. может всё же elp лучше переписать :) распределённую регистрацию или убрать или как-то заменить, и принять её за формат. хотя опять же, сложнаа, не зря я после elp-0.4 перешёл на ii-0.5, клиенты и серверы делать гораздо проще
ahamai to hugeping (2024-11-03 14:52:05) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
У меня статистика считается за сутки сразу после полуночи по тихоокеанскому времени - это 11 утра по Москве или 6 вечера по Владику, поэтому результат любого изменения лучше смотреть на следующий день.

И кстати у меня ведь теперь есть ii://spnet.uplink где можно это обсуждать :)
shaos to ahamai (2024-11-03 18:09:49) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
В 19:57 у меня статистика обновляется

И я говорил это не в контексте проблемы, а в контексте работы срезов. Несколько десятков мб трафика в сутки между серверами это вообще не проблема. Да и для меня - стационарного инета у меня нет, на одном номере 26 гб в тарифе на другом 50. В конце месяца обычно на одном телефоне остаётся неиспользованными гигабайт 10, на другом 50 :)

ps. В последнее время думаю, что /u/e нафиг не нужна и только всё усложнила, проще было, действительно, опрашивать эхи по одной. Кроме того это ещё и DoS атака, когда с крупного узла запрашиваешь разом все эхи, он сильно задумывается, а ведь каждую эху можно засунуть в запрос несколько раз... если бы не старые клиенты, я бы отрезал её вообще, оставив только e. Но уже ничего не сделаешь, так исторически сложилось.
ahamai to shaos (2024-11-03 20:08:12) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
ahamai> когда с крупного узла запрашиваешь разом все эхи, он сильно задумывается
Раз Шаос тут свой монстрокод кидал, могу и я свой кинуть (правда, это ещё не окончательный вариант, а в репе этого файла пока вообще нет и ещё долго не будет) чисто по обработке /u/e со стандартным слайсингом:
            e {
              set erange [lrange $pathparts 3 end]
              if {[llength $erange] > 0} {
                set limit 0
                set offset 0
                set lastel [lindex $erange end]
                if {[string match *?:?* $lastel]} { # slice detected
                  set sparts [split $lastel :]
                  set offset [expr {int([lindex $sparts 0])}]
                  set limit [expr {int([lindex $sparts 1])}]
                  set erange [lrange $erange 0 end-1]
                }
                # validate the rest of the echo list
                set erange [lmap ename $erange {expr {
                  [validecho $ename] ? $ename : [continue]
                }}]
                if {[llength $erange] > 0} { # recheck length after validation
                  repdata $sock $ishttp [indexechos $dbfile $erange 1 $offset $limit]
                } else {
                  reperror $sock $ishttp "invalid request"
                }
              } else {
                reperror $sock $ishttp "invalid request"
              }
            }
Но это не самое интересное. Самое интересное — процедурка indexechos:
# echo indexer for /e and /u/e
proc indexechos {dbfile echolist includenames offset limit} {
  set rdata {}
  set oquery {ORDER BY `id`}
  if {$limit > 0} { # trigger limiting logic only with positive limit value
    if {$offset >= 0} { # normal limiting flow
      append oquery " ASC LIMIT $offset,$limit"
    } else {
      set reallimit [expr {-$offset}]
      set realoffset [expr {$reallimit - $limit}]
      if {$realoffset >= 0} {
        append oquery " DESC LIMIT $realoffset,$reallimit"
      } else { # invalid limit, falling back to full query
        append oquery " ASC"
      }
    }
  }
  set query {SELECT CONCAT(`echoname`, ':', GROUP_CONCAT(`msgid`,'|' ORDER BY `id`)) AS `rowcat` FROM (}
  foreach echo $echolist {
    append query "SELECT * FROM (SELECT `id`, `msgid`, `echoname` FROM `msg` WHERE `echoname` = '$echo' $oquery) UNION ALL "
  }
  append query {SELECT NULL,NULL,NULL) GROUP BY `echoname` ORDER BY `echoname` ASC;}
  sqlite3 db $dbfile -readonly true
  db eval $query echorow {
    if {$echorow(rowcat) ne ""} {
      set eparts [split $echorow(rowcat) :]
      set ename [lindex $eparts 0]
      if {$ename ne ""} {
        if {$includenames > 0} {
          append rdata $ename \n
        }
        append rdata [join [split [lindex $eparts 1] "|"] \n] \n
      }
    }
  }
  db close
  return $rdata
}
Вот и с чего бы такой обработчик долго задумывался, если он все эхи (после валидации) в один проход запрашивает?
revoltech to ahamai (2024-11-03 20:19:42) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
Ну тут у тебя SQLite по ходу? Это читерство ;)
Настоящие пацаны БД на текстовых файлах держат ;)
shaos to revoltech (2024-11-03 20:22:57) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
shaos> Ну тут у тебя SQLite по ходу? Это читерство ;)
Да, он самый, как и на клиенте. Меня групконкат спасал ещё на мускуле в бытность вебдевом (период моей жизни, в который я не хочу даже в воспоминаниях возвращаться), выручит и теперь. Очень мощная вещь. И из того же периода я вспомнил трюк с долбаными юнионами, кстати.
shaos> Настоящие пацаны БД на текстовых файлах держат ;)
Да кто против-то, только не жалуйтесь на тормоза при запросе кучи эх со слайсами.
revoltech to shaos (2024-11-03 20:30:34) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
> Да, он самый, как и на клиенте
Кстати SQLite расслабляет - лучше сразу на MySQL/MariaDB ориентироваться. Например в SQLite ключом можно чо угодно сделать (насколько я помню) и порядок записей всегда хронологический, а в MySQL если ты не сделал ORDER BY оно выльется как попало в зависимости от того как оно там внутри само заполнило дырки...
shaos to revoltech (2024-11-03 20:43:13) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
> Вот и с чего бы такой обработчик долго задумывался, если он все эхи (после валидации) в один проход запрашивает?
причём здесь обработчик. я про нагрузку на сервер, когда с него опрашивают сразу все эхи разом. по одной, оно как-то спокойнее было.
ahamai to revoltech (2024-11-03 20:43:39) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
ahamai> причём здесь обработчик. я про нагрузку на сервер, когда с него опрашивают сразу все эхи разом.
Ну приведённый мной обработчик реагирует на запрос всех эх разом ровно так же, как и на запрос одной: формирует составной SQL-запрос с учётом срезов (если есть) и запрашивает инфу в базе. Откуда здесь дополнительная нагрузка на сам сервер возьмётся? Просто вложенных селектов будет больше, да. Но это уже проблема базы, хотя скулайт такие вещи обрабатывает крайне шустро. Не те объёмы, чтобы париться.
revoltech to ahamai (2024-11-03 20:51:24) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
> И кстати у меня ведь теперь есть ii://spnet.uplink где можно это обсуждать :)
Чото похоже ты у меня не забираешь обратно spnet.uplink т.к. у тебя всё ещё там 2 сообщения...
shaos to shaos (2024-11-04 05:20:57) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
shaos>> Настоящие пацаны БД на текстовых файлах держат ;)
revoltech> Да кто против-то, только не жалуйтесь на тормоза при запросе кучи эх со слайсами.
У нас столько эх нет, чтобы оно тормозило.
+++ Лично я вижу в этом перст судьбы – шли по лесу и встретили программиста.
Andrew Lobanov to revoltech (2024-11-05 04:46:37) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
AL> У нас столько эх нет, чтобы оно тормозило.
«Нет? Будут!» © Операция Ы/Напарник

Другое дело, что при запросе именно большого количества эх в /u/e можно опять уткнуться в тот же лимит на GET-запросы, что и в /u/m. Надо бы подумать, что с этим делать. Теоретически длина имени в эхе может быть и 120 символов, дык что, максимум |8000/121| = 66 эх за раз запрашивать?
revoltech to Andrew Lobanov (2024-11-05 10:59:01) [ссылка]

Очередной беспорядок

Ответ на сообщение
Опять цыганские фокусы с бегом впереди паровоза :)

В общем "ленте" - https://club.hugeping.ru/echo/all :
- ii://TLSU6VMtvHxMzuCHvszE находится выше, хотя отправлено в 11:13
- ii://B2s0Ze9vgPVEz7hLae6o находится ниже, хотя отправлено в 11:28

В этой "теме/ветке" тоже сбит порядок этими сообщениями - https://club.hugeping.ru/B2s0Ze9vgPVEz7hLae6o
   __---~~~~--__                      __--~~~~---__
  `\---~~~~~~~~\\                    //~~~~~~~~---/'
    \/~~~~~~~~~\||                  ||/~~~~~~~~~\/
                `\\                //'
                  `\\            //'
                    ||          ||
          ______--~~~~~~~~~~~~~~~~~~--______
     ___ // _-~                        ~-_ \\ ___
    `\__)\/~                              ~\/(__/'
     _--`-___                            ___-'--_
   /~     `\ ~~~~~~~~------------~~~~~~~~ /'     ~\
  /|        `\                          /'        |\
 | `\   ______`\_         DMC        _/'______   /' |
 |   `\_~-_____\ ~-________________-~ /_____-~_/'   |
 `.     ~-__________________________________-~     .'
  `.      [_______/------|~~|------\_______]      .'
   `\--___((____)(________\/________)(____))___--/'
    |>>>>>>||                            ||<<<<<<|
    `\<<<<>>>>/'

      ┏┓ ┏━┓┏━╸╻┏    ╺┳╸┏━┓   ┏━╸╻ ╻╺┳╸╻ ╻┏━┓┏━╸
      ┣┻┓┣━┫┃  ┣┻┓    ┃ ┃ ┃   ┣╸ ┃ ┃ ┃ ┃ ┃┣┳┛┣╸
      ┗━┛╹ ╹┗━╸╹ ╹    ╹ ┗━┛   ╹  ┗━┛ ╹ ┗━┛╹┗╸┗━╸
P.S. арт отсюда - https://gist.github.com/sottam/8786a280f7ab0cf184915cea3ea2c55a
tuple to tuple (2024-11-05 14:39:02) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
Да. Но видишь, свобода принимать сообщения от поинта с repto на отсутствующее сообщение важнее. Так что или терпим или снимаем с фетча. Свобода, она такая :)
hugeping to tuple (2024-11-05 14:49:50) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
hugeping> Да. Но видишь, свобода принимать сообщения от поинта с repto на отсутствующее сообщение важнее. Так что или терпим или снимаем с фетча. Свобода, она такая :)
А поменять местами уже на ноде можно?
+++ Никто не знает, как правильно. Так зачем же выдумывать правила?
doesnm to hugeping (2024-11-05 14:55:52) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
doesnm> А поменять местами уже на ноде можно?
Не уверен, что хорошая идея так как запись сообщений в бд не буферизируется. Разве что вручную. Но я бы просто фетч снял если честно. :) Тебе эта эха нужна?
hugeping to doesnm (2024-11-05 15:02:25) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
doesnm>> А поменять местами уже на ноде можно?
hugeping> Не уверен, что хорошая идея так как запись сообщений в бд не буферизируется. Разве что вручную. Но я бы просто фетч снял если честно. :) Тебе эта эха нужна?
А что кроме этой эхи читать? Разве что в linux эхе иногда сообщения появляются
+++ Никто не знает, как правильно. Так зачем же выдумывать правила?
doesnm to hugeping (2024-11-05 15:07:53) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
hugeping>> Не уверен, что хорошая идея так как запись сообщений в бд не буферизируется. Разве что вручную. Но я бы просто фетч снял если честно. :) Тебе эта эха нужна?
doesnm> А что кроме этой эхи читать? Разве что в linux эхе иногда сообщения появляются
Вот и я терплю. :) Пока.
hugeping to doesnm (2024-11-05 15:14:49) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
Это значит мне надо опрашивать blcat чаще чем раз в 5 минут чтобы эстетическую красоту соблюсти :)
shaos to tuple (2024-11-05 15:20:28) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
shaos> Это значит мне надо опрашивать blcat чаще чем раз в 5 минут чтобы эстетическую красоту соблюсти :)
Или проверять что поинт тебе шлёт сообщение с repto на отсутствующее сообщение. Не нода! Поинт.
hugeping to shaos (2024-11-05 15:27:28) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
> Или проверять что поинт тебе шлёт сообщение с repto на отсутствующее сообщение. Не нода! Поинт.
И где я это отсутствующее сообщение буду искать? Ломиться всех опрашивать на всякий случай?

Вобщем покa сделал забирание blcat каждые 10 минут - 3,13,23,33,43,53
shaos to hugeping (2024-11-05 15:45:59) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
> а ещё там был Квиток :) распределённая регистрация, где со своим квитком можно было ходить по любым станциям, на которых есть этот публичный ключ.
А можно про эти самые "Квитки" поподробнее? Как предполагалось привязывать ключ к пользователю? Что если на какой-то левой станции появится другой ключ с привязкой к тому же имени пользователя?

shaos to ahamai (2024-11-05 16:02:09) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
>> Или проверять что поинт тебе шлёт сообщение с repto на отсутствующее сообщение. Не нода! Поинт.
shaos> И где я это отсутствующее сообщение буду искать? Ломиться всех опрашивать на всякий случай?
Просто запрещать.
Это заставит поинта не делать плохо. :) Потому что сейчас revoltech ведёт себя не как поинт, а как что то среднее между поинтом и нодой. Кстати, когда он сделает себе ноду и будет работать с ней, такая проблема уйдет. (Но, возможно, придут другие? :)))

Ну, у нас федерация, я не настаиваю. Но как по мне - лучшее решение.
hugeping to shaos (2024-11-05 16:11:05) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
Вот я тут в декабре 2021 года свои мысли излагал применительно к IDEC

ii://FvAoTezksrljZy6PtSQ2
shaos to shaos (2024-11-05 16:11:19) [ссылка]

Re: Очередной беспорядок

Ответ на сообщение
doesnm>>> А поменять местами уже на ноде можно?
hugeping>> Не уверен, что хорошая идея так как запись сообщений в бд не буферизируется. Разве что вручную. Но я бы просто фетч снял если честно. :) Тебе эта эха нужна?
doesnm> А что кроме этой эхи читать? Разве что в linux эхе иногда сообщения появляются
Кстати посоветуйте эхи которые почитать можно. Подписан на idec.talks, develop.16, linux.14, retro.talks, idec.local
+++ Никто не знает, как правильно. Так зачем же выдумывать правила?
doesnm to doesnm (2024-11-05 16:15:38) [ссылка]

Re: Новое лицо ii-go

Ответ на сообщение
shaos> У меня статистика считается за сутки сразу после полуночи по тихоокеанскому времени - это 11 утра по Москве или 6 вечера по Владику, поэтому результат любого изменения лучше смотреть на следующий день.
shaos> И кстати у меня ведь теперь есть ii://spnet.uplink где можно это обсуждать :)
Хотите сказать что это сообщение шло до станции 2 дня? или hugeping снимал фетч
+++ Никто не знает, как правильно. Так зачем же выдумывать правила?
doesnm to shaos (2024-11-05 16:40:11) [ссылка]