Skip to content

Instantly share code, notes, and snippets.

View leandroandrade's full-sized avatar
🚀

Leandro Andrade leandroandrade

🚀
View GitHub Profile
@leandroandrade
leandroandrade / sample-undici.js
Created February 28, 2024 17:14
Sample request using undici
const { request } = require('undici')
async makeCallback (callbackUrl, method, headers, body, message) {
try {
const res = await request(callbackUrl, {
method,
headers,
body
})
if (res.statusCode >= 200 && res.statusCode < 300) {
// k6 run sample-k6-getpost.js
import http from 'k6/http';
import {sleep} from 'k6';
export let options = {
insecureSkipTLSVerify: true,
noConnectionReuse: false,
stages: [
{ duration: '1m', target: 10 },
import http from 'k6/http';
import {sleep} from 'k6';
export let options = {
insecureSkipTLSVerify: true,
noConnectionReuse: false,
stages: [
{ duration: '1m', target: 10 },
{ duration: '2m', target: 20 },
{ duration: '1m', target: 0 },
const dig = (n1, n2, n3, n4) => {
const nums = n1.split("").concat(n2.split(""), n3.split(""));
if (n4 !== undefined){
nums[9] = n4;
}
let x = 0;
for (let i = (n4 !== undefined ? 11:10), j = 0; i >= 2; i--, j++) {
x += parseInt(nums[j]) * i;
}

slug

Identificador único, legível por pessoas, que permite referenciar um recurso. Usado ao invés de um id menos legível.

Permite referenciar um item preservando a habilidade de ver/saber qual item é.

Exemplo:

{
 "id": "1e120ac2-6490-4e6d-9b1d-3b117fd36a58",

Otimizar a performance de aplicações que usam MongoDB

Abaixo pontos de análise:

  • usar .explain("executionStats") para verificar o status de execução da query. COLLSCAN significa que todos os registro da collection foram escaneados.
    • queryPlanner.winningPlan.stage: tipo de collection scan
    • executionStats.nReturned: número de documentos retornados
    • executionStats.totalKeysExamined: valor 0 significa que o índice não foi usado.
    • executionStats.totalDocumentsExamined: total de documentos que a query examinou.
  • executionStats.executionTimeMillis: tempo de execução da query.
const daysMonth = 30;
const months = 12
const diffDates = (first, second) => {
const difference = first.getTime() - second.getTime();
return Math.ceil(difference / (1000 * 3600 * 24));
}
function calculate(end, date) {
const totalDays = diffDates(end, date);
@leandroandrade
leandroandrade / .gitconfig
Last active April 6, 2021 11:51
Git aliases
[user]
name = username
email = email
[github]
user = username_github
[alias]
i = init
a = add
ca = commit -a
cam = commit -am
const http = require('http');
const {once} = require('events');
const users = [
{ id: 1, name: 'John', age: 30 },
{ id: 2, name: 'Paul', age: 22 },
];
const routes = {
'/users:get': (req, res) => {