beldmit: (Программизм)
Dmitry Belyavskiy ([personal profile] beldmit) wrote2009-12-12 09:18 pm

Сын Урана

Посмотрел, как у Windows-хостеров предоставляется cron. Я помню, что на клиенте была возможность честно запустить программу в нужное время, я этим еще во времена 98-х пользовался, когда будильник разбил.

Теперь смотрю - народ предлагает раз в день/час/минуту дернуть какой-то URL на сервере. И нафига так, а не иначе?

[identity profile] dmih.livejournal.com 2009-12-12 06:25 pm (UTC)(link)
Ну, если под Windows понимать IIS+ASP/ASPX, то надо признать, что код там на сайте, собственно, присутствует -только- в виде веб-страицы. Там ведь IIS как сервер приложений это неотъемлемая часть кода сайта.
В части IIS+PHP всё конечно немного попроще, но всё равно, контекст исполнения в Windows значительно более трудно прогнозировать, чем в UNIX. Путь до PHP на засыпку? Переменные окружения какие, кто их вообще смотреть умеет? Как отлаживать если SSH нет? И так далее.

[identity profile] beldmit.livejournal.com 2009-12-12 06:37 pm (UTC)(link)
А просто положить файл сценария, который, ну не знаю, очистку базы от старья будет делать - интерпретатора не будет в первом случае?

То есть URL задает окружение, соответствующее окружению сервера?

Переменные окружения вроде бы любой квалифицированный web-программист должен уметь посмотреть. Во всяком случае, моя жена на домашнем компе вполне справляется. Отлаживать без SSH - по логам, FTP никто не отменял. Или что?

[identity profile] dmih.livejournal.com 2009-12-12 06:46 pm (UTC)(link)
Для ASP.NET интерпретатора не существует, его может исполнить только IIS, ну т.е. можно соорудить хост-среду, но это не является хоть сколь популярной практикой.
Это как Java-класс страницы для Tomcat-а с командной строки пускать.

А о квалификации - вы о чем вообще?.. какая простите квалификация, никто ничего не умеет, видимо, вы с клиентами мало встречались :)

[identity profile] beldmit.livejournal.com 2009-12-12 06:50 pm (UTC)(link)
Да, мало, страшно далек я от технической поддержки...

Понятно, спасибо!
vitus_wagner: My photo 2005 (Default)

[personal profile] vitus_wagner 2009-12-12 06:55 pm (UTC)(link)
А почему, собственно ASP.NET, а не WSH?

[identity profile] dmih.livejournal.com 2009-12-12 07:02 pm (UTC)(link)
WSH это ASP, к .NET ничего общего. Кажется в WSH даже .NET языков нет, но в любом случае если бы и были, ведь на ASP.NET не скрипты обычно, а приложения. Есть разница небольшая.
vitus_wagner: My photo 2005 (Default)

[personal profile] vitus_wagner 2009-12-12 07:05 pm (UTC)(link)
wsh это способ выполнить некоторые действия на машине.
Во всяком случае самостоятельно дернуть за некоторую URL посредтством active-x элемента winhttp он точно позволяет.

В unix-е cron вообще обычно "команды" запускает, а не "скрипты" или "приложения". И ничего.

vitus_wagner: My photo 2005 (Default)

[personal profile] vitus_wagner 2009-12-12 06:56 pm (UTC)(link)
Вспомнилось, что мне полгода назад один из наших виндовых программистов (не Студенов, тот все ж поквалифицированнее будет) заявил что разработчик под Windows не обязан знать язык cmd.exe.

[identity profile] beldmit.livejournal.com 2009-12-12 07:00 pm (UTC)(link)
Хм. Я как-то без него обходился, без этого знания... Что-то нетривиальное я бы стал реализовывать на Perl.
vitus_wagner: My photo 2005 (Default)

[personal profile] vitus_wagner 2009-12-12 07:08 pm (UTC)(link)
Не ты ли тут пару дней назад утверждал что способен справиться с DOS-овской сегментированной памятью?

[identity profile] beldmit.livejournal.com 2009-12-12 07:14 pm (UTC)(link)
Способен. Если припрет. Не вижу оснований считать, что приперло.
vladimir000: (Default)

Чеша в затылке

[personal profile] vladimir000 2009-12-12 08:50 pm (UTC)(link)
А под справляться что имеется в виду? работа с huge-указателями на уровне ассемблера? все остальные варианты вроде как тривиальны почти по определению...

[identity profile] dmih.livejournal.com 2009-12-12 07:04 pm (UTC)(link)
Я например cmd знаю и уважаю, но дрянь честно говоря, и знать его не обязательно, но это скажем так показывает класс программиста.
Всё же, это его платформа как никак, и знать её выборочно это не всегда гуд.

[identity profile] tat-ti.livejournal.com 2009-12-12 08:02 pm (UTC)(link)
Это показывает не класс программиста, а класс задач, с которым он сталкивался и ограничения, которые вводили работодатели на множество используемых утилит и языков
vitus_wagner: My photo 2005 (Default)

[personal profile] vitus_wagner 2009-12-12 08:30 pm (UTC)(link)
Вообще странная идея вводить ограничение на использование того, что на машине все равно установлено.
Я понимаю, вводить ограничения на нечто, что специально ставить надо, даже если оно скачивается бесплатно с сайта Microsoft. Но на то, что все равно из виндов никак не выкинешь...
vladimir000: (Default)

[personal profile] vladimir000 2009-12-12 10:57 pm (UTC)(link)
Ну, оператор goto в С++ присутствует. Но в большинстве случаев установить ограничение на его применение смысл имеет.

[identity profile] beldmit.livejournal.com 2009-12-13 08:20 am (UTC)(link)
Ага. А в OpenSSL goto используется, на мой вкус, вполне уместно.
vladimir000: (Default)

[personal profile] vladimir000 2009-12-13 09:47 am (UTC)(link)
Ну да, все зависит от задач.

[identity profile] tat-ti.livejournal.com 2009-12-14 12:13 pm (UTC)(link)
Кроме софта есть еще набор "с чем я умею работать" программистов.
Если мне проще решить задачу не на cmd, а на awk, то я ставлю GNU unix utilities на винду и радуюсь жизни. Еще я могу эту задачу легко сделать на перле или питоне.
Если после моего ухода в проекте останутся куски на awk+perl+python, то работодатель должен либо искать человека со знанием этих языков, либо сажать людей переписывать мой код, когда что-то где-то перестанет работать.
Либо сразу ограничить меня "только С + bash".
Далее ищем компромисс.
vitus_wagner: My photo 2005 (Default)

[personal profile] vitus_wagner 2009-12-14 12:18 pm (UTC)(link)
Я уже сталкивался с ситуацией, когда надо чтобы работало не у меня, а у клиента. И вот тут-то начинаешь радоваться жизни, когда понимаешь что кроме cmd, jscript и vbscript у него НИЧЕГО нет. И либо надо писать все на C (что приведет к необходимости поставки рантайма от твоей текущей студии), либо ставить ему ActiveState-что-нибудь (против чего он резонно протестует, говоря "нафига мне ради нагрузочного тестирования ставить многомегобайтную софтину неизвестного происхождения".

Кончилось тем, что я у себя генерил ллинные простыни бат-файлов, поскольку умные циклы на cmd писать не умел.