Здравствуйте, koandrew, Вы писали:
K>·>F5 это вроде запуск дебаггера. А как задеплоится нужная версия платформы на нужный удалённый хост, как задеплоится собранный бинарник? K>Соответствующими настройками проекта.
Ну так можно эти настройки сюда cut&paste для примера? Естественно, они должны быть текстовыми — чтобы можно было положить в git и сделать code review при необходимости.
K>·>Как дебаггер поможет тебе построить график использования памяти, детали работы сборщика мусора, сделать дамп памяти, попрофилировать перформанс? K>Откройте уже дебаггер vs2015 и все такие вопросы отпадут сами собой.
Ты думаешь, что вокруг все идиоты сидят и не видели никогда отладчик в MSVS 2015?
Посмотри, пожалуйста, что конкретно просят — нужен не отладчик, а возможность снять телеметрию с удалённого узла, до которого прямого доступа может и не быть.
K>·>PS: jconsole это не дебаггер, а jmx, что есть аналог WMI, но которым удобно пользоваться. K>Говорю же, откройте и посмотрите сами.
Запустил. Чего смотреть? Как мне подключиться к продукционному Mono-серверу на Линуксе, до которого доступ через SSH?
Здравствуйте, Yoriсk, Вы писали:
Y>Можно приатачится студией к процессу на удалёной машине и она напрофилирует и нарисует графики. А так существуют профилировщики.
А каким образом делается аутентификация и авторизация? Как мне сделать так, чтобы интерн Вася не мог подключиться к серверу, но я сам мог? Целевая машина может быть ещё и в совершенно другой сети, не имеющей прямого соединения кроме как через бастион ( http://blog.scottlowe.org/2015/11/21/using-ssh-bastion-host/ )?
Это абсолютно обычные инженерные задачи в больших системах.
Y>Но вообще всё впечатляющие трюки из серии ̶и̶з̶ ̶г̶о̶в̶н̶а̶ ̶и̶ ̶п̶а̶л̶о̶к̶ ̶c̶о̶б̶р̶а̶т̶ь̶ ̶с̶а̶м̶о̶л̶ё̶т̶ "как парсить логи grep-ом". То есть это впечатляет студентов, но в реальности такие вещи делаются при помощи чуть более других инструментов.
А чем, простите? Если ты думаешь, что в реальности в тех же Google и Amazon используются какие-то магические четырёхмерные визуальные мега-интерфейсы, то тебя ждёт сюрприз.
Там те самые тупые grep'ы, часто помноженные на map-reduce кластеры.
Y>Я, наверное, просто не видел достаточно упоротых явистов, потому те, с которыми я сталкивался что разворачивали приложения билд-серверами причём в заранее подготовленый инвайромент. А разворачивать jdk из консоли... Там что-то сложнее hello world запустить получится?
Конечно. Более того, с Java легко можно упаковать все зависимости в один jar-файл (см.: https://maven.apache.org/plugins/maven-shade-plugin/ ) с помощью пары строк в maven-файле.
Здравствуйте, Cyberax, Вы писали:
C>Ну так можно эти настройки сюда cut&paste для примера? Естественно, они должны быть текстовыми — чтобы можно было положить в git и сделать code review при необходимости.
Я тебе дал ссылку — изучай.
C>Ты думаешь, что вокруг все идиоты сидят и не видели никогда отладчик в MSVS 2015?
Нет, не все, только луноходы.
C>Запустил. Чего смотреть? Как мне подключиться к продукционному Mono-серверу на Линуксе, до которого доступ через SSH?
Кому нужно такое говно, как линукс, когда есть нормальные ОС?
Здравствуйте, Cyberax, Вы писали:
C>Конечно. Более того, с Java легко можно упаковать все зависимости в один jar-файл (см.: https://maven.apache.org/plugins/maven-shade-plugin/ ) с помощью пары строк в maven-файле.
In order to install a package, Web Deploy must be installed on the destination server. In addition, the version of Web Deploy on the destination server must be compatible with the version on the development computer.
Ага, суперудобно.
Ещё есть вопросы, почему .NET уплыл в канализацию?
Здравствуйте, koandrew, Вы писали:
C>>Ну так можно эти настройки сюда cut&paste для примера? Естественно, они должны быть текстовыми — чтобы можно было положить в git и сделать code review при необходимости. K>Я тебе дал ссылку — изучай.
Изучил. Результат изучений показывает, что невозможно.
C>>Запустил. Чего смотреть? Как мне подключиться к продукционному Mono-серверу на Линуксе, до которого доступ через SSH? K>Кому нужно такое говно, как линукс, когда есть нормальные ОС?
Тем, кто строит системы из тысяч узлов. Но формоклёпщикам такое понять сложно.
Линукс, конечно, — полный отстой по сравнению с идеалом. Но вот только всё остальное настолько убого, что просто смешно.
Кстати, я тут уже просил как сделать так, чтобы можно было взять чистый образ Microsoft Windows и скриптом поставить на него MSSQL (или Postgres), настроить его на слушание всех интерфейсов (с ограничением на подсеть) и создать пользователя? И потом повторить это для 20 машин.
Здравствуйте, Arsen.Shnurkov, Вы писали:
AS>"Программа AlphaGo компании Google, одержала вторую подряд победу над одним из сильнейших в мире игроков в го Ли Се Долем."
Ага, ага.
То-то http://rsdn.ru/forum/java/ чуть менее, чем полностью забита темами "аааа помогите после апгрейда ЙДК6/Томкат7/Веблогик8 фсе перестало работать!!!11".
"Больше 100кмч можно ехать на автобане в любом ряду кроме правого крайнего" (c) pik
"В германии земля в частной собственности" (c) pik
"Закрывать школы, при нулевой смертности среди детей и подростков, это верх глупости" (c) Abalak
Здравствуйте, koandrew, Вы писали:
C>>Запустил. Чего смотреть? Как мне подключиться к продукционному Mono-серверу на Линуксе, до которого доступ через SSH? K>Кому нужно такое говно, как линукс, когда есть нормальные ОС?
Здравствуйте, Аноним931, Вы писали:
А>Ага, ага. А>То-то http://rsdn.ru/forum/java/ чуть менее, чем полностью забита темами "аааа помогите после апгрейда ЙДК6/Томкат7/Веблогик8 фсе перестало работать!!!11".
Ну вот открыл:
массив из списка
java.net.SocketException: Permission denied: connect
Разграничение доступа в J2EE
crm для небольшой конторы
Одинаковый дизайн нескольких web-приложений?
Добавление пулла соединений в Netbeans
Удаленно запустить shell-script через java-code
В чем отличие diamond от wildcard типа?
Xalan, как выхватить два бага на ровном месте
шина данных на слабом сервере
Связь между java applet и java application
Java vs JavaScript performance
mybatis
ЧСХ, нет ни одной проблемы с обратной совместимостью именно JDK. С натяжкой можно тему про SocketException туда отнести.
В общем, не надо бредить. В JDK обратная совместимость является, пожалуй, самым главным критерием релизов.
Здравствуйте, Cyberax, Вы писали:
C>А каким образом делается аутентификация и авторизация? Как мне сделать так, чтобы интерн Вася не мог подключиться к серверу, но я сам мог? Целевая машина может быть ещё и в совершенно другой сети, не имеющей прямого соединения кроме как через бастион ( http://blog.scottlowe.org/2015/11/21/using-ssh-bastion-host/ )?
А с какой целью сделан этот бастион? У меня такое подозрение, что это явление из мира "сервера разворачивают одни люди, эксплуатируют другие, а за файрволл отвечает самый безопасный безопасник, от которого проброса портов не допросишься".
C>Моё решение было — запустить 50 штук узлов с 36-ю ядрами в каждом и с помощью простого скрипта (ага, на bash) запустить на каждом тест и подождать результат. Работы в целом на 10 минут из-за того, что я знаю свои инструменты.
Я реализовывал подобные штуки для C#/win для самых разных контор. От натягивания на кластер блоков от TPL Dataflow до просто запуска кучи инстансов через AD которые в одну базу сливают результаты работ. Единого стандарта нету, но и рокет-сайнса которым бы стоило понтоваться тоже нету. Т.е. с точки зрения решения задачи или написания похоже утилиты — никаких проблем.
На винде задачек вида "запустить вслепую кучу одноразовой работы" реально меньше, вот и нет потребности в таких инструментах которые были бы на это заточены из коробки. Мир у винды другой, и комп с виндой почти всегда укомплектован экраном и человеком за ним. Поэтому если потребность что-то удалённо запустить возникает — то это будет уже не скриптец на раз, а полноценное решение которое делает что-то полезное для конторы круглыми сутками, к которому идёт сразу же удобный гуй для управленца который не сильно рубит в компах, чтобы давать права, видеть что там на экране, с форвардингом логов разрабам, автоапдейтом, и т.п.
Nemerle — power of metaprogramming, functional, object-oriented and imperative features in a statically-typed .NET language
Здравствуйте, hi_octane, Вы писали:
_>На винде задачек вида "запустить вслепую кучу одноразовой работы" реально меньше, вот и нет потребности в таких инструментах которые были бы на это заточены из коробки. Мир у винды другой, и комп с виндой почти всегда укомплектован экраном и человеком за ним. Поэтому если потребность что-то удалённо запустить возникает — то это будет уже не скриптец на раз, а полноценное решение которое делает что-то полезное для конторы круглыми сутками, к которому идёт сразу же удобный гуй для управленца который не сильно рубит в компах, чтобы давать права, видеть что там на экране, с форвардингом логов разрабам, автоапдейтом, и т.п.
Я думаю то, про что пишет Cyberax, реалзизуется с помощью PowerShell. Но это будет не 10 строчек, конечно, потому что инструментов соотвествующих нет.
Здравствуйте, Ikemefula, Вы писали:
AS>>Иметь такую утилиту важно, например при установке ПО надо модифицировать конфигурационные файлы. А нечем! Только Java! I>Разумеется, ибо это болезнь джавы. Все думают, что в джаве код пишется на джаве, а на самом деле ключевые вещи — на xml.
Это не болезнь Явы, а болезнь ынтырпрайза, в .net не меньше xml, а то и больше на сегодняшний день.
XML в последнее время искореняется в java мире. guice вместо spring ioc, servlet-api 3.0 без-xml-ный, аннотации вместо hibernate-маппинг конфигов, етс. И т.п. Для конфигов — примитивные плоские .properties файлы.
билд тулзы — grade, sbt, buck — всё без xml.
I>А есть на джаве софт навроде Fiddler ? Что бы приблизительно совпадал по возможностям.
Да вроде есть полудохлые аналоги, но спросом не пользуются. jmeter для тестов или аддоны внутрь браузера для подмены запросов, поиска уязвимостей.
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Здравствуйте, Cyberax, Вы писали:
C>Это абсолютно обычные инженерные задачи в больших системах.
В больльших системах ставят монитор/профилировщик на той же машине и не занимаются такой фигнёй. Ну накрайняк — на соседней.
Y>>Но вообще всё впечатляющие трюки из серии ̶и̶з̶ ̶г̶о̶в̶н̶а̶ ̶и̶ ̶п̶а̶л̶о̶к̶ ̶c̶о̶б̶р̶а̶т̶ь̶ ̶с̶а̶м̶о̶л̶ё̶т̶ "как парсить логи grep-ом". То есть это впечатляет студентов, но в реальности такие вещи делаются при помощи чуть более других инструментов. C>А чем, простите? Eсли ты думаешь, что в реальности в тех же Google и Amazon используются какие-то магические четырёхмерные визуальные мега-интерфейсы, то тебя ждёт сюрприз.
В реальности пользуются анализаторами логов и профилировщиками. Eсли ты думаешь, что в реальности в них используются какие-то магические четырёхмерные визуальные мега-интерфейсы, то тебя ждёт сюрприз — соверщенно обычные инструменты, просто они несоклько удобнее.
Y>>Я, наверное, просто не видел достаточно упоротых явистов, потому те, с которыми я сталкивался что разворачивали приложения билд-серверами причём в заранее подготовленый инвайромент. А разворачивать jdk из консоли... Там что-то сложнее hello world запустить получится? C>Конечно. Более того, с Java легко можно упаковать все зависимости в один jar-файл (см.: https://maven.apache.org/plugins/maven-shade-plugin/ ) с помощью пары строк в maven-файле.
Представим на секунду, что приложение ходит куда-то и ему надо какие-то криденшлы. Откуда они возьмутся на целевой машине? Их тоже будет билд-сервер паковать? Ну-ну.
Вообще история, как которой криворукие админы поставили ОС но ниасилили еще и JDK отдаёт ̶а̶н̶е̶к̶д̶о̶т̶о̶м̶ немного придуманой ситуацией.
C>Java легко можно упаковать все зависимости в один jar-файл (см.: https://maven.apache.org/plugins/maven-shade-plugin/ ) с помощью пары строк в maven-файле.
Ну например приложение хочет JBOSS и немножечко локального Редиса. Оно точно все с помощью пары строк запакует в один jar?
Здравствуйте, Yoriсk, Вы писали:
C>>Это абсолютно обычные инженерные задачи в больших системах. Y>В больльших системах ставят монитор/профилировщик на той же машине и не занимаются такой фигнёй. Ну накрайняк — на соседней.
На каждый из тысяч узлов, на котором работает код? Ага.
C>>А чем, простите? Eсли ты думаешь, что в реальности в тех же Google и Amazon используются какие-то магические четырёхмерные визуальные мега-интерфейсы, то тебя ждёт сюрприз. Y>В реальности пользуются анализаторами логов и профилировщиками.
Вот не надо мне рассказывать что используют Amazon и Гугл. Мой рабочий email заканчивается на @amazon.com и в Гугле я тоже был.
"Анализиторы логов" — это как раз grep, иногда параллельный, иногда с web-интерфейсом.
C>>Конечно. Более того, с Java легко можно упаковать все зависимости в один jar-файл (см.: https://maven.apache.org/plugins/maven-shade-plugin/ ) с помощью пары строк в maven-файле. Y>Представим на секунду, что приложение ходит куда-то и ему надо какие-то криденшлы. Откуда они возьмутся на целевой машине? Их тоже будет билд-сервер паковать? Ну-ну.
А откуда они возьмутся при деплое по кнопке F5? Ну-ну.
Y>Вообще история, как которой криворукие админы поставили ОС но ниасилили еще и JDK отдаёт ̶а̶н̶е̶к̶д̶о̶т̶о̶м̶ немного придуманой ситуацией.
Какие "админы"? Нету никаких админов, которые "ставят ОС".
C>>Java легко можно упаковать все зависимости в один jar-файл (см.: https://maven.apache.org/plugins/maven-shade-plugin/ ) с помощью пары строк в maven-файле. Y>Ну например приложение хочет JBOSS и немножечко локального Редиса. Оно точно все с помощью пары строк запакует в один jar?
Клиент redis — точно. А что?
Здравствуйте, Слава, Вы писали:
С>А с какой целью сделан этот бастион? У меня такое подозрение, что это явление из мира "сервера разворачивают одни люди, эксплуатируют другие, а за файрволл отвечает самый безопасный безопасник, от которого проброса портов не допросишься".
У нас из-за банальной причины — недостаточно внутренних IPv4-адресов для всех дата-центров, так что они разделены на географические регионы. Ну и часть сетей таки ограничена из соображений безопасности и требует дополнительного контроля (SSH-ключа на аппаратном токене).