• Как мониторить медленные и прожорливые места скрипта?

    un1t
    @un1t
    1) в библиотеке Pympler есть функця asizeof

    2) можно юзать такой декоратор
    import time
    
    def timeit(f):
    
        def timed(*args, **kw):
            ts = time.time()
            result = f(*args, **kw)
            te = time.time()
    
            print('func:%r args:[%r, %r] took: %2.4f sec' % (f.__name__, args, kw, te-ts))
            return result
    
        return timed


    3. В третьих https://github.com/rkern/line_profiler
    Ответ написан
    3 комментария
  • Скрипты с Bash and Python?

    Можешь написать собственный удобный скрипт для установки и управления игровым JC2-MP сервером, позволяющий поднять, настроить и управлять сервером не читая инструкцию.
    1. Автоматическая установка/обновление через steamcmd
    2. Сервер должен быть запущен в GNU Screen или tmux сессии (по выбору)
    3. Интерфейс для изменения параметров в конфиге (IP адрес, порт, название и описание). Здесь понадобится sed чтобы править файл.
    4. Скрипт должен быть в виде командной строки и обрабатывать команды (start, stop, help и т.д.)
    5. Возможность запустить и завершить сервер. Перед завершением уведомлять игроков в чате (say %s в консоль) обратным отсчётом в 10 секунд.
    6. Скрипт должен быть в курсе, запущен ли уже сервер. Выводить статус сервера.
    7. Скрипт должен хранить путь к каталогу с установленным сервером и streamcmd в файле и считывать при каждом запуске, с соответствующими проверками на существование самого файла конфигурации и валидацией путей указанных в нём.
    8. Вывод скрипта должен быть красиво оформлен с помощью цветов в bash.

    Если справишься с этим, то сможешь быть уверенным в своих умениях писать Shell-скрипты. Это задание включает в себя циклы, условия, case'ы, элементарное использование sed и grep. Для красоты кода, естественно, лучше разбить это всё на функции. Результат сможешь выложить людям на форуме.
    Ответ написан
    3 комментария
  • Поздний старт в ИТ - есть ли шансы?

    valerium
    @valerium
    Изобретая велосипед
    У меня похожая ситуация, правда я просрал не 5, а в сумме все 6 лет. Сейчас мне 25, я работаю дежурным админом. Успел поработать в техподдержке, потом младшим админом, сейчас дежурным.

    Да, само собой, чувствую, как не хватает теоретической базы и опыта. Да, потерянного времени жалко. Но IT - это та сфера, где, к счастью, опыт и знания ценятся выше бумажек. А набраться их может любой, кто умеет думать головой. На работе каждую минуту пытаюсь провести с пользой. Если нет текущих задач - пишу скрипты и изучаю систему. На досуге регулярно читаю учебники по интересующим меня темам.

    Тут правильно bobrovskyserg написал, надо показать себя, сообразить "портфолио". У Вас есть свой проект? Отлично, на гитхаб его! Дружите с русским языком? Катайте статью в песочницу Хабра о своём проекте, ждите инвайт. Есть IT-шная эрудиция? Тостер всегда рад Вам.

    Ах да, если хотите расти профессионально, не советую идти работать офисным админом. Лучше в техподдержку небольшого интернет-провайдера или хостера. Они всегда рады растить кадры самим себе и всегда с радостью делятся опытом.

    Успехов!
    Ответ написан
    Комментировать
  • Поздний старт в ИТ - есть ли шансы?

    zo0m
    @zo0m
    full stack developer
    какой-то вы неуверенный слишком
    я собеседовал достаточно много студентов и возраст скорее играет на вас
    "Что делал? тебе столько лет, а где опыт?", конечно спросят, только не для того чтобы вас топить, а для того чтобы понять что за человек сидит.
    Если на собеседованиях будете хорошо отвечать -- у вас нет причин не попасть куда-угодно.

    псц, ПОЗДНИЙ СТАРТ в 26 ??? я видел взрослых мужиков за 40 полностью меняющих работу на IT, а вам 26...

    чувак иди проспись
    Ответ написан
    6 комментариев
  • Как скопировать строку из файла на удалённом сервере?

    valerium
    @valerium
    Изобретая велосипед
    ssh remote.server.ru "grep needle /path/to/file"
    Как-то так. Выведет то, что найдёт grep. Соответственно, grep можно заменить на tail, head, sed или любую другую команду. Если манипуляция какая-то шибко сложная (потребуется много разных кавычек), то можно использовать heredoc, передать скрипт на стандартный ввод ssh.

    ssh remote.server.ru <<CODE
    awk -F';' '/pattern/ {print $3}' /path/to/file
    CODE


    Но это при условии, что скрипт будет запускаться ручками, то есть Вы сами введёте пароль от учётки на удалённом сервере или пароль от ключа. Если нужно делать это автоматически, то лучше на стороне удалённого сервера написать скрипт, который эту строку будет по какому-нибудь HTTP отдавать.
    Ответ написан
    3 комментария
  • Как заменить строку на новую через bash?

    RicoX
    @RicoX
    Ушел на http://ru.stackoverflow.com/
    Вот в одну строку:
    sed '/Cluster/a \"version" => '\''1.0'\''\'
    Ответ написан
    1 комментарий
  • Как заменить строку на новую через bash?

    opium
    @opium
    Просто люблю качественно работать
    В седе надо просто экранировать кавычки посмотрите мае по спецсимволам и слеш вас спасет
    Ответ написан
    Комментировать
  • Как заставить Jenkins собирать проект сразу после обновления кода на сервере?

    risik
    @risik
    Программист
    Одно решение Вам уже сказали - Poll SCM.
    Другой вариант - Post-commit hook. Например, здесь: https://wiki.jenkins-ci.org/display/JENKINS/Subver...

    Для настройки Poll SCM можете, например, посмотреть мою статью: habrahabr.ru/post/170847 см. "Начальная настройка Jenkins"
    Ответ написан
    1 комментарий
  • Как заставить Jenkins собирать проект сразу после обновления кода на сервере?

    Losted
    @Losted
    Software Architect
    Настройте проект со включенной опцией "Poll SCM" и расписанием в каждые несколько минут. У нас поллинг настроен на полчаса, но если для вас критично, то можете проверять на наличие изменений каждую минуту, например.
    Ответ написан
    3 комментария
  • Выбор гипервизора - VMware ESXi, VMware ESX, Citrix XenServer?

    Evgeny_Shiryaev
    @Evgeny_Shiryaev
    Microsoft Hyper-V.

    Плюсы:

    1. Сам гипервизор ничего не стоит, его можно скачать с сайта Microsoft (в виде Hyper-V Server);
    2. Хорошо подходит для виртуализации ОС от Microsoft;
    3. Большинство продуктов Microsoft поддерживают работу в виртуальной среде Hyper-V;
    4. Легко установить и настроить;
    5. Большинство системных администраторов умеют с ним работать;
    6. Может установиться на любой сервер, на который может встать Windows.

    Минусы:

    1. Плохо подходит для виртуализации ОС не от Microsoft (т.е. не Windows);
    2. Продвинутые инструменты администрирования (Virtual Machine Manager) платные;
    3. За каждую копию Windows внутри гипервизора придется заплатить (это если используется продукт Hyper-V Server, если используется роль Hyper-V ОС Windows Server 2008 R2 Datacenter, то за копии Windows, запущенные в виртуальной среде платить не надо).

    VMware ESXi.

    Плюсы:

    1. С технической точки зрения самый продвинутый гипервизор;
    2. Бесплатен (можно скачать с сайта VMware);
    3. Поддерживает множество ОС внутри себя (Windows, Linux, BSD, Solaris, и т.д.);
    4. Легко установить и настроить.

    Минусы:

    1. Продвинутые инструменты администрирования платные;
    2. Может установиться только на ограниченное количество серверов;
    3. За каждую копию Windows внутри гипервизора придется заплатить;
    4. Не все системные администраторы умеют с ним работать.

    XenServer.

    Плюсы:

    1. Поддерживает множество ОС внутри себя;
    2. Бесплатен;
    3. Поддерживает достаточно большое количество серверов.

    Минусы:

    1. Продвинутые инструменты администрирования платные;
    2. За каждую копию Windows внутри гипервизора придется заплатить;
    3. Большинство системных администраторов с ним не работали.

    Если Вы хотите запускать в виртуальной среде ОС и ПО от Microsoft — выбирайте Hyper-V.

    Если Вы хотите запускать в виртуальной среде различные ОС (Windows, Linux, Solaris, и т.д.) и при этом Ваши сервера входят в HCL ESXi — выбирайте ESXi.

    Если Вы хотите запускать в виртуальной среде Linux и OSS, и при этом у Вас есть специалисты, которые могут с ним работать — выбирайте XenServer.

    Если у Вас есть еще вопросы — пишите в почту, отвечу.
    Ответ написан
    8 комментариев