Desempenho funcional e design são os três aspectos básicos do software de medição, e o Jivejdon de código aberto é um dos casos em que esses três são perfeitamente combinados. ivejdon é um sistema de software verdadeiro, completo e totalmente orientado a objetos. Atualmente é o principal sistema de fórum de código aberto de alto nível (Apache2.0) na China, rastreando e aplicando constantemente os mais recentes conceitos de design de software global (DDD e outras introduções de PPT de fundo). Refletindo a direção popular do design de software, é o fórum de software mais próximo da computação em nuvem na China. JiveJdon não é apenas um fórum comum, ele integra postagens de blog. Você pode acompanhar os tópicos das postagens das pessoas e marcar categorias. O objetivo de negócios do JiveJdon é o Quora.
JiveJdon é um sistema de software complexo desenvolvido de forma independente com base em JdonFramework de acordo com a mais recente filosofia de design estrangeira "Domain-Driven Design" (DDD para abreviar) e recursos de design JiveJdon:
Nova modelagem: método de design baseado em modelo EvansDDD; verdadeiro design e programação OO; fácil e conveniente para adicionar funções, forte capacidade de manutenção Nova arquitetura: programas tradicionais são executados sequencialmente e de forma síncrona dentro de um thread, o que não é adequado para CPUs multi-core atuais e distribuídos sistemas; JiveJdon é baseado no novo modelo de simultaneidade de eventos do JdonFramework, aproveitando ao máximo as características multi-core e multi-thread e, por ser livre de bloqueios, a simultaneidade é mais rápida.
Sistema de permissão separado: O sistema de permissão de autenticação do usuário é separado do núcleo de negócios, a interface é separada do núcleo de negócios e o banco de dados é separado do núcleo de negócios. Boa escalabilidade: desempenho excelente e rápido, escalabilidade forte e pode ser expandido. para a plataforma de computador em nuvem de memória, contando com a memória do JdonFramework A estratégia de otimização pode lidar com acesso de alta carga simultânea Clique aqui para ver casos que não consideram a otimização de desempenho.
JiveJdon tem boa escalabilidade, adota uma arquitetura multicamadas completamente separada e pode ser equipado com qualquer banco de dados por meio de um servidor J2EE ao mesmo tempo, realiza a verdadeira separação entre interface e lógica de negócios, e os usuários podem projetar seus próprios modelos de interface; à vontade, que não é mais tão popular como é agora. Alguns fóruns devem ser selecionados a partir de modelos fornecidos pelo autor original do fórum. JiveJdon adota os padrões de design internacionais mais avançados para levar os fóruns gratuitos a um novo patamar.
JiveJdon não é apenas um programa de fórum, seu modelo de mensagem pode ser reutilizado em escopos de vários domínios, como sistemas de conteúdo de sites, sistemas de comunicados à imprensa, sistemas de comércio eletrônico, sistemas de gerenciamento de armazém, sistemas de gerenciamento de recursos (parte dos quais foi implementado), concretizando o atual campo de pesquisa de reutilização O mais alto nível de reutilização estática: reutilização de modelo de negócios. Artigos relacionados: Reutilização de software para adaptação rápida às mudanças de requisitos. Alvo concorrente GoogleAppEnginee.
Nova modelagem
Jivejdon foi desenvolvido sob a orientação de EvansDDD de acordo com o mais recente método internacional baseado em modelo, adotando análise orientada a objetos OO e método de programação de design, abandonando o método tradicional de desenvolvimento baseado em tabela de dados de modelagem ER e pode ser usado como uma amostra completa programa para aprender EvansDDD. Clique aqui para aprender sobre modelagem de domínio DDD.
O diagrama do modelo de domínio principal JiveJdon é o seguinte. O processo de modelagem vem do DDD real (EvansDDD: Domain-DrivenDesign):
nova arquitetura
A camada de negócios do JiveJdon adota uma arquitetura orientada a componentes com design dinâmico de componentes, que pode expandir novas funções de maneira fácil e conveniente sem causar erros. A sequência de execução dos componentes de negócios tradicionais segue a sequência de chamada de código determinada durante a programação. A desvantagem óbvia é que ele perde flexibilidade e não pode ser configurado e executado dinamicamente de acordo com as necessidades reais, portanto, não pode se adaptar mais rapidamente às mudanças nas necessidades; combina componentes de negócios. O relacionamento entre eles é especificado em tempo de execução. JiveJdon também mostra um caso de implementação de permissão geral baseado em AOP.
A arquitetura do componente JiveJdon é projetada da seguinte forma:
Excelente desempenho
JiveJdon é baseado no princípio de design de cache de objeto, que melhora muito a velocidade de execução e tem boa escalabilidade. Ele pode usar a tecnologia de memória de computação em nuvem de código aberto Terracotta para obter recursos de processamento poderosos de computação em nuvem distribuída.
A amostra de teste do jivejdon4.4 em 2011 (pode ser aberta com Jmeter): jivejdon.jmx Resultado: Agregação report.jmx Os resultados do teste mais recentes são os seguintes. Como o banco de dados e outras operações são implementados usando eventos assíncronos, operações de gravação como respostas. e as pós-modificações são baseadas na implementação do objeto de domínio de memória, o desempenho é bastante melhorado:
Recursos de função de nuvem
Semelhante à pesquisa de texto completo do Google (um fórum Compass+lucene só pode se tornar uma lata de lixo sem uma implementação de permissão universal baseada em AOP; gerenciamento de plug-in de todas as funções de negócios); ; contando com Jdon A estrutura possui alto desempenho e atualizações de conteúdo em tempo real; possui as características de um software antispam e possui uma função de rejeição para rastreadores da web ou bots de pesquisa que rastreiam com frequência.