Size: a a a

Clojure — русскоговорящее сообщество

2020 June 11

AS

Anatoly Smolyaninov in Clojure — русскоговорящее сообщество
Валентин Бомбин
Подскажите, что не так написал?
(import Yylex)
(def obj (new Yylex "test "))

ругается
No matching ctor found for class Yylex
так на вскидку, тут написано что для String нет конструктора http://www.cs.cornell.edu/~jkc38/projects/sls/javadoc/eece496/parsetree/Yylex.html
источник

AS

Anatoly Smolyaninov in Clojure — русскоговорящее сообщество
можно попробовать (StringReader. “test”)
источник

A

Alish in Clojure — русскоговорящее сообщество
Maxim Penzin
какой плюс ожидается от асинхронных хендлеров?
А где они тогда вообще применяются? Думал сценарий подходящий
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Alish
А где они тогда вообще применяются? Думал сценарий подходящий
вообще, надо начинать с того, что однопоточная непрерываемая программа наиболее эффективна в плане производительности.
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
дальше стоит представить себе cpu и как оно будет обрабатывать несколько разных тредов
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
потом представить случай, когда cpu-core больше одного
источник

IG

Ivan Grishaev in Clojure — русскоговорящее сообщество
вот только на io, в тч. сетевом можно знатно просесть.
источник

A

Alish in Clojure — русскоговорящее сообщество
Maxim Penzin
вообще, надо начинать с того, что однопоточная непрерываемая программа наиболее эффективна в плане производительности.
Это да, вроде как в nginx так и устроено внутри? Один «обработчик» на одно ядро
источник

A

Alish in Clojure — русскоговорящее сообщество
Получается асинхронные хэндлеры не нужны?
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Alish
Получается асинхронные хэндлеры не нужны?
получается, что надо сначала понять что и как работает
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
сами по себе такие хэндлеры ничего не дадут
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
то есть, слово "асинхронно" очень модно в сообществе нодежс, где все просто встает колом при первом же блокирующем вызове
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
ну в остальном мире это не совсем так
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Для начала вам надо четко представить себе свою систему, как она обрабатывает сообщения, и что происходит, когда она не успеа обработать 1, 10 или 1000 сообщений
источник

A

Alish in Clojure — русскоговорящее сообщество
Maxim Penzin
получается, что надо сначала понять что и как работает
Ну знаете ли, тогда бы я сюда не писал вопрос этот 😁
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Alish
Ну знаете ли, тогда бы я сюда не писал вопрос этот 😁
так вот и давайте распишем, что за сообщения, откуда идут, в каком количестве и что с ними надо делать
источник

A

Alish in Clojure — русскоговорящее сообщество
Так вроде же расписал - сообщения идут из браузера через sendBeacon на веб-сервер, количество сейчас – ну от силы пару десятков в секунду, что с ними делать – для начала просто записать куда-нибудь, аналитики еще не поспели)
источник

A

Alish in Clojure — русскоговорящее сообщество
Может я заморачиваюсь и масштаб проблемы вообще не предполагает ничего асинхронного
источник

MP

Maxim Penzin in Clojure — русскоговорящее сообщество
Alish
Так вроде же расписал - сообщения идут из браузера через sendBeacon на веб-сервер, количество сейчас – ну от силы пару десятков в секунду, что с ними делать – для начала просто записать куда-нибудь, аналитики еще не поспели)
два десятка сообщений в секунду можно куда-нибудь записать даже на Raspberry Pi
источник

A

Alish in Clojure — русскоговорящее сообщество
Хотя в ближайшее время предполагается в разы больше
источник