Thursday 3 August 2017

Sistemas De Negociação De Alto Desempenho Para Sistemas Baseados Na Web


Mensagens de alto desempenho para sistemas de negociação baseados na Web. Frank Greco Diretor de Tecnologia, Kaazing Transcription 1 Mensagens de Alto Desempenho para Sistemas de Negociação Baseados na Web Frank Greco Diretor de Tecnologia, Kaazing 2 Outline Background Trading Systems e os requisitos da Web Web Messaging for Trading Apps Abordagem em camadas para protocolos da Web Novos requisitos A Web além do Navegador 3 Antecedentes Serviços financeiros Mercados de capitais Sistemas de negociação de desktop Swing Java TIBCO e outros Casos de uso de clientes FX, Commodities Mesas Diretor de Kaazing Presidente NYJavaSIG (javasig) Maior JUG na América do Norte 7,000 4 Web Trading Systems FX Trader Application front office demo. kaazing forex 5 O que é um Sistema de Negociação do Sistema de Negociação na Web Um conjunto de regras que regem a compra de vendas Um aplicativo que agiliza um sistema de negociação Requisitos modernos de negociação na Web - HTML5 não há mais plugins - UI UX Sencha extJS, GWT, jquery, aceleração de GPU, etc - cache de aplicação utilizável - Rápido, confiável, seguro - Impacto mínimo para serviços back-end - Trabalha com sub-corretores e dados de pub Feeds - Taxa de mensagem alta, pequenos carrapatos de taxa de carga útil, lista de observação, pares de moedas, etc. 6 Tudo soa capaz, exceto Projetado para transferência de documentos HTTP - Interação de resposta de solicitação de curta duração Bidirecional, mas meio dúplex - O tráfego flui em apenas um Direção por vez sem estado - Grandes quantidades de metadados reenviados para cada pedido A Web não foi projetada para serviços em tempo real e baseados em eventos 7 Algumas coisas envelhecem bem HTTP TCP 8 e algumas coisas não são Oldies Hits - AJAX e Comet Pollers 9 High - Level Trading Systems Architecture ios Autenticação do Android Navegador Móvel Native Client Autorização Net Faça-me Web Browser Desktop Java. NET Msg Broker JMS AMQP etc Preços Feeds News Alerts Trade Exec O que todos fazem Relatórios 10 Arquitetura de Sistemas de Negociação de Alto Nível ios Autenticação do Android Mobile Browser Native Client Net Browser Desktop Java Autorização. NET Faça-me Web Msg Broker JMS AMQP etc Os desenvolvedores querem uma versão segura desta arquitetura para que eles Pode se concentrar no aplicativo Pricing Feeds Alertas de notícias Trade Exec Reports 11 Arquitetura de servidor de cliente em tempo real Em vez disso, tentamos essa solução tradicional Trading App Broker Precisa de abrir algumas portas Simplesmente implantar o Java. NET no cliente. Apenas precisa percorrer vários proxies entre o Pontos de extremidade fáceis, à direita. 12 Middleware para o Middleware Ou tentamos substituir as coisas pela planta de ticker da web Problemas de protocolo Problemas de escalabilidade ineficientes Problemas de latência 13 As coisas não estão muito boas 14 Bem-vindo HTML5 (também conhecido como New Web) Os usuários estão exigindo mais de Apps UI UX Os requisitos são mais Aprimoramentos sofisticados do navegador da Explosão da API A Web já não é apenas sobre documentos, mas a infra-estrutura existente reflete esse legado. A Nova Web é uma Fundação para Aplicações de qualidade empresarial 14 15 WebSocket Conectividade bidirecional em tempo real Protocolo IETF - RFC 6455 Dez 2011 W3C API Facilmente Adicionar dados baseados em eventos (negociação) para aplicativos da Web Evita a polling. Evita a transferência de meta-dados de HTTP. Porta de compartilhamento com HTTP (80 443) Protocolo intermediário para HTTP (ambos utilizam TCP) API mais importante em HTML5 Facilita outros protocolos Coloca a web melhor Coloque 16 Recomendações do Candidato da API do W3C da Norma WebSocket - Protocolo formal do IETF (RFC 6455) - API de JavaScript orientada a eventos - Protocolo de comunicação full-duplex Integra HT Endereçamento TP - ws: colaborações de sua empresavc - wss: outra empresa de mercadodatasvc Traverses firewalls, proxies, roteadores de forma segura Texto e binário aproveita o compartilhamento de recursos de origem cruzada (CORS) 17 O Handshake do WebSocket 18 Para comunicação em tempo real e baseada em eventos Legacy HTTP versus WebSocket Parece um insensível para os aplicativos comerciais 18 19 Java API para WebSocket - JSR 356 Criação de componentes WebSocket Java para lidar com conversas bidirecionais WebSocket Gerenciamento de eventos WebSocket Criação e consumo de texto e mensagens binárias WebSocket Permite protocolos e modelos de conteúdo do WebSocket para Um aplicativo Configuração e gerenciamento de sessões do WebSocket, como tempo limite, tentativas, cookies, pool de conexão Especificação de como o aplicativo WebSocket funcionará no modelo de segurança Java EE. Oficial Java SE WebSocket API nas obras 20 Por que eu me importo O que isso realmente precisa? Fazer com mensagens de alto desempenho 21 Legacy Web Half Duplex - HTTP Full Duplex Web Browser Web T Ier Middleware Msg Broker Live Web Full duplex - WebSocket Full duplex Web WebSocket Server Msg Broker 22 Escalabilidade mais comerciantes, mais serviços Complexidade Mais comerciantes Mais serviços Mais crescimento Greco s Law Escalabilidade Crescimento Complexidade Escala de coisas simples 22 22 23 HTML5 WebSocket API 24 HTML5 WebSocket API, mas lidar com WebSocket é como lidar com o TCP. É um modelo baseado em córregos. Você precisa entender como lidar com dados baseados em fluxos por cima do fio. Então, como faço para publicar, inscrever-se no meu sistema comercial 25 O que está faltando Onde está o protocolo de nível de aplicativo Quem lida com tentativas Como lidamos com publicação semantica de publicação Como lidar com dados de mercado É possível entrega garantida (comércio) E se o cliente estiver Não está ativo Como lidar com o preenchimento com a semântica favorita O que diz respeito aos parentes Quem é responsável pelos direitos Como faço para gerenciar isso, etc 26 Mas aguardo Layout de protocolo é possível Whoa É como TCP Huzzah Browser e Native Applications JMS XMPP AMQP B2B FTP VNC mktdata etc. WebSocket TCP Internet WebSocket Gateway WebSocket Gateway 27 Qualquer coisa mais faltando Outras considerações Precisa lidar com múltiplas versões WS Precisa lidar com várias versões do navegador (e legado) Não pode ter lógica de negócios na DMZ Precisa trabalhar em DMZs múltiplas AuthN AuthZ deve funcionar várias vezes Topologia de alta disponibilidade Preocupações sobre portas abertas com serviço de back-end A arquitetura de serviços precisa ser consistente Native, HTML5 e híbrido e Nvironments Integre-se facilmente com serviços não-mensagens XaaS integração a Web além do navegador Gerenciamento de largura de banda, etc. Tudo o que você precisa para um aplicativo corporativo real 28 Publique Inscreva-se na Web para Sistemas de Negociação Java Message Service (JMS) em WebSocket Um Tutorial de 60 segundos em Caso você não tenha ouvido falar do JMS 29 Java Message Service (JMS) Java EE Orientado para mensagens Middleware JMS. JMS. JMS 2.0 (26 de fevereiro de 2013) Mensagens assíncronas versus RPC Unida ligeiramente comparada ao Pub On Subordinado, Tópicos, Transações de Filas, Confiável 30 Básico Dentro do Firewall JMS Conn createconnection () sess conn. createsession () tópico jndicontext. lookup (Tópico) pub sess. createproducer (tópico) pub. send (hey Frank) msg ​​broker conn createconnection () sess conn conn. createsession () createconnection () topic sess conn jndicontext. lookup (topic) conn. createsession () createconnection () Sub tópico sess sess. createconsumer (tópico) jndicontext. lookup (tópico) conn. createsession () sub. setmessagelistener (este) sub tópico sess. createconsumer (tópico) jndicontext. lookup (topic) sub. setmessagelistener (este) sess. createconsumer ( Tópico) public sub. setmessagelistener (this) void onmessage (mensagem m) String fazer coisas s m. gettext () fazer coisas 31 Agora JMS API para JavaScript 1. Criar conexão de ConnectionFactory ver tutorial. kaazing 2. Criar sessão 3. Criar tópico Ou fila 4. Criar produtor 5. Criar contras Umer 6. Criar mensagens de ouvintes (função para lidar com mensagens) sessão connection. createsession (falso, Session. AUTOACKNOWLEDGE) var mytopic session. createtopic (quot topic mytopicquot) topicproducer session. createproducer (mytopic) topicconsumer session. createconsumer (mytopic) topicconsumer. setmessagelistener (Discussão de suporte) 33 Projetos WebSocket, OSS, Fornecedores Kaazing Node. js socket. io ActiveMQ Tomcat Jetty Oracle Glassfish Java EE Play Framework Rabbit MQ JBoss IIS ASP. NET 4.5 PHP, Objective-C, Ruby, Python, CC, JVM-langs Muitos Mais 34 Futuros O que é o próximo para Sistemas de Negociação e a Web 34 35 Novos Números de Modelos de Computação 35 36 Novo Modelo de Computação Documentos de Armazenamento Cloud Cloud websocket websocket websocket websocket Regulatório hipotético Liquidação Colaboração Nuvem Gerenciamento de Riqueza websocket Enterprise Notificações Transações Gerenciamento de Risco Cloud Cloud Sentiment Analysis Cloud FX Analytics 36 37 Inter-Cloud Connectivity ou XaaS Compliance como um serviço Clear Cloud Clearance a Sa Service Service Serviço de serviço de serviço de ônibus websocket Auditoria Regulatória como Serviço Gerenciamento de Risco como Serviço ipaas websocket Serviço de Internet Serviço de Enterprise Enterprise Serviços Serviço de serviço de ônibus 37 38 XaaS com base em eventos Tudo como um Serviço em Monitoramento em Tempo Real como Serviço WAN Optimization Como Centro de Dados de Serviço como CDN de Serviço como Análise de Sentimento de Serviço como um Banco de Dados de Serviço como Segurança de Serviço como Serviço EAI como Identidade de Serviço como Integração de Serviço como Serviço Mensagens Corporativas como um Backup de Serviço como um Análise de Risco de Serviço como um Liquidação comercial de serviços como auditoria de serviço como uma governança de serviço como um teste de serviço como um serviço Desktop do Windows como uma rede de serviços como notificação de serviço como um serviço Analytics como serviço de telefonia como serviço 38 39 Distribuição global Próxima geração CDN 41 Qualidade empresarial Recursos WebSocket IETF Conformidade RFC Nenhuma lógica de negócios no Gateway - pode ser instalada de forma segura em DMZ Extends Browser as Cliente completo cliente JMS Tópicos, Filas, Durables, Acks for Guaranteed msgs JMS Edition Funciona com qualquer provedor JMS - nenhum corretor lock-in Serviços seguros pode fechar todas as portas de entrada Mensagens criptografadas end-to-end para múltiplas DMZs Full JMS API para JavaScript,.NET, Flash, ios, Android (em breve) Espaços de tempo de cliente granular para dispositivos móveis para detectar ios-apns offline о Integração GCM de Android Kerberos sobre WS Nenhuma API do lado do servidor para mensagens necessárias para a integração herdada Emulação quando os intermediários bloqueiam o AuthN NS AuthZ nativo e SSO Integração 24x7 Suporte global pode se conectar a qualquer fonte de dados TCP ou UDP Controle de largura de banda Emula o protocolo WebSocket para navegadores antigos w sem pollingQCon é uma conferência orientada por profissionais projetada para líderes de equipe técnica, arquitetos e gerentes de projeto que influenciam a inovação de software em suas equipes. Apresentação: Tweet Mensagens de Alto Desempenho para Sistemas de Negociação Baseados na Web Track: Finance (Design amp Architecture) Hora: quinta-feira 14:30 - 15:20 Local: Elizabeth Windsor Até recentemente, a pilha de rede da rede herdada não era adequada para quotreal - aplicações comerciais e baseadas em leilão. Mas agora, temos o WebSocket que permite uma conexão persistente, atravessa intermediários de rede, tem um irmão criptografado, é compatível com legacy-web, usa as portas padrão 80 443 e permite que outros protocolos tradicionais de nível de aplicativo vivam na web. E, como o próprio nome indica, é baseado em fluxo e requer engenheiros de sistemas para construir e acessar protocolos bem definidos para aplicativos. Esta apresentação investigará o WebSocket e como os sistemas de negociação podem ser projetados para aproveitar este novo protocolo web para confiabilidade, segurança e desempenho para ambientes de desktop, móveis, datacenter e nuvem. Frank Greco, Tweet Diretor de Tecnologia, Kaazing Corporation Biografia: Frank Greco Frank D. Greco é Diretor de Tecnologia da Kaazing Corporation. Ele é responsável pela estratégia de computação em nuvem da Kaazing e orienta os clientes com novas abordagens tecnológicas que alavancam o valor de ampliar os protocolos de aplicativos na web e como a nova plataforma de comunicação na web é um componente chave. Frank tem uma vasta experiência em projetos de TI há mais de 15 anos e trabalhou em arquitetura global, computação em nuvem de grade, interfaces de usuário inovadoras e computação móvel. Frank foi nomeado por Sun Oracle um quotJava Championquot por muitos anos e preside o NYJavaSIG (maior grupo de usuários Java na América do Norte) e os grupos de usuários NYHTML5.

No comments:

Post a Comment