Лучшие практики для нового развертывания направляющих на Linux?

Вчера я сделал что-то похожее, мне нужно добавить значение из unziped XML в потоке в базу данных.

//import I'm not sure if all are necessary :) 
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.xpath.*;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;

//I didnt checked this code now because i'm in work for sure its work maybe 
you will need to do little changes
InputSource is = new InputSource(new FileInputStream("test.xml"));

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(is);
XPathFactory xpf = XPathFactory.newInstance();
XPath xpath = xpf.newXPath();
String words= xpath.evaluate("/foo/bar", doc.getDocumentElement());
ParsingHexToChar.parseToChar(words);

// lib which i use common-lang3.jar
//metod to parse 
public static String parseToChar( String words){

    String decode= org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4(words);

        return decode;
 }
31
задан Ludwig Weinzierl 1 June 2009 в 13:23
поделиться

9 ответов

Я переключился от Кластера Полукровки до Пассажира две недели назад (Debian Сервер Linux). Я не оглядывался назад в течение секунды. Пассажир является, вероятно, самым легким способом разбудить Ваш новый сервер и выполнение. Производительность и надежность разумны также.

Лично, мне нравится проводить мое время, работая над захватывающими новыми проектами направляющих вместо того, чтобы иметь дело с проблемами развертывания - Пассажир позволяет мне сделать точно это. Однако Полукровка или что-то еще могут все еще быть предпочтительными, если у Вас есть некоторые добрые особые требования (не запрашивает большинство продуктов).

16
ответ дан 27 November 2019 в 22:41
поделиться

Мы использовали старый стандарт nginx-> стопка полукровки в течение прошлых 18 месяцев, и хотя это не было тривиально для установки в первый раз вокруг, это оказалось гибким, и имело дело с некоторыми сайтами очень интенсивного трафика для нас. Nginx в особенности был абсолютно горным телом и быстро, и если можно получить кэширование страницы приложения, можно иметь дело с большим количеством запросов.

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

Мы еще не играли с пассажиром, поэтому возможно, это легче и более стабильно, я подчинюсь другим респондентам на том, все, что я могу сказать, то, что нет никакой причины вообще, Вы не можете создать твердый стек с nginx и полукровкой.

4
ответ дан 27 November 2019 в 22:41
поделиться

Этим утром DHH говорит об этой самой теме на его собственном блоге:

, Но так или иначе сообщение Пассажира немного не спешило впитываться. Уже существует тонна больших сайтов, убегающих его. Включая Shopify, MTV, Geni, Yammer, и мы будем отодвигаться первый Список Ta-da вскоре, затем надо надеяться, остальная часть 37signals комплект быстро после этого.

Поэтому, в то время как существуют все еще причины выполнить Вашу собственную многоуровневую установку вручную настроенных частей, точно так же, как существуют люди, уклоняющиеся от mod_php для их подробных сведений, я думаю, что мы наконец обосновались на ответе по умолчанию. Что-то, что не требует, чтобы Вы действительно думали о первом развертывании своего приложения направляющих. Что-то, что просто работает из поля. Даже если то поле является общим хостом!

http://www.loudthinking.com/posts/30-myth-1-rails-is-hard-to-deploy

Tobias Lü tke по теме переключения Shopify (миллион запросов/день) Пассажиру:

Все это означает, что общий объем памяти, которая используется Shopify во время нормального функционирования, пошел от среднего числа 9 ГБ в среднем к 5 ГБ. Мы равномерно распределили сбережения среди большего количества процессов Shopify и большего количества пространства memcached, которое переместило наше среднее время отклика от 210 мс до 130 мс, в то время как трафик вырос на 30% за последние несколько месяцев.

В заключении: Я не вижу причины выбрать другую стратегию развертывания в этой точке. Его простое, полное, быстро и хорошо зарегистрированный.

http://blog.leetsoft.com/2008/11/15/passenger

10
ответ дан 27 November 2019 в 22:41
поделиться

Взгляните на Litespeed. Можно получить бесплатную версию, которая работает на 1 CPU или плате для получения много CPU. Это немного дорого, но является горным телом и обрабатывает направляющие блестяще (т.е. использует меньше памяти и меньше издержек, чтобы контролировать и установить). Я выполняю значительную сумму приложений на нем, и это не пропускает удар.

1
ответ дан 27 November 2019 в 22:41
поделиться

Мы переключили fron NginX+Mongrel на Пассажира.

я полностью полагаю, что Пассажир собирается быть новым стандартом для направляющих, несмотря на кластер NginX и Полукровки, подтверждаемый некоторыми очень умными людьми. Недавние усовершенствования в Пассажире действительно продвинули его вперед.

Наша текущая конфигурация - что-то вроде этого:

веб-серверы

  • Пассажир Ubuntu 8.04 LTS
  • Phusion на МРТ Ruby Apache2
  • 1.8.6 и друзья (формируются склонный)
  • Драгоценные камни Ruby 1.3.0 (Установленный из источника)

Серверы баз данных

  • MySQL Cluster Centos 5
  • (мы просто переключились на это, но это обещает)

стандартизировавший на точном дистрибутиве Linux мы смогли записать рецепты Capitrano для помощи развертыванию (небольшие вариации в конфигурации были источником МНОГИХ приостановок обслуживания), и иначе упростите наши жизни.

2
ответ дан 27 November 2019 в 22:41
поделиться

Я размещаю свои новые приложения с Apache2 и Пассажиром на Ubuntu Hardy. Походит на самый легкий и наилучший вариант для большинства сценариев. Я только что присоединился к Slicehost.com с этой целью. Они, кажется, получают хорошие обзоры и имеют наиболее конкурентоспособные цены хостов первого класса.

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

то, Что Вы не упоминаете, - то, как большой и популярный Ваше приложение / быть. Это критерии могло влиять на процесс принятия решений.

0
ответ дан 27 November 2019 в 22:41
поделиться

Мы также переключились от Полукровки на mod_passenger и нашли устойчивость значительно улучшенной с этим усилием требуемый установить и поддержать. Хороший выбор.

1
ответ дан 27 November 2019 в 22:41
поделиться

Capistrano + Deprec для того, чтобы на самом деле настроить мой стек на Ubuntu и физически руководящий развертывание.

проксирование Nginx Полукровке clusers для серверной архитектуры. Это не новейшая, новейшая техника, но это работает хорошо, это становится хорошо зарегистрированным, и это очень, очень высокая производительность, работая над маленьким VPSes. Принятие Вас не имеет borked приложение, Вы можете Slashdot Slicehost VPS на 128 МБ, и это просто продолжает возвращаться для больше.

сказавший, что: были партия из глюков в первый раз вокруг, пока я не выяснил, как Nginx на самом деле работал. После этого его удивительное - как немного Apachelet с небольшим российским диакритическим знаком.

0
ответ дан 27 November 2019 в 22:41
поделиться

Другой бит золота:

Josh Peek драгоценный камень Slicehost полон рецептов Capistrano, которые намного более просты и намного более организованы, чем Deprec. Ничто там не особенно Slicehost-конкретно, также.

1
ответ дан 27 November 2019 в 22:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: