Algoritmos – Conversão Binária – Parte 03

Introdução No post anterior sobre conversão binária, vimos algumas formas de converter um valor binário representado em uma string de volta a um valor decimal. O algoritmo mais rápido demorou 9,2 segundos para converter 2.560.000 valores. E se eu disser que dá para fazer isso QUATRO VEZES mais rápido, eu devo estar louco ??? Acelerando … Continue lendo Algoritmos – Conversão Binária – Parte 03

MemCached Client em AdvPL – Parte 01

Introdução O MemCached é um aplicativo que provê um cache de objetos em memória, do tipo chave/valor de alto desempenho. Ele possui APIs Client para várias linguagens de mercado, e agora também terá a sua API Client em AdvPL. O MemCached Open Source, Free , originalmente desenvolvido para Linux, ele também têm porte para Windows, … Continue lendo MemCached Client em AdvPL – Parte 01

Acelerando o AdvPL – Importação de tabelas

Introdução Existem muitas situações onde existe a necessidade de alimentar ou importar tabelas para uso do ERP Microsiga / Protheus. Quando esta necessidade envolve um grande número de registros, e um curto espaço de tempo, precisamos fazer esta operação ser o mais rápida possível. Nesse post vamos abordar algumas técnicas para realizar este tipo de … Continue lendo Acelerando o AdvPL – Importação de tabelas

Resolvendo o limite da função Randomize()

Introdução No post Boas Práticas de Programação – Código Simples, Resultados Rápidos, eu mencionei um limite operacional da função Randomize() do AdvPL. Caso a diferença entre o maior e o menor número a ser sorteado for maior que 32767, a função vai sortear um número maior ou igual ao número inicial informado, e menor que … Continue lendo Resolvendo o limite da função Randomize()

Executando Jobs em AdvPL

Introdução Em todos os posts anteriores sobre escalabilidade, desempenho e afins, sempre aparece o "tal" do JOB. No AdvPL, genericamente damos o nome de "Job" para um processamento de uma função AdvPL iniciada em um ambiente sem interface com o usuário -- ou seja, sem conexão com o SmartClient). Neste post, vamos ver em detalhes … Continue lendo Executando Jobs em AdvPL

Escalabilidade e Performance – Segredos

Introdução Outo dia li um post muito interessante, onde o autor menciona alguns "segredos" para uma aplicação escalável, com algumas técnicas comuns utilizadas em aplicações WEB ( Vide post original nas referências no final do Post). Resolvi me basear nele para exemplificar o que cada um dos tópicos elencados poderia agregar ao sistema, e levantar … Continue lendo Escalabilidade e Performance – Segredos

Acelerando o AdvPL – Lendo arquivos TXT (ERRATA)

Pessoal, No post "Acelerando o AdvPL - Lendo arquivos TXT", foi corrigido um erro que causava um mau comportamento da rotina,  fazendo a leitura de linhas "inconsistentes". Na chamada da função RAT(), o primeiro parâmetro deve ser a string a ser procurada, e o segundo parâmetro deve ser a string onde a primeira deve ser procurada. … Continue lendo Acelerando o AdvPL – Lendo arquivos TXT (ERRATA)