Комментарии 28
Оракл бы прикрутили…
Вот было бы в масть.
Вот было бы в масть.
-2
вот уж точно:)
-2
Лично мне для полного счастья не хватает только асинхронных С++ биндингов к mySQL. Есть написанные на JS но это не самое быстрое решение…
+1
Могу сказать, что заниматься асинхронностью в MySQL начну уже на будущей неделе :) Как только допишу всё связанное с fetchResult.
Конкретный список неблокирующих функций можно обсудить в вики на гитхабе.
Конкретный список неблокирующих функций можно обсудить в вики на гитхабе.
0
Собственно говоря нативные функции работают в 6-10 раз быстрее, чем то что написано на JS, сегодня тестил.
Довольно интересно получается, в PHP было нормальным долгое формирование ответа на основе шаблонов, тогда как скомпилированные шаблоны в NodeJS сильно уменьшают процентную долю этих операций.
Довольно интересно получается, в PHP было нормальным долгое формирование ответа на основе шаблонов, тогда как скомпилированные шаблоны в NodeJS сильно уменьшают процентную долю этих операций.
0
ещё бы… в пхп это дело парсилось интерпритатором при каждом обращении, а в некоторых шаблонизаторах (таких как xtemplate) ещё и регулярками при каждом обращении…
А node выплювывает из оперативки, с молниеносной скоростью шаблон со всеми данными, а кеш можно выносить на аболютно новый уровень… мне очень нравится такой подход =)
А node выплювывает из оперативки, с молниеносной скоростью шаблон со всеми данными, а кеш можно выносить на аболютно новый уровень… мне очень нравится такой подход =)
0
В рассылке node.js предлагали использовать вместо limysql библиотеку libdrizzle, в которой реализована родная асинхронность.
drizzle.org/ — форк mysql, но я не уверен, что drizzle ещё совместим по протоколу с mysql.
drizzle.org/ — форк mysql, но я не уверен, что drizzle ещё совместим по протоколу с mysql.
0
Судя по официальным материалам, libdrizzle поддерживает и будет поддерживать сервера MySQL, начиная с версии сервера 4.1.
www.mysqlconf.com/mysql2009/public/schedule/detail/6658
www.mysqlconf.com/mysql2009/public/schedule/detail/6658
0
Ryan в последний раз говорил про библиотеку mysac. Кроме того он вроде бы сам что-то писал, но не выкладывал кода. Планируется включить этот драйвер в поставку node, так что делать двойную работу не очень хочется. Я спросил на днях в рассылке, пока что реакции не было. Так что пока разбираюсь с libeio.
0
>неблокирующую
И даже на запись? Ведь в sqlite3, насколько мне известно, невозможна одновременная запись.
И даже на запись? Ведь в sqlite3, насколько мне известно, невозможна одновременная запись.
-1
Почитал ссылку. Очевидно имеется ввиду неблокирование работы трэдов приложения при обращении к БД.
-1
Неблокируемость здесь описана с точки зрения машины событий.
Цикл событий получает контроль обратно сразу же, и когда-нибудь позже произойдёт событие «Запись произведена успешно».
Цикл событий получает контроль обратно сразу же, и когда-нибудь позже произойдёт событие «Запись произведена успешно».
0
Это только для v8?
0
да да. сюда бы ещё native client присобачить. вот будет песня.
0
1. Во-первых, этот клиент использует SQL Lite C API. Не знаю, что можно найти роднее :)
2. Во-вторых, Javascript в V8 компилируется в родной машкод. что гарантирует очень хорошую производительность.
Так что вашего комментария я не понял :)
2. Во-вторых, Javascript в V8 компилируется в родной машкод. что гарантирует очень хорошую производительность.
Так что вашего комментария я не понял :)
0
NaCl гарантирует ещё более хорошую производительность.
0
Вы имеете ввиду это — en.wikipedia.org/wiki/Google_Native_Client?
node.js никаким образом не пересекается с этой технологией.
node.js написан на C++, и компилируется в родной код, что обеспечивает скорость выше, чем скорость NaCl.
И в качестве языка для написания приложений используется Javascript, который понятен для любого Web-разработчика.
node.js никаким образом не пересекается с этой технологией.
node.js написан на C++, и компилируется в родной код, что обеспечивает скорость выше, чем скорость NaCl.
И в качестве языка для написания приложений используется Javascript, который понятен для любого Web-разработчика.
0
NaCl позволить запускать как гарантированно нэйтивный код, так и интерпретаторы для всех остальных языков портированных в него, например ruby и php.
0
Но он же по определению медленнее родного кода.
Почитайте Wiki, там внедрена программная изоляция кода, что обеспечивает скорость «лишь немного ниже» родной.
NaCl вообще предназначен для Web-браузеров, а не для серверов.
На серверах мы запускаем доверенный код, и лишние затраты на изоляцию излишни.
Почитайте Wiki, там внедрена программная изоляция кода, что обеспечивает скорость «лишь немного ниже» родной.
NaCl вообще предназначен для Web-браузеров, а не для серверов.
На серверах мы запускаем доверенный код, и лишние затраты на изоляцию излишни.
0
V8 тоже как-то не для серверов изначально разрабатывался.
Затраты на изоляцию там ничтожно меньше потерь на обеспечение динамической природы js.
Затраты на изоляцию там ничтожно меньше потерь на обеспечение динамической природы js.
0
Вероятно, Вы имели ввиду создание клиента SQL Lite 3 под платформу NaCl.
Думаю, это не нужно. Работа с базами данных более правильно вынести на уровень склеивающего кода, то есть Javascript, тем более, что HTML5 Storage и Google Gears уже давно определёны.
Думаю, это не нужно. Работа с базами данных более правильно вынести на уровень склеивающего кода, то есть Javascript, тем более, что HTML5 Storage и Google Gears уже давно определёны.
0
> SQL Lite
это что за самодеятельность? =_="
это что за самодеятельность? =_="
+3
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
node.js и SQLite 3 — теперь друзья