O que usar para Messaging com C #

votos
9

Então, minha empresa armazena um monte de dados em um banco de dados FoxPro e tentando contornar o hit de tocá-lo diretamente Eu estava pensando em mensagens qualquer coisa que pode ser feito de forma assíncrona para uma experiência de usuário snappier desempenho. Comecei a olhar para ActiveMQ , mas não sei quão bem C # vai ligar com ele. Querendo ouvir o que todos vocês pensam.

edit: Vai ser uma aplicação web. Qualquer coisa de tocar nesta FoxPro é meio lento (provavelmente porque a pessoa que configurá-lo há 10 anos errei tudo para o inferno, alguns dos arquivos da tabela são incrivelmente grande). Nós replicar o FoxPro para sql noturno ea maioria dos nossos dados lê são ok sendo um dia de idade, então estamos focando as gravações. além da gravação afeta uma parte crítica da experiência do usuário (de compra), que armazená-lo em SQL e, em seguida, apenas mensagem para tê-lo colocado em FoxPro quando pode. Eu gostaria que pudéssemos apenas se livrar do FoxPro, infelizmente, a empresa não quer se livrar de uma peça muito antiga de software que eles compraram que depende dele.

Publicado 07/08/2008 em 01:56
fonte usuário
Em outras línguas...                            


7 respostas

votos
6

ActiveMQ funciona bem com C # usando as integrações e NMS Spring.Net. Um post com alguns links para você começar nessa direção é aqui . Considere também usando MSMQ (O namespace System.Messaging) ou uma solução de mensagens assíncrono baseado em .NET, com algumas opções aqui .

Respondeu 07/08/2008 em 02:20
fonte usuário

votos
4

MSMQ (Microsoft Message Queuing) pode ser uma ótima escolha. É parte do sistema operacional e do presente como um componente opcional (pode ser instalado através de Adicionar / Remover Programas / Componentes do Windows), o que significa que é livre (desde que você já pagou para Windows, é claro). MSMQ fornece Win32 / COM e System.Messaging APIs. Communication Foundation mais moderno do Windows (também conhecido como Indigo) na fila canais também usam MSMQ. Note-se que MSMQ não é suportado em Início SKUs do Windows (XP Home e Vista Home)

Respondeu 19/09/2008 em 08:03
fonte usuário

votos
1

Você pode querer olhar para MSMQ. Ele pode ser usado pelo .NET e VFP, mas você vai precisar de reescrever a usá-los. Aqui está um artigo que explica como usar MSMQ do VFP. http://msdn.microsoft.com/en-us/library/ms917361.aspx

Respondeu 14/10/2008 em 15:23
fonte usuário

votos
1

Vale a pena mencionar que o projeto ActiveMQ open source define um C # API para mensagens chamado NMS que lhe permite desenvolver contra um único C # .Net API / que pode então usar várias mensagens de volta termina como

Respondeu 16/09/2008 em 15:12
fonte usuário

votos
0

Como o problema é com as gravações, gostaria de olhar mais para> remover <quaisquer índices desnecessários nas mesas. Como é comum em RDBMS, cada índice em uma tabela FoxPro atrasa uma operação de gravação, como os índices precisam ser atualizados, e como você não está lendo diretamente do (ou, presumivelmente, consultando diretamente) a tabela que você não deve precisar de muitos índices . Você também pode querer olhar para os gatilhos ou regras de campo sobre as mesas, pois podem estar a abrandar a operação de gravação. Tenha certeza que seu integridade referencial ainda está preservado, embora ..

Respondeu 18/09/2008 em 00:40
fonte usuário

votos
0

O aplicativo Fox usar .CDX índices? Se assim for, você pode ser capaz de melhorar o desempenho adicionando índices sem a necessidade de alterar qualquer código de programa. Se ele usa índices .IDX, porém, a mudança teria que ser feito no aplicativo real.

Respondeu 22/08/2008 em 18:30
fonte usuário

votos
0

Desculpe se isso não é o que você está pedindo ... Você já pensou em algum tipo de cache de trás das cenas que age um pouco como o "sistema de balde" ao usar soquetes assíncronos em c / c ++ usando winsock? Basicamente, ele funciona por aceitar pedidos, e envia uma resposta imediata de volta para o aplicativo web, e quando ele finalmente recebe em torno de encontrar o seu registro, ele atualiza-lo no aplicativo via AJAX ou qualquer outra tecnologia de sua escolha. Desde que eu não sou um programador C # eu não posso dar nenhum exemplo específico. Espero que isto ajude!

Respondeu 07/08/2008 em 03:17
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more