|
|
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
DmSer Это те потоки, у которых закончился таймаут ожидания, или которые ожидали на объекте синхронизации ядра и были разбужены (например при вызове SetEvent или ReleaseMutex из другого потока). WSAEventSelect, а потом ожидаем события. Таким образом поток переходит в состояние ожидания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2021, 23:49 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU Но Node их всё равно сделает, причём в разы. К тому же придётся заплатить бабла Бесплатный мормот делает ноду . Это было семь лет назад. В комментах трех, угар и содомия, но почитать стоит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.01.2021, 23:56 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey SOFT FOR YOU Но Node их всё равно сделает, причём в разы. К тому же придётся заплатить бабла Бесплатный мормот делает ноду . Это было семь лет назад. В комментах трех, угар и содомия, но почитать стоит. не лишай оптимизатора надежды ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 00:04 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey, Думаешь за 7 лет ноду не оптимизировали Но инфа огонь Было бы интересно проверить на текущих версиях ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 00:10 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
DmSer SOFT FOR YOU DmSer, Многопоточность в JS есть, просто она сильно спрятана Никто не мешает похожий подход использовать и в Delphi Похожий на что? На промайзы или на async/await ? Я конечно могу быть неточен Но по-моему, всё это рутина вокруг задач (тасков) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 00:16 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 00:29 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey, Честно говоря, не особо распарсил Но я часто говорю, что менеджмент памяти на высоконапряженных приложений - это один из ключевых факторов, влияющих на производительность А мне не верят ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 00:56 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU Честно говоря, не особо распарсил Чего там парсить: Conclusion: – when using indy + threadpool + scalemm2, the same high throughput as node can be achived! (12000/s). При использовании инди с тредпулом и менеджером памяти, который умеет в потоки, достигается та же производительность, что и у ноды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 01:19 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU что менеджмент памяти на высоконапряженных приложений - это один из ключевых факторов, влияющих на производительность Не надо под нагрузкой - память просить, потоки создавать, соединения создавать, RTTI использовать. И прочей хренью заниматься, когда реально есть чем заняться ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 01:21 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Эти тесты уже семилетней давности, как бы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 01:39 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey, Во-первых, я не понимаю, чего ты уцепился в потоки на каждого клиента. Очевидно, что это бесперспективный путь Во-вторых, я не знаю, что значит Indy + ThreadPool. То есть они научились использовать задачи вместо потоков? Кстати ScaleMM2 жрет очень много системной памяти В-третьих, это было 7 лет назад. Надо тестировать сегодня Главное. Что ты имеешь против телеги? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 09:28 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Dmitry Arefiev, Если у тебя пик 10 клиентов и апи из пары команд - да Но не все же работают над такими проектами ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 09:30 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU Во-первых, я не понимаю, чего ты уцепился в потоки на каждого клиента. Очевидно, что это бесперспективный путь Этот бесперспективный путь работает не хуже перспективного. SOFT FOR YOU Во-вторых, я не знаю, что значит Indy + ThreadPool. То есть они научились использовать задачи вместо потоков? Нет, пул это не таски, это просто пул. Инди в него умеет с бородатых времён. SOFT FOR YOU Кстати ScaleMM2 жрет очень много системной памяти Во-первых, он не единственный, кто умеет в потоки. Во-вторых, плевать. SOFT FOR YOU В-третьих, это было 7 лет назад. Надо тестировать сегодня Тестируй. Можете вместе с начальником отдела разработки. SOFT FOR YOU Главное. Что ты имеешь против телеги? ) Ничего не имею. Она просто не нужна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 10:31 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey, Ну чтобы делать выводы, что работает не хуже - надо взять и замерить Сделай миллион подключений и возьми современную ноду Вангую 100х превосходство ноды ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 10:44 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU, Кому надо, тот берёт и тестирует. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 10:52 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey Бесплатный мормот делает ноду . Это было семь лет назад. В комментах трех, угар и содомия, но почитать стоит. А сейчас разработчик мормота выпустил свой супер быстрый и реально работающий менеджер памяти, который, скорее всего, не оставит ноде никаких шансов. Нода все-таки - тяжёлый JS, жрёт память вагонами. Хотя в простейших ситуациях может демонстрировать чудеса скорости (если мерять количеством http-запросов в секунду). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 10:57 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey SOFT FOR YOU Честно говоря, не особо распарсил Чего там парсить: Conclusion: – when using indy + threadpool + scalemm2, the same high throughput as node can be achived! (12000/s). При использовании инди с тредпулом и менеджером памяти, который умеет в потоки, достигается та же производительность, что и у ноды. Я несколько лет назад пытался использовать threadpool в Indy10, однако столкнулся с тем, что работает это очень нестабильно. Реально кто-нибудь использует Indy10 с тредпулом ? В инете чрезвычайно мало информации на эту тему! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 11:02 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey, Меня многие убеждали, что файловая система в современных операционных системах умно управляется с менеджментом и кешированием в ОЗУ, а значит, никаких кеш-буферов не нужно. Я проверил и получил превосходство в 1562 раза К чему я это говорю. Есть некие базовые принципы, которые закладываются в архитектуру, которые существенно влияют на производительность. Почему-то ты уверен, что создание 100500 потоков это эквивалентный путь. Ну дай бог, считай. Но мне не интересно тратить время на такие тесты ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 11:03 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Нода - всё-таки - не для высоконагруженных серверов! Это шанс разрабатывать бэкенд JS-разработчикам, которые ничего другого не знают. Думаю, GoLang порвёт ноду в десятки раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 11:04 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
DmSer, Delphi порвёт и ноду, и голанг, и джаву Если этим заняться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 11:11 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
DmSer Реально кто-нибудь использует Indy10 с тредпулом ? В инете чрезвычайно мало информации на эту тему! DataSnap. SOFT FOR YOU Но мне не интересно тратить время на такие тесты ) Цирк с конями, блин. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 11:33 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU DmSer, Delphi порвёт и ноду, и голанг, и джаву Если этим заняться Каким образом Delphi порвёт GoLang? Его даже C# не смог обогнать, хотя там есть поддержка асинхронного программирования на уровне языка (а в GoLang эквивалентного асинхронного программирования нет, зато есть Go-рутины :-). У нас в Delphi какую операцию не возьми - она блокирующая. Читаем файл, пишем файл, копируем файл, делаем запрос к БД, работаем с сетью - везде мы блокируем поток, поэтому вынуждены их создавать в большом количестве, компенсируем эту проблему с помощью пулов, PPL и т.д. Чтобы порвать GoLang, необходимо, чтобы любая операция была неблокирующая и при этом стиль кодирования должен оставаться синхронным (иначе это нафик никому не нужно, ибо становится слишком сложно). А для этого нужна поддержка async / await. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 11:47 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
SOFT FOR YOU DmSer пропущено... Похожий на что? На промайзы или на async/await ? Я конечно могу быть неточен Но по-моему, всё это рутина вокруг задач (тасков) Промайзы в JS это примерно следующее: https://github.com/VSoftTechnologies/VSoft.Awaitable ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 11:56 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey Цирк с конями, блин. Пургу несёшь ты, а цирк с конями у меня? Ну ок Мне не интересно это обсуждать Кстати один из членов команды сказал, что такие тесты будут проводиться Так что можешь подождать N времени и увидеть результаты Ну либо сделать что-то самостоятельно и убедиться в несостоятельности подхода, который предлагаешь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 12:18 |
|
||
|
IdTCPServer отправить сообщение клиенту
|
|||
|---|---|---|---|
|
#18+
DmSer, Конечно, языки различаются. На скриптовых «однопоточных» языках специальный упрощённый синтаксис, заточенный под особенности архитектуры Но под капотом это тот же самый пул потоков, на котором исполняются задачи В Node, Golang, Python и иже с ними используется специфичный менеджер памяти, с отложенной сборкой мусора, дефрагментациями, есть хендлы, дополнительные проверки, дополнительные синхронизации. На Delphi всё это можно провернуть оптимальнее Опять таки можно - не значит, что это будет Вопрос в том, какому количеству людей было бы интересно поучаствовать в таком проекте И постепенно шаг за шагом добиваться большей производительности и удобства Оглядываясь конечно на другие удачные решения. Того же мормота, ноды, rtc и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.01.2021, 12:31 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=40033565&tid=2037708]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
175ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 249ms |
| total: | 526ms |

| 0 / 0 |
