Одноранговый узел к репликации однорангового узла в SQL Server 2005/08

Я сделал несколько небольших изменений, чтобы заставить ваш код работать, используя NetBeans 8.2, JDK 8 и Glassfish 4.1.1 в Windows 10:

  • Добавить аннотацию @Path для класса также как methode_test().
  • Добавьте второй класс в pkg1 с именем ApplicationConfig , который расширяет javax.ws.rs.core.Application , как показано ниже.

Это пересмотренный класс TestService:

package pkg1;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;


@Path("/demo")
public class TestService
{
    @Path("/test")
    @GET
    @Produces("text/plain")
    public String methode_test()
    {
        return "Hello test";
    }
}

Это дополнительный класс, который нужно добавить:

package pkg1;

import javax.ws.rs.core.Application;

@javax.ws.rs.ApplicationPath("sample")
public class ApplicationConfig extends Application {

}

Мой проект получил название DemoService , и поэтому имел контекстный корень DemoService , но в вашем случае используемый URL-адрес, вероятно, будет следующим: http: // localhost: 8080 / TestService / sample / demo / test

browser

Примечания:

  • См. этот ответ для SO вопрос Что такое жизненный цикл класса Application службы отдыха? для более подробной информации о том, почему вам нужно создать класс, расширяющий этот класс Application .
  • Для удобства вы можете установить путь по умолчанию, который будет использоваться в браузере при тестировании вашего проекта:

    • Откройте окно Свойства вашего проекта из [ 1137] Панель проектов .
    • Выберите , запустите и установите значения Контекстный путь и Относительный URL в зависимости от ситуации:

      [1112 ] browserDefaultURL

  • NetBeans 8.2 предоставляет базовое REST-приложение « Hello World », которое можно создать всего несколькими секунд с помощью мастера проектов: Файл> Новый проект ...> Образцы> Веб-службы> REST: Hello World .

6
задан RobS 26 October 2008 в 13:44
поделиться

1 ответ

(Правовая оговорка: я - разработчик, не DBA),

У нас есть репликация слияния SQL Server 2005 года, настроенная для тиражирования между двумя активными/активными географически разделенными узлами для устойчивости в унаследованной системе.

Я не знаю, легко ли контролировать; за пределами моей сферы компетенции.

Это создает, включает каждую таблицу, чтобы сделать публиковать/подписывать механизм, каждый из которых называет свою собственную хранимую процедуру.

В нашем случае это было настроено для использования идентификационных данных, 1-1bn в узле 0, 1bn-2bn в узле 1, чтобы избежать коллизий идентификационных данных (а не использовать составной ключ NodeId + EntityId для каждой таблицы или ключи изменения, чтобы быть GUID, например).

Я думаю, что задержка репликации вокруг 15 (между Лондоном и Нью-Йорком по специализированной пропускной способности).

Это - огромная боль для работы с:

  • Это взяло высокооплачиваемого подрядчика в год для установки его (предоставленный, часть этого происходила из-за природы прежней версии дизайна DB),
  • Мы испытываем недостаток в любом внутреннем с экспертными знаниями для поддержки его (внутренний DBA, который мы имели, занял ~6 месяцев для изучения этого и с тех пор шел дальше),
  • Обновления схемы являются теперь болезненными. Из того, что я понимаю:
    • Определенные обновления должны быть выполнены только на одном узле; репликация затем заботится о выяснении, что сделать на другом узле (узлах)
    • Определенные обновления должны быть выполнены на обоих узлах
    • Обновления данных должны быть выполнены на одном узле только (я думаю),
    • Все обновления теперь берут значительно дольше для выполнения - с доли секунды, которую требуется для выполнения сценария изменения DDL к ~30 минутам
  • Я не знаю наверняка, но я думаю, что требование пропускной способности для репликации очень высоко (в диапазоне Мбит/с)
  • Это представляет много "шумовых" объектов (3 sprocs на таблицу, 3 триггера на таблицу) в DB, делая это неудобным для нахождения в обозревателе объектов объекта, что каждый хочет продолжить работать.
  • Мы никогда не будем настраивать третий узел для этой системы, базирующейся в основном на воспринятой трудности и добавленной боли, которую это представило бы во время развертывания.
  • Мы также теперь испытываем недостаток в среде подготовки, которая зеркально отражает производство, потому что это слишком болезненно для установки.
  • Анекдотичный: DBA, делающий установку, часто проклинал бы то, что это был "MS v1", он вынуждался работать с.
  • Смутно помнивший: DBA должен был повысить несколько приоритетных запросов в службу поддержки для получения справки от MS непосредственно.

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

2
ответ дан 17 December 2019 в 20:36
поделиться
Другие вопросы по тегам:

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