Métodos preferidos para interagir com um mecanismo de regras

Estou prestes a mergulhar em um projeto orientado a regras (usando o ILOGs Rules for .NET - agora IBM). E eu li algumas perspectivas diferentes sobre como configurar o processamento de regras e como interagir com o mecanismo de regras.

As duas principais ideias que vi são centralizar o mecanismo de regras (em seu próprio farm de servidores) e programar no farm por meio de uma API de serviço da Web (ou no caso do ILOG via WCF). O outro lado é executar uma instância do mecanismo de regras em cada um dos seus servidores de aplicativos e interagir com ele localmente, com cada instância tendo sua própria cópia das regras.

O lado positivo da centralização é a facilidade de implantação das regras em um local centralizado. As regras são dimensionadas conforme necessário, em vez de serem dimensionadas sempre que você expande a configuração do servidor de aplicativos. Isso reduz o desperdício de uma perspectiva de licença adquirida. O lado negativo dessa configuração é a sobrecarga de fazer chamadas de serviço, latência de rede etc.

A vantagem / desvantagem de executar o mecanismo de regras localmente é exatamente o oposto do lado positivo / negativo da configuração centralizada. Nenhuma chamada de serviço lenta (chamadas de API rápidas), nenhum problema de rede, cada servidor de aplicativos depende de si mesmo. Gerenciar a implantação de regras se torna mais complexo. Sempre que você adicionar um nó à sua nuvem de aplicativos, precisará de mais licenças para os mecanismos de regras.

Ao ler os white papers, vejo que a Amazon está executando o mecanismo de regras por configuração do servidor de aplicativos. Eles parecem fazer uma implantação lenta de regras e reconhecem que o atraso na publicação de regras é "aceitável", mesmo que a lógica de negócios esteja fora de sincronia por um determinado período de tempo.

Questão: A partir de suas experiências, qual é a melhor maneira de começar a integrar regras em um aplicativo da Web baseado em .net para uma loja que ainda não passou muito tempo trabalhando em um mundo orientado por regras?

questionAnswers(4)

yourAnswerToTheQuestion