Масштабирование стратегий Сервисных Уровней на.NET

Создайте класс исключений

public class PessoaException extends RuntimeException { 
   public PessoaException(String exception) {
    super(exception);
      }
    }

и измените код обслуживания, как показано ниже: -

 @PostMapping(value = "/save", produces = {MediaType.APPLICATION_XML_VALUE, MediaType.APPLICATION_JSON_VALUE},
                    consumes = {MediaType.APPLICATION_XML_VALUE, MediaType.APPLICATION_JSON_VALUE})
    public Pessoa save(@RequestBody Pessoa pessoa) {    
        // email field is unique, might throw constraint violation... 
            try{
            Pessoa p = pessoaRepository.save(pessoa);
            }catch(Exception e){
                throw new PessoaException("Message" + e);
            }   
            return p;               
    }
6
задан FlySwat 3 November 2008 в 18:52
поделиться

1 ответ

Вы описали идеальный вариант использования для механизма распределенного кэширования, такого как memcached (http://www.danga.com/memcached) или предстоящий Скоростной проект MS (http://code.msdn.microsoft.com/velocity).

В ситуации Вы описываете, где у Вас есть растущее число Сервисных экземпляров Уровня каждое выполнение их собственного локального кэширования, полноценности Ваших уменьшений кэша с каждым новым полем, потому что каждый отдельный экземпляр должен получить те же данные из базы данных для заполнения ее локального кэша, даже если бы к тем же данным просто получил доступ другой Сервисный экземпляр Уровня. С memcached или Скоростью механизм кэширования разумно объединит неиспользованную RAM через все Ваши серверы в единственный кэш для всех Сервисных установок Уровня на доле. Тот путь только первый Сервисный экземпляр Уровня, который получит доступ к части данных, должен будет использовать базу данных, и последующие доступы другими Сервисными экземплярами Уровня вытянут те же данные из кэша.

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

Надеюсь, это поможет!

Adam

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

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