|
|
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Наидобрейшего всем. Вопрос скорее всего тривиальный, тем не менее прошу консультации знатоков. Так случилось что нужно прикрутить бэк-енд к ЯваСкрипту, т.к. последний действительно крут. Коллеги накидали ссылок на В8.. посмотрел хелло_ворлды, впечатление что С++ исключительно как процедурное программирование туда можно вписать. т.е. вызываются функции, возвращают что-то и т.д. (при первом приближение) Вопрос: Как наилучшим образом обрабатывать потоки данных, возможно ли это делать в ЯС паралелльно.. т.е. менять значения переменных считываю инфу из потока+отслеживать события мыши(например) ...т.е. интерактивно взаимодействовать как с пользователем так и с бэк_ендом, даные на котором постоянно обновляются и передаются на ЯС_фрон_енд тогда, если это возможно, то через что?? можно например читать из БД, но это слишком медленно, можно читать из ммммм... АктивМКу, подключаясь через С++ АПИ, которое вызывать можно через С++ код, который В8.. но какой-то трешь.. Прошу поделитесь лучшими практиками. ЯС понимаю, но не пишу на нём(пока). Кароче говоря как подключиться к консумеру в реал-тайме, м б по тсп\айпи?) Большое спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2013, 19:26 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2013, 19:39 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Извини, коллега, но это словесный понос ... Что значит "потоки данных"? - Тебе риал-тайм синхронизация нужна (Комет)? Или судя по следующим предложениям, банальное получение данных с сервера и отправка запросов? Определись, плиз, и не кидайся словами, особенно терминами. Далее очень смахивает на то, что ты не очень представляешь что есть MQ и в частности, его взаимодействие с клиентом (кстати, действительно есть версия ActiveMQ под С?- не знал). Ну и напоследок, а есть технологии в вебе, альтернативные протоколу сетевого уровня TCP/IP? А ну-ка, ну-ка ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2013, 20:45 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________ЯС понимаю, но не пишу на нём(пока)везет же людям, я вот пишу но не понимаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2013, 21:42 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
IDVsbruck, Не е*лань. Ты слишком толст. Но отвечаю. Потоки - абстракции потребляющие или производящие. Вика в помощь Что нужно я написал, но ещё раз (для тебя!): Интерактивно взаимодествовать как спользователем так и с бэк_ендом. (Да, я кидаюсь терминами) Говорите банально?? Покажите мне Вашу историю успеха.. асинхронную, праздничную. Товарищи в Фриско пользуют это , представляешь, можно вызвать от туда АктивМКу ..прикинь?! По поводу протокола... альтернативного протоколу сетевого уровня, ты вменяем??? Речь о том что можно передавать напрямую в сокет, можно на уровнях повыше(АктивМКу). Мы взрослые люди (Я). Вести разговор в таком ключе не приятно, странно. Что значит ну-ка ну-ка.. мальчик, успокойся, бл***ть. И тем более... Если Вы не мальчик, и понимаете о чем речь, к чему слова когда в небе летучие мыши. Блесните эрудицией, историями успеха, расскажите как.. и давайте подумаем вместе, но не надо троллить. Меня тролят на ветки Ява, С++.. и Вы ещё.. Смишно! Модератор: Прикинь, я еще и модератор тут! Конечно, за подобные слова надо сразу выкидывать посты и в бан, но по словам вижу, что ты не тролль, а просто слишком ярко горишь, поэтому и трогать ничего не буду. Просто чуть успокойся и лучше говори просто своими словами, а не этими дикими терминами, с которыми у тебя чуток нескладушки. [IDV] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 01:21 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Паганель, читаю-читаю-читаю.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 01:25 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________, Я вообще потерялся в твоём потоке сознания. Ты задаёшь вопросы, или от балды кнопки жамкаешь, давая какие-то дурные странные, не относящиеся к сабжу ссылки? Может, тебе вэбсокеты нужны? ПС. Кстати, насчёт терминов, не кидайся ими. Потому что многие из них (например, потоки), часто обозначают совершенно разные вещи. ППС. На тон пониже. Это я тебе, как модератор параллельного форума говорю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 09:52 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Вы говорите поток, а ссылку даете на поток данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 10:03 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________По поводу протокола... альтернативного протоколу сетевого уровня, ты вменяем??? Речь о том что можно передавать напрямую в сокет, можно на уровнях повыше(АктивМКу). TCP/IP (когда пишут вместе) - согласно принятой модели (типа модели OSI) это протокол третьего - сетевого уровня (поверх канального и физического). Фактически популярных протоколов там больше нет, на слуху только ICMP, ARP и устаревший IPX. В любом случае любое соединение, которое ты попытаешься сделать со странички, будет базироваться именно на TCP/IP и альтернативы нет. А вот TCP/IP (или просто IP) уже имеет протоколы четверного - транспортного уровня - TCP, UDP (остальные даже на слух ни о чем не говорят) и фактически тут тоже нет альтернативы для веба. И опять-таки, использование UDP - это передача с потерями, хотя и быстрее, поэтому используют для потокового видео или аудио, но для передачи данных он не подходит. Так что тут тоже без альтернатив. И на последнем - седьмом, прикладном уровне - уже появляется разнообразие: HTTP, SSH, FTP, SMTP, Telnet, SNMP. Но даже при этом разнообразии выбор веб-программиста крайне скуден - на 95% HTTP, 5% SSH (HTTPS) и редчайшие индивидуумы пытаются прикрутить что-то большее, не универсальное и сложное, типа SNMP. Так что, дорогой, чем бы ты не пользовался, тебе прийдется либо базироваться на HTTP/SSH (все комет-технологии), либо использовать Sockets - протокол пятого, сессионного (обычно тоже включают в общий прикладной уровень) уровня, банально тоже входящий в TCP. Поэтому вопрос о вменяемости по данному вопросу, я думаю, излишен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 10:43 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________Товарищи в Фриско пользуют это , представляешь, можно вызвать от туда АктивМКу ..прикинь?! Я активно использовал ActiveMQ - как напрямую через сокеты коммутацией через Спринг, так и банальными ajax-запросами через Apache Camel для сериализации и маршрутизации запросов. Остался доволен работой, хотя очень глубоко (с подключением спецбазы и протоколированием) влазить не стал. Другое дело - не совсем понятно, как использование (или неиспользование) того же ActiveMQ влияет на выбор сетевого, транспортного или прикладного протоколов? Ему-то все равно, он получит на входе сообщение, доставит по адресу и заставит обождать в очереди, пока другие будут обрабатываться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 10:51 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
IDVsbruckkT_________Товарищи в Фриско пользуют это , представляешь, можно вызвать от туда АктивМКу ..прикинь?! Я активно использовал ActiveMQ - как напрямую через сокеты коммутацией через Спринг, так и банальными ajax-запросами через Apache Camel для сериализации и маршрутизации запросов. Остался доволен работой, хотя очень глубоко (с подключением спецбазы и протоколированием) влазить не стал. Другое дело - не совсем понятно, как использование (или неиспользование) того же ActiveMQ влияет на выбор сетевого, транспортного или прикладного протоколов? Ему-то все равно, он получит на входе сообщение, доставит по адресу и заставит обождать в очереди, пока другие будут обрабатываться. Парни, не пишу на ЯС, читаю оптом про все библиотеки которые в тренде. АктивМКу как один из вариантов токо, как передавать инфу из С++ кода. Главный вопрос, как в ЯС многопоточность, асинхронность и прочее организовать.. по ссылке на хабр прочитал.. события и тп. ..хз. Можно например так суть задачи описать: Веб-интерфейс - клиент (условно Квэке3), подключается к серваку (через что угодно, но быстрое), аналогично другие клиенты.. подключаются. Играем). Конечно мне не шутер нужен, но взаимодействие именно такое. Как на ЯС сделать??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 13:50 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________IDVsbruckпропущено... Я активно использовал ActiveMQ - как напрямую через сокеты коммутацией через Спринг, так и банальными ajax-запросами через Apache Camel для сериализации и маршрутизации запросов. Остался доволен работой, хотя очень глубоко (с подключением спецбазы и протоколированием) влазить не стал. Другое дело - не совсем понятно, как использование (или неиспользование) того же ActiveMQ влияет на выбор сетевого, транспортного или прикладного протоколов? Ему-то все равно, он получит на входе сообщение, доставит по адресу и заставит обождать в очереди, пока другие будут обрабатываться. Парни, не пишу на ЯС, читаю оптом про все библиотеки которые в тренде. АктивМКу как один из вариантов токо, как передавать инфу из С++ кода. Главный вопрос, как в ЯС многопоточность, асинхронность и прочее организовать.. по ссылке на хабр прочитал.. события и тп. ..хз. Можно например так суть задачи описать: Веб-интерфейс - клиент (условно Квэке3), подключается к серваку (через что угодно, но быстрое), аналогично другие клиенты.. подключаются. Играем). Конечно мне не шутер нужен, но взаимодействие именно такое. Как на ЯС сделать??? Таймеры? и ещё, кто-нить пользовал В8??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 13:54 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 14:59 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________, Парни, кто работает с \/8 ?? расскажите в двух словах про ноде.яс и как это всё работает.. куда единицы трансляции подкладывать?)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 16:17 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________kT_________, Парни, кто работает с \/8 ?? расскажите в двух словах про ноде.яс и как это всё работает.. куда единицы трансляции подкладывать?)) https://developers.google.com/v8/get_started ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 16:24 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________, В свете твоих восторгов, что JS "действительно крут", огорчу: JS, как Федот - "не красавец, не урод, не румян, не бледен, не богат, не беден, не в парше, не в парче, а так, вообче". Здесь есть пара-тройка вменяемых мемберов, которые могут тебя вразумить. Стиль выдает в них опытных рабочих лошадок (да простят меня они - это респект, сам из таких), слизавшим не один пуд соли. Это данность (JS). И в разрезе направления раздела форума - это клиент в тесной связке с разметкой. Попытки придать JS иные ипостаси (NodeJS) - это к другим пенатам. Отсюда: как сказал IDVsbruck (один из этих), попытки философствовать по поводу предназначения JS обречены на провал. Как правильно ты определил (от обратного) - предмет обсуждения - фронт-энд. Что бихайнд - никого не волнует. Хоть доморощеный ЯП. Коль ты см признался, что не работал с JS - то просто поиграйся. И много станет ясно. ПС: задача в топике не поставлена - что надо-то? Сам давал ссылки - уж должен прочухать, что за зверь. Тем более, что писать плюсах - это уже круто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 23:32 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. mda.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 04:00 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Парни, скажите правильно ли я понимаю ЯС? 1. можно на сервере запустить ноде.яс который деспетчит хоть что, и браузерам клиентов отдавать инфу. 2. можно при этом читать из очередей. 3. можно убрать ЯС с серверной стороны, например если есть на С++ бэк+энд, и с браузера сразу читать АктивМКу, или какие-то другие протоколы. 4. Есть что-то что делает С++ код в ЯС код, и можно ЯС не учить)) 5. не понял что с многопоточностью со стороны клиента. 6. Есть ещё \/8, и код С++ можно компилить и запускать на серваке, модулями.. подключая их в ЯС. 7. скорость везде разнится не существенно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 05:10 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
IDVsbruckkT_________Товарищи в Фриско пользуют это , представляешь, можно вызвать от туда АктивМКу ..прикинь?! Я активно использовал ActiveMQ - как напрямую через сокеты коммутацией через Спринг, так и банальными ajax-запросами через Apache Camel для сериализации и маршрутизации запросов. Остался доволен работой, хотя очень глубоко (с подключением спецбазы и протоколированием) влазить не стал. Другое дело - не совсем понятно, как использование (или неиспользование) того же ActiveMQ влияет на выбор сетевого, транспортного или прикладного протоколов? Ему-то все равно, он получит на входе сообщение, доставит по адресу и заставит обождать в очереди, пока другие будут обрабатываться. И оффтоп)) ..АктивМКу который поверху тспайпи, он ощутимо на производительность влияет, чем если просто в сокеты голые писать-читать??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 05:14 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________, Вот выдержка из JavaScript the Definitive Guide про потоки: " the core JavaScript language does not contain any threading mechanism, and client side has not defined any either. HTML5 defines WebWorkers which serve as a kind of a background thread, but client side JavaScript still behaves as if it is strictly single-threaded." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 09:48 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
kT_________И оффтоп)) ..АктивМКу который поверху тспайпи, он ощутимо на производительность влияет, чем если просто в сокеты голые писать-читать??? Ёпсель-мопсель! Да возьми ты хоть Википедию почитай ... протоколы - это одна плоскость, диспетчер очередей (MQ) - другая, они так же увязываются как "быстрый" и "красный" ... Протокол - это фактически транспорт, с помощью которого ты доставляешь данные с клиента на сервер, основные потери (при устойчивой физической связи) - это время на коммутацию с веб-сервером (выделение порта если надо, создание потока в многопоточной среде, парсирование заголовков запроса, и лишь потом чтение из потока), сокеты фактически устанавливают это при его создании и тратят время только на чтение из потока, поэтому быстрее. Однако некоторые технологии, базирующиеся прямо поверх HTTP, не сильно уступают сокетам по времени потерь, однако являются более универсальными при разнообразии браузеров, и гораздо проще в реализации (смотри комет-технологии). И вот то, что ты получишь на входе веб-сервера, ты сериализуешь (если надо) и направляешь "на вход" MQ, чтобы обработать. Основным достоинством брокера является не скорость (просто обработать запрос веб-сервером будет быстрее), а гарантия (!) того, что запрос достигнет цели за счет создания и хранения сообщения в очереди - не зря же называется он Message Queue, плюс ветвление по критериям, плюс наличие кластеризации для крупных систем, плюс способность защищать данные путем помещения их во внутреннюю (Kaha, кажется) или внешнюю базу, а также возвращение ответа обратно "на выход" для последующей отправки его клиенту (в рамках нашего веб-проекта). Я почему спросил, работает ли ActiveMQ с С, - он реализует стандарт JMS (Java Message Service), вроде как все завязано на Java-технологиях. Отсюда недоверие к тому, как он сможет работать с другими ЯП (в частности с node.js). На Java же работа с тем же ActiveMQ, особенно с фреймворком Spring, - это почти удовольствие - десяток строк конфига XML и он работает. Как быть с остальными - не знаю. Надеюсь, ты понял негодование и возмущение твоими терминологическими "экзерсисами" - ты берешь последовательные и независимые друг от друга понятия и пытаешься их плотно переплести. Судя по вопросам и "подкованности", с наскока овладеть этими высокими технологиями у тебя не получится. Начни с малого: варенье отдельно, мухи отдельно - интерактивность реализуй с помощью банального Long Polling, а данные базы получай параллельными асинхронными запросами. Вроде как это разные вещи. А сокеты и MQ обождут ... Тем более, веб - такая штука, когда в любом случае есть задержки, абсолютного real-time не получится (даже в Скайпе иногда видны такие задержки, несмотря на специальные протоколы передачи видео), поэтому при пинге 20 мс (сделаем тебе подарок, хотя не поверю) получишь ты ответ не через 60 мс (20 туда, 20 назад, 20 на сервере), а через 80 мс (на обработку заголовков добавим 20 мс) - не велика потеря ... А реальные "бытовые" пинги большинства провайдеров находятся далеко за сотню. P.S. Ух, не думал, что до сочинения сказок для объяснения проблемы дойду ... P.P.S. от модератора. Или задавай КОНКРЕТНЫЕ вопросы по HTML, JavaScript, VBScript, CSS, или я буду прикрывать эту пустую болтовню (в которую сам вовлекся). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 10:37 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Можешь ответить, плиз: 1. можно на сервере запустить ноде.яс который деспетчит хоть что, и браузерам клиентов отдавать инфу. 2. можно при этом читать из очередей. 3. можно убрать ЯС с серверной стороны, например если есть на С++ бэк+энд, и с браузера сразу читать АктивМКу, или какие-то другие протоколы. --- тут НЕТ 4. Есть что-то что делает С++ код в ЯС код, и можно ЯС не учить)) --- JSPP?? и что-то ещё 5. не понял что с многопоточностью со стороны клиента. --- только на ноде.яс 6. Есть ещё \/8, и код С++ можно компилить и запускать на серваке, модулями.. подключая их в ЯС. 7. скорость везде разнится не существенно и можно закрывать)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 16:18 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Не могу. С node.js и С++ не работаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 16:23 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
Парни, кто может с блиц-опросом по ЯС помочь?)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 16:53 |
|
||
|
JavaScript и асинхронное взаимодействие с С++/Ява_бек_енд
|
|||
|---|---|---|---|
|
#18+
TA-DAM!!!! A faster, more responsive web server is only one building block to creating real-time web applications. Next we need to examine how the client browser and web server communicate, a.k.a. the transport layer. Traditionally, all communications are initiated by the client browser and the web server responds to requests. So, for example, in a traditional "real-time" web application, the client browser sends a constant stream of requests to the web server asking for updates (a process known as "polling"). If an update is available, the server responds and sends the new information to the client. The application is only "near" real-time because it is dependent on the frequency of requests and as the number of requests grow, the web server needs to greatly increase resources to handle them. Socket.io is a Node.js package that provides WebSockets functionality, allowing the server to push information to connected clients without the need for polling. Socket.io also provides a number of fallback transport options to achieve the widest range of browser and platform support possible. The final piece of the stack is Now.js. Now.js provides a shared namespace between the web server and the client browser. This allows servers to directly call functions and access variables on the client and vice versa. A simple chat application in Now.js would involve the client browser calling a server function to send a message to everyone connected. The server function would in turn call a function on all connected clients to display the message. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2013, 17:51 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=38368585&tid=1447996]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 381ms |

| 0 / 0 |
