Здравствуйте!
Насколько допустимо прямое изменение БД (например, создание ноды или хотя бы изменение комментария)? От чего зависит время, через которое в запущенных консолях появятся сделанные изменения, произойдет ли это автоматически?
			
			
			
				В подавляющем большинстве случаев прямое изменение БД работать не будет. Большая часть информации кэшируэтся, и сервер не рассчитывает на то, что информация изменяется в БД. В большинстве случаев изменения, сделанные напрямую, будут перезаписаны сервером. Если какие-то изменения требуются для интеграции с другими системами, то можно использовать API сервера.
			
			
			
				Проблема в том, что API только для Java - и это несколько неудобно :(
			
			
			
				Ну, есть еще C API :) А что конкретно надо сделать? Возможно есть обходной путь без использования API...
			
			
			
				Пока именно создание ноды и изменение комментария внешним перловым скриптом - и городить для этого Java-прослойку совсем не хочется, а с другой стороны связываться с perl XS с учетом худшей документированности C API тоже не очень хочется.
			
			
			
				Да, без API ноду не создать. Похоже что надо раширять набор интерфейсов к системе :) Я вижу несколько возможных путей - web services, клиент для командной строки, или расширение возможностей NXSL скриптов + возможность их запуска внешней командой.
			
			
			
				Если б протокол обмена с сервером базировался на чем-то широко распространенном (JSON/XML-RPC? REST? Hessian/Burlap? Protobuf? Thrift?), то проблемы, наверное, не было бы.
А возможность дернуть NXSL-скрипт извне как из командной строки, так и по HTTP  - замечательная идея. Но в этом случае внутри NXSL-скриптов должен быть доступен аналог Java API. Я даже боюсь себе представить трудоемкость такой задачи. Пока научить бы NXSL с таблицами работать ...