Рубрика «Программирование» - 646

В этой статье я расскажу как реализовать заглушки веб-сервисов бизнес-процесса на BPEL используя Oracle SOA Suite и сервер Weblogic

Задача

Есть проект по нагрузочному тестированию одной системы. В схеме взаимодействия между серверами есть внешние системы, которые не участвуют в объекте тестирования — надо их заменить эмуляторами или заглушками. Протокол SOAP. Композиты на BPEL. Стенда нет. Ужасно интересно!

Разработка заглушек бизнес-процесса на языке BPEL на основе Oracle SOA Suite и Weblogic - 1

Читать полностью »

«Храм должен был быть вечным. Как сама глубина. А значит, не зависеть ни от одного сервера. Создающие Храм программы свободно блуждают по сети, их фрагменты дублируются, рекомбинируются, самостоятельно организуются для работы. Чтобы Храм исчез, надо уничтожить все машины в сети.»
— «Фальшивые зеркала», 1999 год, за 2 года до появления протокола BitTorrent

Брэм Коэн: Я писал BitTorrent сидя в гостиной, безработный, в трусах - 1
Сегодня стукнуло 41 год Брэму Коэну, создателю протокола BitTorrent.

Интересные факты:

  • Коэн начал программировать в 10 лет.
  • Коэн признается, что неспособен работать в фиксированном графике, по часам, в компании, предъявляющей строгие требования к дресс-коду, и категорически не может выполнять бессмысленную и неинтересную работу.
  • Работал в компании «Evil Geniuses for a Better Tomorrow» и Работал в «Valve».
  • Для тестирования BitTorrent Брэм собрал немалую пачку порнухи, которую и раздавали туда-сюда.
  • Организатор конференции CodeCon.
  • Есть жена и трое детей.
  • Самый большой файл на раздаче — архив сайта geocities.com размером в 641 Гб.
  • За первые два года было более 20 млн. закачек клиента, сейчас от 100 до 250 млн. пользователей BitTorrent.
  • В 2008 в раздачах исполняемых файлов 18% были заражены.
  • В 2009 от 43% до 70% трафика в Интернет принадлежало Peer-to-peer сетям.
  • В 2009 более 14.5% BitTorrent загрузок содержало zero-day вредоносные программы и поэтому BitTorrent был механизмом дистрибуции 47% zero-day зловредов.
  • Технологией BitTorrent пользуются Facebook, Twitter, Internet Archive, Blizzard, World of Tanks, Eve Online, правительство Великобритании, научные исследования (BOINC), множество open source и free software проектов.

Читать полностью »

Маленькая архитектура - 1

Я хочу стать архитектором ПО:

Это хорошая цель для разработчика

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

Хм. Ну, тогда ты вовсе не хочешь стать архитектором ПО.

Конечно хочу! Я хочу быть тем человеком, который принимает все важные решения.

Это хорошо, но ты не перечислил важных решений. Ты перечислил решения, не играющие особой роли.

В смысле? База данных – это не важное решение? Знаешь, сколько мы денег тратим на них?

Скорее всего слишком много. И нет, база данных – это не одно из самых важных решений.

Как можно такое говорить? База данных находится в самом центре системы! Там собраны все данные, они сортируются, индексируются и к ним осуществляется доступ. Без нее не будет системы!

База данных это просто устройство ввода-вывода. Так получилось, что она предоставляет некоторые полезные инструменты для сортировки, запросов и отчетов, но все это – вспомогательные аспекты в рамках системной архитектуры.Читать полностью »

Как мы сделали автоматизацию перевода на 29 локалей: сборка зоопарка в стройную систему - 1

Acronis — международная компания с основным R&D в России, но основной наш язык — английский. У региональных продуктов свои языки, и их довольно много. Языков сайта ещё больше, чем языков софта.

Поэтому мы сделали такую систему на Друпале, причём не без извращений:

  • Появляется мастер-текст на английском (США). Он раскатывается на все сайты как «золотой» образ.
  • Если есть прямой перевод на язык локали, используется он.
  • Если нет прямого перевода на язык локали, но есть перевод на язык наследования, используется текст на языке наследования.

Читать полностью »

image Экосистема языка python стремительно развивается. Это уже не просто язык общего назначения. С его помощью можно успешно разрабатывать веб-приложения, системные утилиты и много другое. В этой заметке мы сконцентрируемся все же на другом приложении, а именно на научных вычислениях.

Мы попытаемся найти в языке функции, которые обычно требуем от математических пакетов. Рассмотрим сильные и слабые стороны идеи использования python вместо MATLAB, Maple, Mathcad, Mathematica.

Читать полностью »

Эволюция тестового окружения: Интервью с Игорем Хролом (Toptal) и Антоном Семенченко (COMAQA.BY и CoreHard) - 1

Мы не любим ждать в очереди, хотим сделать заказ онлайн, мы не готовы покупать билет в кассе, пусть все будет в приложении, в электронном виде. И вот тут есть важное «Но»! Мы всё хотим здесь и сейчас, но чтобы это работало без сбоев, как часы. Доставку пиццы осуществили вовремя, место в кинотеатре совпало с полученным в подтверждении. Что во всем этом многообразии приложений и сервисов играет одну из ключевых ролей?

Конечно — это тестовое окружение, без чего невозможен быстрый выпуск качественного продукта! Современные инструменты тестирования ворвались в нашу жизнь как ураган и буквально за несколько лет изменили наши возможности. Мы семимильными шагами освоили виртуализацию и контейнеризацию, попробовали линейку Selenium-а, спорили о преимуществах и недостатках Docker-а.

Зачем все это было нужно и к чему мы пришли?
Какое будущее нас ждет?

Поговорим «за тестирование» с гуру профессии. Пройдёмся от А до Я по инструментарию. Помогут нам в этом Игорь Хрол и Антон Семенченко.

Запасаемся кофе, чаем, другими напитками и начинаем. Беседа будет долгой.

Эволюция тестового окружения: Интервью с Игорем Хролом (Toptal) и Антоном Семенченко (COMAQA.BY и CoreHard) - 2Итак, Игорь Хрол — специалист по автоматизации тестирования в Toptal. Игорь имеет большой опыт работы с большинством популярных инструментов (Selenium, HP QTP, TestComplete, JMeter).
Читать полностью »

Эта статья — ревью на книгу «Growing Object-Oriented Software, Guided by Tests» (GOOS для краткости). В ней я покажу, как можно имплементировать проект-пример из книги без использования моков (mocks).

Цель статьи — показать, как использование моков может навредить коду и насколько проще этот же код становится если от моков избавиться. Второстепенная цель — выделить советы из книги, которые личне мне кажутся разумными и те, которые, наоборот, приносят больше вреда, чем пользы. В книге довольно много и тех и других.

Версия на английском: ссылка.
Читать полностью »

Как я и обещал, перехожу от обзора программ замены калькулятора к более серьезным инструментам. Если помните схему из предыдущего поста, то во второй категории находились табличные: OpenOpffice / LibreOffice сотоварищи. Эту партию мы можем смело пропустить, так как к командной строке она не относится, к тому же, среди читателей Хабра трудно найти человека, который бы в них не разбирался. Поэтому перехожу сразу к третьей категории.

Специализированные математические программы, уровень студент+

  1. GNU Ocatve.
  2. Scilab.
  3. Maxima.
  4. R.
  5. Sage.

На первом месте в этом списке находится Octave, и это не случайность. Исследователи из Университета Мэриленда в США провели сравнительный анализ математических вычислений, используя MATLAB, Octave, SciLab и FreeMat в простом сценарии и в сложном. В первом случае решали систему линейных уравнений а в втором — конечно-разностную дискретизацию уравнения Пуассона в двухмерном пространстве. Основной вывод — GNU Octave справляется с задачами лучше остальных открытых математических пакетов, демонстрируя результат (страницы 23 и 25) сопоставимый с матлабовским.

Читать полностью »

Разработка в InterSystems Caché в вашей любимой IDE - 1 Здравствуйте! В InterSystems Caché есть вполне практичный способ разрабатывать решения без использования интегрированных в неё инструментов. Весь код проекта можно хранить в виде традиционных файлов с исходным кодом, редактировать в любимой среде разработки, индексировать системой контроля версий и одной командой выполнять импорт и компиляцию классов в СУБД Caché. Более того, это предоставляет возможность использовать любые другие внешние инструменты, например, для сборки и препроцессинга кода. В данной статье будет рассмотрен пока что не традиционный для Caché, но достаточно практичный цикл разработки проектов.
Читать полностью »

image

Мой совет молодым

Меня спрашивают: «Какой совет я мог бы дать молодым людям?»
Забавный вопрос. Тут главная мысль в том, что не нужно слепо верить во что-то, только потому, что это популярно сейчас.

Для меня характерна другая крайность — когда я вижу, что большинство принимает какую-то идею, я предполагаю, что, возможно, она не верна. Например, если моя работа станет очень популярной, я пойму, что надо что-то в ней изменить.

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

Следовать своей интуиции лучше, чем следовать за стадом.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js